博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ios实现程序切入后台,实现后台任务 (转自)
阅读量:4706 次
发布时间:2019-06-10

本文共 1197 字,大约阅读时间需要 3 分钟。

1 1,项目需求,是程序home键切入后台,3分钟后退出登陆, 2  3   首先,iOS 会再持续切入后台,给我们5秒钟的时间去处理相关数据,5秒后,程序不会再执行任何代码,处于挂起状态。 4  5     6  7   8  9 - (void)applicationDidEnterBackground:(UIApplication *)application {10 11  //切入后台 ,申请后台任务时间,12 13     UIApplication *app = [UIApplication sharedApplication];14 15     UIBackgroundTaskIdentifier taskID;//一个后台任务标识符16 17     taskID = [app beginBackgroundTaskWithExpirationHandler:^{ //如果系统觉得我们运行时间太长,将执行这个程序块,并停止运行应用程序18 19        20 21         [app endBackgroundTask:taskID];22 23     }];24 25     26 27     if (taskID == UIBackgroundTaskInvalid) {
//UIBackgroundTaskInvalid表示系统没有为我们提供额外的时间28 29 30 31 return;32 33 }34 35 36 37 [self performSelector:@selector(exitApp) withObject:nil afterDelay:180.0];//退入后台 延时3分钟,退出登陆38 39 40 41 }42 43 - (void)applicationWillEnterForeground:(UIApplication *)application {44 45 46 47 [[UIApplication sharedApplication] endBackgroundTask:taskID];//切回前台,结束后台任务48 49 [NSObject cancelPreviousPerformRequestsWithTarget:selfselector:@selector(exitApp) object:nil];//取消之前将要退出的方法50 51 52 53 }54 55

转自;http://blog.sina.com.cn/s/blog_7f422a89010190jk.html

转载于:https://www.cnblogs.com/Wild-orangutans/p/4469234.html

你可能感兴趣的文章
LinkedHashMap,TreeMap和Hashtable子类Properties
查看>>
swift基础语法(01-常量与变量)
查看>>
JavaScript基本概念(变量和数据类型)
查看>>
6 tips for recovering from a flop
查看>>
ArrayList、Vector、HashMap、HashTable、HashSet的默认初始容量、加载因子、扩容增量...
查看>>
Ubuntu14设置静态IP的地方
查看>>
计算几何 部分模板
查看>>
github:建立和删除一个fork
查看>>
改善WPF应用程序性能的10大方法 (转发)
查看>>
简单图片验证码
查看>>
Mac 修改Host 绑定host
查看>>
Python学习-23.Python中的函数——isinstance
查看>>
CF932F Escape Through Leaf 斜率优化、启发式合并
查看>>
jQuery获取同级元素
查看>>
移动端调试方法
查看>>
java虚拟机4.垃圾标记算法
查看>>
context.getResourceAsStream获取的是部署在服务器上面的文件位置 而不是我们本地的工程位置 意思是说获取的都是web下面的文件位置...
查看>>
usebean 使用语法
查看>>
jquery不能是使用普通的for循环 因为普通的for循环通过下表获取对象 如果通过下表获取对象的话 会转成dom对象...
查看>>
C#访问修饰符
查看>>