微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

iOS 后台任务 beginBackgroundTaskWithExpirationHandler

正常情况下程序退出后,会在几秒之后停止工作。

若想让app进入后台保持活动状态可以设置beginBackgroundTaskWithExpirationHandler

 1 // AppDelegate.h 文件
 2 @property (assign, nonatomic) uibackgroundtaskIdentifier backgroundUpdateTask;
 3 // AppDelegate.m 文件
 4 - (void)applicationDidEnterBackground:(UIApplication *)application
 5 {
 6     [self beingBackgroundUpdateTask];
 7     // 在这里处理操作。完成后手动调用 endBackgroundUpdateTask
 8     [self endBackgroundUpdateTask];
 9 }
10 - (void)beingBackgroundUpdateTask
11 {
12     self.backgroundUpdateTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
13         [self endBackgroundUpdateTask];//如果在规定时间内任务没有完成,会调用这个方法。
14     }];
15 }
16 - (void)endBackgroundUpdateTask
17 {
18     [[UIApplication sharedApplication] endBackgroundTask: self.backgroundUpdateTask];
19     self.backgroundUpdateTask = uibackgroundtaskInvalid;
20 }

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐