前言
本人在开发过程中经常被问到企业级证书打包发布方面的问题,我想很多iOS开发者手里都只有公司账号和个人账号这两种吧,毕竟企业证书的申请条件对于小公司而言太过苛刻(或者说根本不可能?貌似是需要公司规模达到500人..),然后有的朋友初次拿到客户提供的企业级账号就会遇到各种问题,所以这篇文章会从头到尾介绍一番,如有不妥之处,欢迎批评指正。(本文可能会顺带将公司账号申请证书某些流程一并介绍)
步骤一
打开钥匙串-钥匙串访问-证书助理-从证书颁发机构请求证书,如下图所示
证书信息页面填好邮件地址,选中存储到磁盘
点击继续,将生成的文件保存到桌面,会得到这么一个cer文件(该文件可以理解为你电脑的身份证号吧,包含了开发者信息和公钥)
步骤二
登录正确企业级账号进入证书创建页面,此时会有几种情况
- 全新的账号,没有创建任何证书
- 已经存在一个Distribition证书
- 已经存在两个Distribition证书
对于第一种,就不多赘述了,和公司账号申请证书流程一样,直接创建Dev证书和Dis证书,在选择cer文件的时候将步骤一中生成的cer上传即可。
第二种情况,因为企业级账号仅可以创建两个Dis证书(以前是一个),如果你权限够,那就按照第一种情况直接创建,但是如果权限不够的话,那你只能从创建存在的证书的那个人的电脑里面导出来p12文件(最烦的大概就是这个过程了,所以为什么上面会分是否有足够权限来说明,大部分朋友手里的企业级账号不是自己公司的)
第三种情况其实就是上面说过的,现在企业证书最多只能创建两个Dis证书,第三个人要使用别无他法,只能从之前的两个人的电脑里面导出来p12文件才行,这个跟公司账号是差不多的(我没说是一样的。。是因为我们公司发生了一件奇葩的事,同事A将项目和账号给了同事B(没SVN),让同事B更新版本上传App Store,按正常逻辑还需要同事A导p12文件给同事B的,偏偏同事B直接下载同事A创建的证书就可以发布了,我以为是苹果悄无声息的改了,我再试连achieve都过不去 囧 这情况如有朋友知道还请不吝赐教)
另外说一下如何区分证书到底是谁创建的,账号用的人多了 有的朋友都不知道自己创建的是哪个,如图4所示 Expires那一列代表到期时间,同一种证书时效相同,所以你只要清楚自己创建的时候之前是否已经存在一个就可以区分了,因为创建得越早 到期时间越早。
步骤三
1.创建App Ids-填好app name和bondle id
2.创建证书配置文件 如图示选择
上图中的四个选项意义不赘述了 英语好的朋友从字面意思即可理解了
3.下载配置文件
步骤四
1.在xcode中登录企业账号
2.双击下载好的配置文件(如果xcode中不出现重启后就有了)
到此为止整个流程就走完了,剩下的就是achieve和上传发布蒲公英了。其实这篇文章对初次申请证书的朋友帮助比较大---只要有人受益就是对我最大的鼓励和支持。
然后再提一点看法,xcode8出来后多了一个自动管理选项
这个玩意相当实用,像本人经常achieve的朋友想必深有体会,勾选之后会根据所填的bundle id 自动创建配置文件(前提是证书已经存在于钥匙串并且可用),省去了每次都要去网页创建APP Ids 和 配置文件。但是呢,根据本人的实际体验,公司账号不建议勾选自动,因为项目多的情况下,并不是很好管理,你们公司有几个同事选了自动,有几个没选,那样在网页里面配置文件命名特别乱,如果bundle id命名也不统一就更乱了。企业级账号建议自动,尤其是客户比较多的公司,如果不自动的话 可能一天到晚就只能打几个ipa包浑浑度日了。
结束语
本文旨在帮助有需要的朋友,也是本人入驻简书的第一篇技术方向的文章,如果存在表述有误或者不正确的地方欢迎批评指正,也欢迎大家交流沟通.