Devices(设备管理)
设备列表仅用于开发 / Ad Hoc 场景。TestFlight 测试无需注册 UDID——这是 TestFlight 相对 Ad Hoc 的一大优势。
设备管理的作用
在开发与 Ad Hoc 分发中,描述文件需要明确「允许安装到哪些真机」。设备(Devices)列表就是维护这些真机的地方:
- 开发描述文件(Development):包含开发证书 + App ID + 设备。
- Ad Hoc 描述文件:包含发布证书 + App ID + 设备,用于不经过 App Store / TestFlight 的分发。
获取 UDID
UDID 是每台 iPhone/iPad 的唯一硬件标识。获取方式:
- Finder:连接设备 → 点击设备名 → 查看「UDID」。
- Xcode:Window → Devices and Simulators → 选中设备查看。
- 命令行:
idevice_id -l(需安装 libimobiledevice)。 - 第三方「UDID 查询」页面:设备打开后自动显示并复制。
不要手抄 UDID,很容易抄错一个字符导致「设备不在描述文件内」的安装失败。尽量用复制的方式获取。
添加设备
- 在 Certificates, Identifiers & Profiles → Devices → “+”。
- 填写设备名称(如
John iPhone 15)与 UDID。 - 保存后,该设备即可被新的开发 / Ad Hoc 描述文件引用。
设备上限与维护
- 每年上限:每个团队每年可注册的 iOS 设备数有限制(通常按设备类型计,如 100 台)。
- 删除不立即释放名额:删除设备不会立刻把名额还给你,需等到下一年度重置。
- 建议:只注册活跃测试设备,季度性清理;年度重置后再补充必要设备。
如果你的测试主要走 TestFlight,设备管理可以基本不用管;只有需要 Ad Hoc 直接分发(如给不方便装 TestFlight 的客户)时才需要维护设备列表。
自检清单
- 已用可靠方式获取 UDID(复制而非手抄)
- 已为活跃测试设备注册名称与 UDID
- 已确认开发 / Ad Hoc 描述文件包含目标设备
- 已关注设备数量上限并定期清理
常见问题
- Ad Hoc 包装不上? 检查设备 UDID 是否在描述文件内;重签并重新安装。
- 设备显示「已满」? 等待年度重置,或删除不再使用的设备(注意删除不立即释放名额)。
- TestFlight 需要注册设备吗? 不需要。TestFlight 测试员无需 UDID 注册。
