beginBackgroundTaskWithExpirationHandler
来源:互联网 发布:word mac 编辑:程序博客网 时间:2024/05/16 16:13
正常程序退出后,会在几秒内停止工作;
要想申请更长的时间,需要用到
beginBackgroundTaskWithExpirationHandler
endBackgroundTask
一定要成对出现
- (void)applicationDidEnterBackground:(UIApplication *)application { [self beginTask]; //在非主线程开启一个操作在更长时间内执行; 执行的动作 aa =0; _timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(go:) userInfo:nil repeats:YES]; }-(void)go:(NSTimer *)tim{ NSLog(@"%@==%ld ",[NSDate date],aa); aa++; if (aa==9) { [_timer invalidate]; [self endBack]; // 任务执行完毕,主动调用该方法结束任务 }}-(void)beginTask{ NSLog(@"begin============="); _backIden = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{ NSLog(@"begin bgend============="); [self endBack]; // 如果在系统规定时间内任务还没有完成,在时间到之前会调用到这个方法,一般是10分钟 }];}-(void)endBack{ NSLog(@"end============="); [[UIApplication sharedApplication] endBackgroundTask:_backIden]; _backIden = UIBackgroundTaskInvalid;}
转:http://www.jianshu.com/p/a668f1770efb
0 0
- beginBackgroundTaskWithExpirationHandler
- beginBackgroundTaskWithExpirationHandler
- beginBackgroundTaskWithExpirationHandler
- beginBackgroundTaskWithExpirationHandler
- ios 开启后台任务,beginBackgroundTaskWithExpirationHandler 使用细节问题备忘
- 22. Generate Parentheses
- DOM的一些方法和属性
- WCF测试客户端(WcfTestClient)
- UML图示
- hadoop环境搭建(三)分布式
- beginBackgroundTaskWithExpirationHandler
- 连接数据库JDBC
- javaweb
- linux硬链接和软链接的区别
- 数字信号处理基础-DFT、IDFT
- debug
- 雅典娜
- ubuntu 手动安装 mysql
- Keepalived 原理