【iOS】swift 让程序挂起后,能在后台继续运行任务
1,程序的挂起和退出


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import UIKit class ViewController : UIViewController { @IBOutlet weak var textView: UITextView ! @IBOutlet weak var mySwitch: UISwitch ! var i=0 override func viewDidLoad() super .viewDidLoad() //创建定时任务 _ = NSTimer .scheduledTimerWithTimeInterval(1, userInfo: nil ,repeats: true ) } //计时器每秒触发事件 func tickDown() textView.text! += "\(i++) } override func didReceiveMemoryWarning() super .didReceiveMemoryWarning() } } |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
import UIKit @UIApplicationMain class AppDelegate : UIResponder , UIApplicationDelegate { var window: UIWindow ? //后台任务 var backgroundTask: UIBackgroundTaskIdentifier ! nil func application(application: UIApplication , didFinishLaunchingWithOptions NSObject : AnyObject ]?) Bool { return true } func applicationWillResignActive(application: UIApplication ) } let controller: ViewController = self .window?.rootViewController as ! ViewController controller.textView.text! += "进入后台 //如果已存在后台任务,先将其设为完成 if self .backgroundTask nil { application.endBackgroundTask( self .backgroundTask) self .backgroundTask UIBackgroundTaskInvalid } //如果要后台运行 if controller.mySwitch.on //注册后台任务 () -> Void in //如果没有调用endBackgroundTask,时间耗尽时应用程序将被终止 application.endBackgroundTask( self .backgroundTask) self .backgroundTask UIBackgroundTaskInvalid }) } } func applicationWillEnterForeground(application: UIApplication ) } func applicationDidBecomeActive(application: UIApplication ) } } }
|
【iOS】swift 让程序挂起后,能在后台继续运行任务的更多相关文章
- Swift - 让程序挂起后,能在后台继续运行任务
1,程序的挂起和退出 由于iOS设备资源有限.当用户点击了home键,或者另一个应用程序启动了.那么原先那个程序便进入后台被挂起,不是退出,只是停止执行代码,同时它的内存被锁定.当应用程序恢复时,它会 ...
- (IOS)Swift Music 程序分析
本文主要分享下楼主在学习Swift编程过程中,对GitHub上的一个开源App Swift Music的研究心得. 项目地址:https://github.com/xujiyao123/SwiftMu ...
- 应用程序挂起、复原与终止— IOS开发
本文转载至 http://justcoding.iteye.com/blog/1473350 一.挂起 当有电话进来或者锁屏,这时你的应用程会挂起,在这时,UIApplicationDelegate委 ...
- 详解 IOS 7.1 程序启动原理
程序都是从Main方法入口的 IOS 也不例外 int main(int argc,char * argv[]) { @autoreleasepool { return UIApplicationMa ...
- Cordova or Xamarin 用.net开发IOS和Android程序
Visual Studio 2015 和 Apache Cordova 在开始前,问一下自己下面这些问题: 熟练掌握web技术的开发者比例是多少?(占所有开发者的比例) 熟练掌握移动开发技术(并且使用 ...
- iOS - Swift available 平台判断
前言 Swift 语言中的 @available 和 #available,Swift 2.0 中,引入了可用性的概念.对于函数,类,协议等,可以使用 @available 声明这些类型的生命周期依赖 ...
- Robotium调用getActivity()导致程序挂起的方法
1. 问题背景的叙述性说明 需要直接用在工作中没有项目的源代码robotium测试目标android平台launcher,该平台的基础上,当前日期的版本号android 4.4.2.之前我用来验证的可 ...
- 解决Windows 8.1 应用商店中安装程序挂起的解决
阅读目录: 在Windows 8.1系统的应用程序商店中安装程序时,总是提醒“挂起”状态.无法进行后续安装,看了下国内不少用户有这个困扰,特此总结自己的解决方案. 1. 确保Windows updat ...
- iOS swift项目IM实现,从长连接到数据流解析分析之Socket
iOS swift项目IM实现,从长连接到底层数据解析分析之Socket 一:项目简介: 去年开始接手了一个国企移动项目,项目的需求是实现IM即时通讯功能. * 一期版本功能包括了: ...
随机推荐
- BZOJ 1926: [Sdoi2010]粟粟的书架(主席树,二分答案)
BZOJ 1926: [Sdoi2010]粟粟的书架(主席树,二分答案) 题意 : 给你一个长为\(R\)宽为\(C\)的矩阵,第\(i\)行\(j\)列的数为\(P_{i,j}\). 有\(m\)次 ...
- freemind中内容变成html转义字符解决方法
在使用freemind的时候,没有正常关闭,导致原来的内容变成下面这样: <html> <body> <p> <b>查询所有</b> < ...
- VM快照-克隆重要应用讲解及克隆后网卡问题解决
快照:snapshot 1---2---3---5 用于以后 rollback 1 2 3 5 克隆前关机:halt 克隆之后连不上网 解决办法: 1.编辑eth0的配置文 vi/etc/syscon ...
- java容器类2:Map及HashMap深入解读
Java的编程过程中经常会和Map打交道,现在我们来一起了解一下Map的底层实现,其中的思想结构对我们平时接口设计和编程也有一定借鉴作用.(以下接口分析都是以jdk1.8源码为参考依据) 1. Map ...
- JVM堆外内存随笔
一 JVM堆外内存 1)java与io(file,socket)的操作都需要堆外内存与jvm内存进行互相拷贝,因为操作系统是不懂jvm的内存结构的(jvm的内存结构是自管理的),所以堆外内存存放的是操 ...
- 一年java工作经验的面试题总结(持续更新中)
本人是17年6月份毕业的,3月份出来实习,算起来也是工作一年了吧,金三银四,博主也考虑换一份工作,于是最近面试了几家,总结一下面试中的问题,大家一起交流学习. 第一次面试 ①说下java类的加载 ② ...
- python 全栈开发,Day2(正式)
一.in的使用 in 操作符用于判断关键字是否存在于变量中 a = '男孩wusir' print('男孩' in a) 执行输出: True in是整体匹配,不会拆分匹配. a = '男孩wusir ...
- 阿里云手动搭建k8s搭建中遇到的问题解决(持续更新)
ETCD搭建 systemd启动etcd服务的时候出现错误:Failed at step CHDIR spawning /usr/bin/etcd: No such file or directory ...
- window.open打开文件乱码
问题:刚开始使用window.open在IE兼容模式下打开文件下载出现乱码. 一开始以为是文件名是中文导致的.然后使用a标签的download属性更改文件名解决. <a class=" ...
- angularJS 指令解释
本文引自 http://blog.csdn.net/kongjiea/article/details/49840035 指令,很重要 AngularJS与jQuery最大的区别在哪里?我认为,表现在数 ...