3

我将 UIApplicationExitsOnSuspend 设置为布尔值并选中了复选框,所以我假设

- (void) applicationDidEnterBackground:(UIApplication *)application

没有被调用 - 但是当我单击模拟器中的主页按钮时,我总是会进入该方法。我做错了什么还是我可以确定该应用程序将表现出“旧式”并且不支持多任务处理?

非常感谢,

斯特凡

在此级别定义的设置
体系结构:标准
基础 SDK:iPhone Simulator 4.0
代码签名身份:iPhone 开发人员:myName
任何 iPhone OS 设备:iPhone 开发人员:myName
iPhone OS 部署目标:iPhone OS 3.1
其他链接器标志:-lxml2
预绑定:未选择
标题搜索路径:/usr/include/libxml2
C 语言方言:C99 [-std=99]
不匹配 返回类型:选中
未使用变量:选中

4

6 回答 6

6

我发现测试这一点的一个区别是使用连接到 Xcode 调试器的 iPhone 4 模拟器或设备。如果您正确启用它,当您点击主页按钮时,它将退出调试器。如果启用了“多任务处理”,当您点击主页按钮时,调试器将不会退出 - 触摸您的图标并将其带回将继续您的调试会话。

于 2010-07-06T16:32:49.350 回答
3

http://www.drobnik.com/touch/2010/07/understanding-ios-4-backgrounding-and-delegate-messaging/

必须阅读关于 FLowChart 的问题,在 iOS4 上会发生什么

于 2010-09-06T14:08:13.247 回答
2

将 YES 设置为 UIApplicationExitsOnSuspend ,从第一次开始对我来说效果很好,但我没有意识到,因为双击时会显示我的应用程序。

“双击主页按钮将始终显示您的应用程序,因为它是最近使用的应用程序列表。(参考: http: //www.apple.com/iphone/features/multitasking.html)”

如果调用了 applicationWillTerminate 委托方法,那么你就完成了..(添加断点或 NSLog 进行检查)

只是一个提示。希望这对像我这样的人有所帮助..;)

于 2010-12-26T15:09:52.810 回答
0

关键 UIApplicationExitsOnSuspend 只能在 iPhone 4 设备上正常工作。即使您安装了 iOS4 并具有多任务处理,它也不能在 iPhone 3GS 上工作。这就是我们的测试所显示的。

于 2010-08-12T17:44:42.393 回答
0

在我的测试期间applicationDidEnterBackground被调用(以及之后ApplicationWillTerminate),尽管我也设置UIApplicationExitsOnSuspendYES。我已经在安装了 iOS 4.1 的 iPhone 3G 和 iPhone 4 模拟器中测试了该应用程序。

有人在 iPhone 4 上测试过吗?

于 2010-11-08T22:25:38.987 回答
0

我有同样的问题。对我有用的是将我的 info.plist 文件转换为 xml。我创建了一个新的空白项目,只是为了查看 info.plist 文件,发现它是 xml 格式的,而我的旧项目没有 xml 格式的 info.plist。所以,我使用新的 info.plist xml 格式来重写我的 info.plist 文件。之后, UIApplicationExitsOnSuspend 键现在可以工作并且我的应用程序终止

于 2011-01-24T04:03:47.437 回答