您的位置:首页 > 其它

iphone OS 4.0操作系统中多任务~禁止后台执行的方法

2011-11-16 17:21 375 查看
http://blog.csdn.net/fxj281314/article/details/5783220

最近做的一个针对iPhone 4.0 OS 的App中遇到了一个关于home键退出后台程序的问题。画了些许功夫,最后找到了一个简单到极点的解决方法。分享于此。由于iPhone 4.0 OS中对多任务的支持,使得在程序运行时,按住home键,不能直接结束程序,而是将程序转入后台,等到程序再次启动时,接着上次继续运行,所以对于某些程序我们需要采取措施来保证在按了home键之后程序从内存中清除。以便下次进入时,是重新开始程序,而不是接着运行。下面是对此的一个解决方法,对不需要进行任何数据保存处理的可以直接按照下面的方法进行处理。

解决方法是使用UIApplicationDelegate代理中的- (void)applicationDidEnterBackground:(UIApplication *)application方法。具体只需要在其中执行exit(0)操作就行了。

- (void)applicationDidEnterBackground:(UIApplication *)application {

/*

Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.

If your application supports background execution, called instead of applicationWillTerminate: when the user quits.

*/

exit(0);

}

补充:虽然文字写了有些天了,但是还是想在这里做一些补充,最近刚刚发现对于禁止后台运行除了上述方法之外还可以在 XXX-info.plist中(xxx为项目工程名)增加一项Application does not run in background 并将后面的选框勾上。这样就行了。

但是这样做同时也改变了用户的使用习惯,从任务栏进入软件只能从新进入不会从上次的状态进入。 利弊需权衡
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: