我试图在我的 iPhone 应用程序中获得以下功能:
- 当后台运行时,保持运行(不需要做任何后台工作)
- 恢复后,应用程序会从上次中断的地方继续
我主要希望我的应用程序上的同一个屏幕仍在运行,因为 UITabBarController 中有几个 UINavigationControllers。
我已经完成了以下所有操作:
- 确保我使用 4.1 SDK 进行编译
- 将 UIApplicationExitsOnSuspend 设置为 false
- 在我的 AppDelegate 中处理 DidEnterBackground 和 WillEnterForeground
- 在 DidEnterBackground 中调用 BeginBackgroundTask,以尝试保持我的应用程序打开
我正在使用 MonoTouch,但这可能不是重点。当然,我可以在 Obj-C 中得到答案。
我已经在带有 Backgrounder 的越狱手机上测试了我的应用程序,我看到“后台应用程序”徽章在按下主页按钮后立即消失。我还尝试在我的 Info.plist 中设置 UIBackgroundModes,但无济于事。
有什么我想念的吗?
或者这是我必须自己实现的东西才能恢复我的应用程序的先前状态?在我读过的任何地方,它都应该自动运行。