一. 关于 XPC
- xpc 是 OS X 下的一种 IPC(进程间通信)技术。它实现了权限隔离,从而让进程通信更加安全,使得 App Sandbox 更加完善。权限分离是根据每个部分所需的系统资源访问将应用程序分成多个部分,每个部分可以使用提前声明的权限(沙箱)。这种单个组件称为XPC 服务。
- 每个 XPC 服务都位于自己的沙箱,即 XPC 服务有
自己的容器
和 一组权限
程序中的 XPC 服务只能 程序自己访问。
- 利用 XPC 我们可以将 App 拆分成多个进程的模式。很多的系统 framwork 也就是利用 XPC 来实现他的功能
- XPC 服务特点:
权限隔离
错误隔离
- XPC 服务有 launchd 所管理,当XPC 服务 被意外终止(或者崩溃)后,该服务将会被 launchd 重启
二. XPC Service 使用入门
1. 创建项目
选择对应的 Objective-c

2. Service 简单讲解
创建的结构为

Object-C 对应函数讲解