iPhone:我的应用程序是否需要支持多任务处理?

时间:2010-10-05 04:55:13

标签: iphone objective-c app-store

在上传到应用商店之前,现在这是强制性要求吗?据我所知,让我的应用程序兼容多任务处理是我需要实现的额外功能。 (?)

3 个答案:

答案 0 :(得分:5)

没有

这不是额外的事情。这是一个选择退出流程。阅读this Apple doc

我个人的意见是,如果你不积极支持多任务,你应该选择退出。

答案 1 :(得分:2)

您的应用程序不需要利用多任务处理功能,但它需要优雅地处理后台处理并且从未收到应用程序将退出的通知。更具体地说:

在以前版本的操作系统中,当用户退出应用程序时(通过按主页按钮),App Delegate's

applicationWillTerminate

被召唤。在iOS 4下按设备的主页按钮,而不是将应用程序置于后台,调用App Delegate的

applicationDidEnterBackground

当应用程序再次出现在前台时,OS调用是App Delegate的

applicationWillEnterForeground

当调用 applicationWillTerminate 时,当状态更改(用户首选项,数据文件,高分等)被写出并保存时,这通常会导致旧应用程序出现问题。现在它已不再被调用,一些应用程序无法保存用户信息。

调用 applicationWillTerminate 时你所做的大多数事情现在也应放在 applicationDidEnterBackground 中,具体取决于你的应用程序的功能。

此外,您在应用程序didFinishLaunchingWithOptions 中执行的某些操作也可能需要在 applicationWillEnterForeground 中完成,具体取决于您的应用程序的功能。

答案 2 :(得分:1)

不支持多任务处理。

要禁用多任务处理,您可以在info.plist文件中使用UIApplicationExitsOnSuspend键,该文件可能显示为“应用程序无法在后台运行。”

有关详细信息,请参阅http://developer.apple.com/library/mac/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html