现在的位置: 首页 > 综合 > 正文

iOS中后台运行

2013年03月05日 ⁄ 综合 ⁄ 共 736字 ⁄ 字号 评论关闭

iOS在升级到4.0以后就支持了多任务了。下文将详细介绍一下这个特性。

1、检查设备是否支持多任务

Apple出于性能的考虑,并不是所有的iOS设备升级到iOS4以后都支持多任务,比如iPhone 3G。如果你的应用在没有多任务特性时会出问题,为了保持应用的健壮性,你应该对此进行判断并处理。你可以通过调用UIDevice对象的multitaskingSupported属性来获取当前设备是否支持多任务。

1
2
3
if(![UIDevice

currentDevice
].multitaskingSupported){
    //不支持多任务时应做的处理
}

2、基本多任务特性

通常,当用户按一下Home键,当前应用就会被进入后台,应用处在后台运行状态一小段时间后,就会进入挂起(suspend)状态,此时应用不会再执行任何代码。如果系统在运行其他应用时内存资源不足,这个挂起的应用甚至有可能被系统退出,释放内存以供活动的应用使用。只有当用户再次运行此应用,应用才会从挂起状态唤醒,代码得以继续执行。这就是iOS4带来的基本的多任务特性,这个特性是一般应用默认支持的,就是说你的应用不需要任何修改就能支持基本多任务特性。

既然是多任务你应该会在应用进入后台时做一些处理,比如暂停一些界面的定时刷新或网络请求。同时,或者你会在程序进入前台时执行一些恢复操作。在你的应用的application delegate里有2个消息用于处理这些消息:

1
2
3
4
5
6
-
(
void)applicationDidEnterBackground :( UIApplication

*)application {
     //进入后台时要进行的处理
}
-
(
void)applicationWillEnterForeground

抱歉!评论已关闭.