引言
app的状态:
- 死亡状态:没有打开app
- 前台运行状态
- 后台暂停状态:停止一切动画、定时器、多媒体、联网操作,很难再做其他操作
- 后台运行状态
I 后台运行任务例子
AppDelegate
- (void)applicationDidEnterBackground:(UIApplication *)application
#pragma mark - 进入后台 - (void)applicationDidEnterBackground:(UIApplication *)application { // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. /** * app的状态 * 1.死亡状态:没有打开app * 2.前台运行状态 * 3.后台暂停状态:停止一切动画、定时器、多媒体、联网操作,很难再作其他操作 * 4.后台运行状态 */ // 向操作系统申请后台运行的资格,能维持多久,是不确定的 /** 知识点: 1>block会在定义那一刻,直接拿到外部的局部变量task的值。以后block中局部变量task的值就固定不变 2>block中 对被————block修饰的变量的一直引用 3》block中 对被————static修饰的变量的一直引用;对全局变量、成员变量也是能一致引用*/ __block UIBackgroundTaskIdentifier task = [application beginBackgroundTaskWithExpirationHandler:^{ // 当申请的后台运行时间已经结束(过期),就会调用这个block // 赶紧结束任务 [application endBackgroundTask:task]; }]; /** 争取更高资格的方法:*/ //1》 在Info.plst中设置后台模式:Required background modes == App plays audio or streams audio/video using AirPlay // 2》搞一个0kb的MP3文件,没有声音 // 3》循环播放 // 以前的后台模式只有3种: // 保持网络连接 // 多媒体应用 // VOIP:网络电话 }
II 后台模式争取更高资格
2.1 后台模式争取更高资格的方法
1、 在Info.plst中设置后台模式:Required background modes == App plays audio or streams audio/video using AirPlay 2、搞一个0kb的没有声音的MP3文件进行循环播放
2.2 app处于后台/被杀死的状态仍可进行语言播报
iOS NotificationServiceExtension实现VoiceBroadcast【app处于后台/被杀死的状态仍可进行语言播报】iOS12.1以上在后台或者被杀死无法语音播报的解决方案
CSDN资源下载源码:https://download.csdn.net/download/u011018979/14026303
1、原文:iOS12.1以上在后台或者被杀死无法语音播报的解决方案:用NotificationServiceExtension实现【修订】
2、本文提供iOS12.1系统以上在后台或者被杀死无法语音播报的解决方案:通过NotificationServiceExtension实现
3、原理:iOS 10新增了Service Extension,这意味着在APNs到达我们的设备之前,还会经过一层允许用户自主设置的Extension服务进行处理,为APNs增加了多样性。
本文就是利用Service Extension处理消息并语言播报,来解决iOS12.1系统以上在后台或者被杀死无法语音播报的问题
——————————————— 版权声明:本文为CSDN博主「#公众号:iOS逆向」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/z929118967/article/details/103702284