【问题标题】:Home button doesn't exit app in iPhone simulator 4.0iPhone 模拟器 4.0 中的主页按钮不会退出应用程序
【发布时间】:2011-04-14 07:22:54
【问题描述】:
我注意到在构建然后运行 viewDidLoad 时只被调用一次。如果按home键重新进入应用,viewDidLoad不会再次执行。
我注意到的另一件事是,当您重新进入应用程序时,它会从您离开的地方开始。
这是否与旧版 SDK 中的行为相同?这是否意味着当按下主页按钮时应用程序并没有真正退出?
【问题讨论】:
标签:
iphone
iphone-sdk-3.0
ios-simulator
ios4
viewdidload
【解决方案1】:
当您按下主页按钮时,调试将终止,因此您不会在任何版本的 SDK 的调试器控制台中看到任何来自 NSLog 的内容。您可以通过将 NSLog 放入 viewDidAppear: 来尝试此操作,即使应用程序仍在 iOS 4 的后台运行,它也应该被调用,但不会
【解决方案2】:
在新的 iOS 4 中,iPhone 和 iPod Touch 开始支持多任务处理...
为此,当您使用 iPhone 模拟器调试或开发应用程序时,如果您按下主页按钮,您的应用程序将进入后台或多任务处理。比 Xcode 相信您的应用程序仍在使用中。
要调用 viewDidLoad 方法,您必须通过按两次主页按钮完全退出您的应用程序,然后在多任务栏中按住您的应用程序并点击 X。
【解决方案3】:
与 iOS4.0 的一个区别是,如果您按下主页按钮,您的应用可能不一定会终止。默认设置是它们仍将加载到内存中。这是iOS4.0新增的“多任务”功能。关闭它,您的应用程序应该每次都加载。
UIApplicationExitsOnSuspend 是您的 plist 启用/禁用后台运行的关键。