第二篇文章,仅以此记我那颗玻璃心!
说起来小白今年不折不扣的三年开发经验了,然而,小白还是只能自诩小白,或许妹子一枚,得到同事们的诸多呵护,春心一动,离开了那个港湾,庇护不觉然间变成了溺爱的产物
记得以前拓展训练教官说过一段话,印象深刻,你所有侥幸逃脱的懒惰,都将成为你人生中致命的软肋,或早或晚,他都会在你生活的某一时刻,把你折磨的刻骨铭心,好的,说了这么多废话其实是想表达,小白一直不太了解ios开发的各种证书流程,知其然不知其所以然,然鹅,新公司当头一棒就卡在这个关口。
首先证书分为两种,开发证书和发布证书即ios Development,ios Distribution,这个是最基础的,不论是真机调试,还是上传到appstore都是需要的,是一个基证书,用来证明自己开发者身份的
1.appID,这是每一个应用的独立标识,在设置项中可以配置该应用的权限,比如是否用到了PassBook,GameCenter,以及更常见的push服务,如果选中了push服务,那么就可以创建生成下面第3条所提到的推送证书,所以,在所有和推送相关的配置中,首先要做的就是先开通支持推送服务的appID;
2.推送证书(分为开发和发布两种,类型分别为APNs Development ios,APNs Distribution ios),该证书在appID配置中创建生成,和开发者证书一样,安装到开发电脑上
3.Provisioning Profiles小白叫他配置文件,也有很多人叫他描述文件,他就是将appid 开发设备 开发证书三者绑定关联的神奇东东
平常我们的制作流程一般都是按以上序列进行,先利用开发者帐号登陆开发者中心,创建开发者证书,appID,在appID中开通推送服务,在开通推送服务的选项下面创建推送证书(服务器端的推送证书见下文),之后在PP文件中绑定所有的证书id,添加调试真机等
(1)开发证书的制作
首先登录到开发者中心,点击到证书模块
点击加号后,会出现如下界面,用来选择是开发证书还是发布证书,开发证书即为iosdeveloper 而production即为发布到appStore 下面以开发证书为例
选择好证书类型后,会提示创建CSR文件
步骤:
钥匙串-->证书助理-->从证书颁发机构请求证书
填好个重点电子邮件 然后存储到磁盘 将CSR文件保存到一处
备注:CSR文件尽量每个证书都制作一次,将常用名称区分开来,因为该常用名称是证书中的密钥的名字;
之后在开发者中心将该CSR文件提交
提交成功之后,会生成一个Cer证书,有效期为一年,这个小白通常叫他p12文件,注意,这个文件在哪台设备上生成的,后续的设备只能从该设备导出给他他人,自己再生成无效
利用同样的方法配置一下Distribution发布证书,下载保存,双击安装;在钥题串登陆证书中可以查看,其中专用密钥的名字即为CSR请求文件中的常用名称
备注:一个开发或则发布证书,可以对应多个bundleID 生成多个配置文件,适应不同的APP哦!
2、以上开发者证书的配置完成了,下面我们来配置appID和推送证书;在左边栏中选择appID,勾选右边的push可选项,为该appID所对应的应用添加推送功能,下面会看到创建证书的按钮,分别为开发证书和发布证书,下面的流程就和上述1中创建证书一样了,都是先建立证书请求文件,然后提交生成就行了,需要注意的是,虽然在左边栏证书栏中也可以直接创建推送证书,但是还是建议在appID中,勾选了push服务后在此处创建,这样会避免因为忘了开通push服务而导致推送不可用的情况发生;
证书创建完成后,下载保存,双击安装即可;在钥匙串中可见
3、最后我们来进行配置文件的制作
该流程进行两次,分别创建开发测试用配置文件和发布配置文件,前者用于真机测试,后者用于提交发布;Ad Hoc格式一般用于企业帐号,此处我们忽略;
会自动检测匹配appID,另外下拉项中还可以选择wildCard格式,该格式为自动生成,使用*通配符,适用于批量的,没有推送,PassCard等服务的应用;我们选择我们刚刚创建的appID,之后下一步选择证书;
继续,这里有一个区别,因为配置文件的开发测试版需要真机调试,所以我们需要绑定真机,这里因为之前我添加过一些设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的udid复制出来在此添加,在发布配置文件中,是没有这一步的;
之后就是输入一个配置文件的名字了,然后生成,下载保存,双击添加到Xcode库中,这样在真机调试或者发布时,就可以分别有不同的配置文件与其对应;
到此为止证书配置完成,可以打包
下面是testFlight测试 刚开始听时,小白一脸懵逼
其实很简单,登录itunesConnect,我的app如果对应的appId没有创建过app可以直接创建新的app如果已经创建app直接点击对应的app,提示,小白,第一次在创建app时,在配套ID中始终找不到,项目对应的BundleId 纠结了好久才发现,原来这个ID已经被用来创建过应用,店家进入,然后点击testFlight,可以看见之前上传好的版本,然后添加测试人员,输入对应的邮箱,测试邮箱通过邮件可以登录itunnesConntect,然后成为测试员,可以收到相关邀请码,手机下载testFlight即可通过测试码,安装响应的测试app,至此算是完成,小白在同事的奚落下,羞愧难当,还是不太熟,仅以此mark玻璃心!