开发证书详解

231 查看

最近有个妹子问了我很多开发者证书的相关问题,据说搜到很多百度上不靠谱的帖子(也可能是out of date了),导致越弄越乱,我就在这里简单概括描述一下,证书的种类用途和使用方式等。时间是2015年2月份左右,应该在未来一段时间都是没问题的。

  1. 购买证书:建议使用个人信用卡。很多人包括我自己,当时没有使用自己的信用卡,导致购买流程无法继续,激活码无法激活等问题。这是因为苹果的开发者账号,需要确认你的个人信息真实性,如果你的信用卡名和你的名字一致,那么可以确认你的信息真实,否则无法确认,就会卡住。这时需要写邮件给官方支持团队chinadev@asia.apple.com 这个地址用中文写邮件即可。或者去官网找国内支持团队的电话,打电话比较快。然后他们会发给你一个连接,上传你的身份证正反面照片即可。

  2. 购买之后,一些具体流程参见此处

  3. 证书分类:每个人叫法不同,为了避免歧义,使用官方叫法。证书分为certification和provision两种,翻译过来大概一种叫开发许可证,一种叫供应许可证。这两种证书,后缀分别为.cer和.provision。cer证书,每个开发者账号只有两个(个人开发者是这样,企业的请自行谷歌),很多人称为根证书,分别是development和distribution证书,顾名思义分别是开发时使用和发布时使用,表示你有开发权和发布权。这两个证书,是应用无关的,属于对你个人开发权利的认定书。provision证书,是应用相关的,但是也同样分为development和distribution(在选择provision的时候,distribution实际上就是App Store对应的选项,Ad Hoc对应的是内测或小范围测试,push notification证书是推送用的,这里不细说)证书两类,描述一个应用的开发许可和发布许可。每次生成新的appid都需要生成这两个文件,导入到xcode中之后。之后在build setting选项中,code sign一栏,有个provision选项,debug选中对应的development文件,release选中对应的distribution文件。其中development的provision会包含一些设备的udid在其中,这是真机build测试的必要环节。

  4. 还有一种证书,是系统替你生成的以*号结尾的通配符证书,每个开发者账号默认有两个,可以匹配你的任意应用,真机测试时可以build到任意机器。可以在开发时使用,非常方便,但是正式提交的时候,一定要使用app对应的provision才行。

——————以上基于个人经验,如有纰漏请指出O(∩_∩)O谢谢————————