先给结论:不冲突。UDID(设备唯一识别码,苹果用来标识一台设备的字符串)只是这台设备的一个编号,它不像门票一样「给出去就用掉了」。同一台设备可以被加进很多个开发者账号的设备列表里,也可以同时给好几家签名商,彼此互不影响。
真正有额度限制的,是开发者账号那一边,不是设备这一边。
额度限制在账号上
苹果给每个开发者账号设了设备上限:每种设备类型每年 100 台。这里有三个容易搞错的点——第一,是「每个账号」的额度,不是「每台设备」的额度;第二,是按设备类型分开算的(手机、平板等各有一份额度);第三,是「每年」而不是「每月」,额度在会员年度结束时重置。
所以当你把 UDID 给了三家签名商,消耗的是三家各自账号里的各一台额度,你的设备本身没有任何损耗。
但有一个坑:删掉不等于额度回来
在会员年度内把某台设备从列表里移除,额度当年不会释放。也就是说,你今年加了 100 台又全删掉,今年仍然加不了第 101 台,要等到续费进入新的会员年度,额度才会重新计算。这条规则对签名商的成本影响很大,也是为什么有些服务商会劝你不要频繁换设备。
那为什么有人觉得「给过一家就不能给第二家」
两种情况会造成这种错觉。一种是服务商用了同一个开发者账号给多个客户加设备,账号额度被别人占满了,这时候问题是账号满了,不是你的设备被锁。另一种是某些工具在读取 UDID 的同时写入了自己的配置,后续再读会读到旧值,看上去像「被占用」,实际上换一种读取方式就正常了。
隐私角度怎么看
UDID 本身不含姓名、手机号这类个人信息,它是一串硬件相关的标识符。它的价值在于「能定位到一台具体设备」,所以给出去的后果是:对方有能力把这台设备加进某个开发者账号。这既意味着对方能给你签名,也意味着这台设备出现在了对方的账号记录里。合理的做法是把 UDID 当作一类中敏信息管理——只给需要给的一方,并记录给了谁。
实操建议
用一张表把设备管起来:设备名、UDID、给了哪家、什么时候给的、现在还在不在用。这样做有三个好处——换服务商时能立刻拿出完整名单;出现问题时能快速定位是哪一批设备;年底清理设备列表时有据可依。个人用户至少也把 UDID 在本地备忘录里存一份,换手机或换服务商时不用重新折腾一遍。
小结
UDID 可以同时给多家,冲突发生在账号额度而不是设备上。真正需要注意的是删除后额度不立即释放这条规则,以及把 UDID 当敏感信息来管理。
我是本期作者小思,想解决苹果企业签名、超级签名、TF签名问题?可以在微信公众号对话框找到我哦~(QQ:822404920 微信:A-mk5888)