Background Modes - 后台模式

最近总结了之前项目中用到的后台语音播放功能,顺便记录一下后台模式,加深自己的印象。

后台运行状态:

  • Not running:应用还没有启动,或者应用正在运行但是途中被系统停止。
  • Inactive:当前应用正在前台运行,但是并不接收事件。一般每当应用要从一个状态切换到另一个不同的状态时,中途过渡会短暂停留在此状态。唯一在此状态停留时间比较长的情况是:当用户锁屏时,或者系统提示用户去响应某些(诸如电话来电、有未读短信等)事件的时候
  • Active:当前应用正在前台运行,并且接收事件。这是应用正在前台运行时所处的正常状态
  • Background:应用处在后台,并且还在执行代码,都只会在这个状态短暂停留(最多十分钟),然后就会被系统强制进入 Suspended 状态。
  • Suspended:应用处在后台,并且已停止执行代码。

常用的后台模式:

  • Audio, AirPlay and Picture in Picture
        音频播放,录音,AirPlay及画中画的视频播放
  • Location updates
         一般用于导航应用中, 开启此选项后,应用推到后台,还可以得到西戎的定位更新,从而使得应用可以根据定位的变化做出不同的反应
  • Background fetch
        后台获取数据后,在用户打开应用之前就使APP有机会执行代码来获取数据,并刷新UI
    *Remote notifications
        iOS7之前推送的类型是很单一的,无非就是显示标题内容,指定声音等;iOS7之后设备在接受到远程推送后让系统唤醒设备和我们的后台应用,并先执行一段代码来准备数据和UI,然后再提示用户有推送。

你可能感兴趣的:(Background Modes - 后台模式)