ios - 如何监听开机
ios - how to listen for boot up
iOS 中是否有通知以便我可以知道 phone 何时重新启动?例如,当 phone 像 android 的 onBootComplete 广播一样完全启动时,我想要一个事件发布到通知中心。
据我所知,NO Direct Documented API 可用于此。当 iPhone 重新启动时,应用程序将处于 Not 运行 状态。请参考Docs for understanding Execution States for Apps.
虽然您可以要求系统在某些传入事件上重新启动您的应用程序。
支持后台执行的应用程序可能会被系统重新启动以处理传入的事件。如果应用程序因用户强制退出以外的任何原因终止,系统会在以下事件之一发生时启动应用程序:
- 对于定位应用:
- 系统收到符合应用配置的传送标准的位置更新。
- 设备进入或离开注册区域。 (区域可以是地理区域或 iBeacon 区域。)
- 对于音频应用,音频框架需要应用处理一些数据。 (音频应用包括播放音频或使用麦克风的应用。)
- 对于蓝牙应用:
- 充当中心角色的应用程序从连接的外围设备接收数据。
- 充当外围角色的应用程序从连接的中心接收命令。
- 对于后台下载应用程序:
- 应用的推送通知到达,通知的有效负载包含值为 1 的内容可用键。
- 系统会适时唤醒应用程序以开始下载新内容。
- 对于使用 NSURLSession class 在后台下载内容的应用程序,与该会话对象关联的所有任务要么成功完成,要么收到错误。
- 报亭应用启动的下载完成。
在大多数情况下,系统不会在用户强制退出后重新启动应用程序。一个例外是位置应用程序,在 iOS 8 及更高版本中,它会在用户强制退出后重新启动。但在其他情况下,用户必须明确启动应用程序或重启设备,然后应用程序才能由系统自动启动到后台。
引用自 Understanding When Your App Gets Launched into the Background.
iOS 中是否有通知以便我可以知道 phone 何时重新启动?例如,当 phone 像 android 的 onBootComplete 广播一样完全启动时,我想要一个事件发布到通知中心。
据我所知,NO Direct Documented API 可用于此。当 iPhone 重新启动时,应用程序将处于 Not 运行 状态。请参考Docs for understanding Execution States for Apps.
虽然您可以要求系统在某些传入事件上重新启动您的应用程序。 支持后台执行的应用程序可能会被系统重新启动以处理传入的事件。如果应用程序因用户强制退出以外的任何原因终止,系统会在以下事件之一发生时启动应用程序:
- 对于定位应用:
- 系统收到符合应用配置的传送标准的位置更新。
- 设备进入或离开注册区域。 (区域可以是地理区域或 iBeacon 区域。)
- 对于音频应用,音频框架需要应用处理一些数据。 (音频应用包括播放音频或使用麦克风的应用。)
- 对于蓝牙应用:
- 充当中心角色的应用程序从连接的外围设备接收数据。
- 充当外围角色的应用程序从连接的中心接收命令。
- 对于后台下载应用程序:
- 应用的推送通知到达,通知的有效负载包含值为 1 的内容可用键。
- 系统会适时唤醒应用程序以开始下载新内容。
- 对于使用 NSURLSession class 在后台下载内容的应用程序,与该会话对象关联的所有任务要么成功完成,要么收到错误。
- 报亭应用启动的下载完成。
在大多数情况下,系统不会在用户强制退出后重新启动应用程序。一个例外是位置应用程序,在 iOS 8 及更高版本中,它会在用户强制退出后重新启动。但在其他情况下,用户必须明确启动应用程序或重启设备,然后应用程序才能由系统自动启动到后台。 引用自 Understanding When Your App Gets Launched into the Background.