iOS后台运行,需要有特定的类型才可以进行。这些内容并不是一直不变的,苹果也在逐步的更新这些内容。
本文内容是2015年11月03日时苹果支持的后台运行类型。
其中较为重要的是下面这张表,我已截图出来。
解释一下:
1. 音频播放和录制;
2. 位置更新;
3. VOip;
*4. 后台下载(此处指预更新);
5. 使用External accessory framework库(通常是通过MFI认证的蓝牙应用);
6. 蓝牙应用(使用Core Bluetooth framework库);
7. 通过蓝牙的数据传输(仅限沙盒内的数据);
8. 定时下载和处理少量网络数据;
9. 推送。
程序中需要写入这些类型可以在Capabilities中配置,如下图(其中被勾选是我自己钩的,默认没有)。
另:
*4. 后台下载(此处指预更新);
苹果官网解释的直译:该应用程序是一个报亭的应用程序,下载并在后台处理杂志或报纸的内容。
举个栗子大家就明白了:
比如微博(不知道微博有没有这样做,只是举个栗子),在点击微博查看内容时(比如时间A),微博已经完成加载新的数据并且显示出来,而不需要在点击启动应用程序后再次加载。而什么时间加载呢?那就是在点击微博前(比如时间B)。那么,很简单,讲道理,按照这样的说法,时间A会晚于时间B。那么,我怎么知道用户什么时候打开微博,我怎么设置时间B?查阅了很多资料,据说:iOS系统会自动统计用户开启微博的时间(比如用户经常在晚上10点打开),那么,系统会自动设置提前一段时间来更新数据(比如在每晚9点50分)。这个调用是系统在做的,而不是我们程序控制的。听起来很厉害的样子,说的跟真的一样。这玩意还真没测试过···
新闻热点
疑难解答