我们想在 iPhone 中静默启动一个应用程序,而不将这个应用程序带到前台。在 iOS 5.x 中,我们通过这段代码实现了这个目标:
[(SBApplication*)app setDisplaySetting:0x4 flag:NO];
[(SBDisplayStack*)displayStack pushDisplay:app];
[(SBDisplayStack*)displayStack popDisplay:app];
但是,在 iOS 6.x 中不再有 SBDisplayStack。我做了一些搜索,但没有找到任何答案。有人说 SBWorkSpace 取代了 iOS 6.x 中的 SBDisplayStack。我们使用 SBAppToAppWorkspaceTransaction 来实现,但总是将 APP 带到前台,这并没有达到我们的目的。
谁能帮帮我?谢谢!
最佳答案
您可以使用 SpringBoardServices
私有(private)框架中的 SBSLaunchApplicationWithIdentifier()
函数。它需要一个 suspended
参数:
SBSLaunchApplicationWithIdentifier(CFSTR("com.company.app"), TRUE);
为此,您还需要 com.apple.springboard.launchapplications
授权。
关于objective-c - 如何在 iOS 6.x 中以静默方式在后台启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14999658/