Android 应用能够在后台创建执行代码的服务,这些服务可能会偷偷下载文件消耗流量,导致扣费。iOS 应用则不能在后台执行代码,只要用户单击 Home 键,前台应用的所有线程就都会被挂起,只有播放音乐、获取实时位置等必须在后台执行的操作才能执行。不过在 iOS 中,也是有后台程序的,这些程序被称为守护程序(daemon)。试想在打开 Safari(浏览器)上网时,突然有电话打进来,这时接听电话的界面就会在前台显示,要是没有后台程序,怎么处理来电呢?只是苹果公司并没有给开发者开放后台程序,只有越狱之后,才能开发后台程序。
iOS 的系统进程 launchd 会在系统启动后检测/System/Library/LaunchDaemons 和 /Library/LaunchDaemons 这两个目录下的 .plist 文件,.plist 文件描述了守护程序的路径。