引
众所周知,apple是一个比较封闭的生态,不同于android的随意安装,ios开发者想要看到自己开发的app成功地在自己手机上跑起来,甚至上架app store,简直是一件喜极而泣奔走相告的事情,相信每一个ios开发者,也都经历过被各种证书折磨得头疼心累得过程,而我也正在这个过程之中...现在初步弄清楚了真机调试证书的获取流程,能够让app在真机上跑起来了,赶紧记录下来。
当然,要想正规地真机调试,第0步永远是要有一个开发者账号,这也是ios开发门槛比android高的原因,android机器便宜,随意测试,随意传播下载,而开发ios应用,电脑手机都贵T T,好不容易弄出来了,想在手机上看还得要支付开发者账号得费用,想传播真是麻烦无比,话说回来,开发者账号分为个人、公司、企业三种,个人和公司的是$99一年,企业的是$299一年,注意这里是美元不是软妹币,所以一般个人开发者到这里就望而却步了。。。
当你有了开发者账号之后,就可以申请证书进行真机调试了,下面开始讲解:
首先进入苹果的开发者网站:https://developer.apple.com
进入证书管理页面:
如下图,在页面右上角点击Member Center,进入个人管理中心。
进入后入下图会要你登录开发者账号:
登陆后就可以管理个人的一些东西了,如下图,我们要选择的是“Certificates,Identifiers&Profiles”这一项,如它的描述所言,管理你app的证书、标志、设备和描述,顺便一说,选择“iTunes Connect”可以管理你发布的app,要提交app store审核也在这个地方。
进入后显示如下图,可以看到有ios的应用,mac的应用和浏览器的扩展,当你的开发者账号有相应的开发权限时则会在其板块下显示详细内容,这里我们看ios Apps部分,板块中四个部分Certificates(证书)、Identifiers(标志)、Devices(设备)、Provisioning Profiles(配置文件),分别点进去可以查看各个部分下我们账号已有的内容,这里我们先点第一项Certificates(证书)看看。
查看和创建证书:
进去后如下图,先看左边一栏,还是刚才那四个部分,这里都可以方便的选择查看,而现在我们在的界面就是我们所拥有的证书界面了,证书的种类多种多样,而开发一个app最基础的证书有两种,一个就是我们现在讲的真机调试证书,你想要把编写的app在自己手机上真机调试,就必须有这个证书;另一个就是发布证书,你想要把app发布到app store审核以供其他人下载,就必须要有这个发布证书。我们看图中的右边部分,显示了所有拥有的证书,三列第一列显示你给证书定义的名字,第二列显示你的证书的类型,就包括真机调试证书和发布证书等等,如图中的“iOS Development”就表示真机调试证书,“iOS Distribution”表示发布证书,第三列显示证书的过期时间,超过这个时间证书就失效了,这里我已经创建过证书,所以看到四个证书,点击其中第一个真机调试证书,可以删除(慎重!)和下载,至于下载了有什么用,待会再说。当第一次进来的时候,列表是没有证书的,这里就需要点击右上角的加号来创建证书。
点击加号后如下图,我们要创建的是Development测试部分中的第一项,注意这个测试证书每个开发者账号只能创建两个,然后到最下方点击continue进入下一个页面。
这个页面就是告诉你一些关于证书的事情,英文好有兴趣的可以看看,大意是说需要用到电脑的钥匙串配置文件,后续再说,可以直接点击continue进入下一步了。
下一个页面显示需要我们上传一个钥匙串配置文件,那什么是钥匙串配置文件呢,需要按下面的步骤来一步步创建:
创建电脑钥匙串:
点击mac上的火箭图形进入Launchpad,找到钥匙串访问的图标,如下图:
打开后点击左上角钥匙串访问-->证书主力-->从证书颁发机构请求证书。
打开后出现证书请求的对话框如下图,这里的目的是获取刚才我们在创建证书时需要的钥匙串文件,有两种获取方式,一种是电子邮件形式,一种是直接存储到电脑上。如果选择用电子邮件的话,上面两个需要填电子邮件的文本框就是接收的邮箱,这两个邮箱一定要填成一样的;为了方便也可一直选择存储到磁盘,但电子邮件地址还是要填写且一致,不过反正用不着可以随便填写, 只要一样就好了,存储到磁盘点击继续的话会要你选择存储的位置,一定要让自己找得到。
成功后会得到一个CertificateSigningRequest 文件,也就是常常看到的CSR文件。
继续创建证书:
钥匙串CSR文件创建好后,就可以回到刚才的网站界面,选择我们刚刚创建的钥匙串配置文件上传,点击Generate就可以创建成功了,然后点击Download将其下载到我们的电脑上,这样我们就得到这个真机调试的证书cer文件,然后,双击这个文件,一定要双击才会将证书安装到钥匙串中,否则使用是会有问题的,你双击后看到它闪了一下就可以了,在钥匙串中是可以找到这个文件的。
至此,我们已经完成第一步了,注意,这只是第一步哦,不要以为弄到证书了就可以万事大吉了,还早呢,不得不说实在是...太麻烦了。好啦,继续我们的工作。
创建工程标志:
现在我们到Identifiers部分中来,给我们的工程创建一个app ID,也就是工程标志,或者工程签名。在界面左侧点击Identifiers部分中的App IDs,右边可以看到已经创建的标志列表,点击加号来创建新的标志。
创建时需要填写Name用来方便后续找到这个标志,然后在App ID Suffix中填写App ID,也就是工程标识,这里有两种标识,一种是Explicit App ID固定标识,对应于一个工程,如果有多个工程,也可以选择Wildcard App ID广域标识,可以对应多个工程。标识的填写方式它也给出了示例。
提交后我们就获得了一个工程的标识,这一步就可以结束了,还算简单,进入下一步。
添加设备:
这里添加的设备是允许真机调试的设备,不得不说苹果的管控真是严格啊。。。每个账号允许添加100个设备吧,点击Devices部分的All可以查看已经添加的设备,同样的点击右上角的加号可以创建新设备信息,这里就不贴图了。要创建新的设备信息,需要设备也就是iPhone或者iPad的UDID,也就是唯一标识符,获取的方法很多,iTunes、Xcode以及很多软件都可以看到,这里就不细说了。
知道设备的UDID后,就可以添加设备了,这里可以添加单个设备也可以添加多个设备,为了避免出错最好还是单个添加,填上你给设备起的名字和查到的设备UDID后,就可以添加了。
创建PP配置文件:
现在终于到了获取证书的最后一个步骤了!简直不容易,四个部分我们已经走完了三个,从创建证书,到创建工程标识,到创建设备信息,虽然我们都添加了,但是这些互相之间是零散的,并没有关联起来,而这最后一步就是要将证书、工程标识、设备信息融合起来了,这样才可能统一管理吧,所以对于最后一个部分:Provisioning Profiles配置文件,我的理解就是把上面的信息合起来配个一个具体的工程,这样才方便管理,如果有不对的地方希望指教一下~
与上面步骤一样,点击PP部分的All之后,点击右上角的加号创建新的PP配置文件,也不配图了懒...
创建时选择第一个调试部分的真机iOS App Development真机调试文件,continue。
这里选择App ID,也就是第二个部分中添加的工程标识,选择刚才创建的要调试的工程标识就好了。continue。
接下来添加证书信息,也选择刚才创建的真机调试的证书就好了,continue。
接下来添加设备信息,其实可以把所有设备都选了,免得后来麻烦嘛,continue。
最后一步就是起名了,建议起好找好记得,不然后来太多了容易找不到,然后点击Generate生成就好了。
创建之后将其下载下来到电脑上,会得到一个mobileprovision文件:
与之前下载的证书文件一样,双击这个文件,来把它安装到Xcode中去,才能正常使用,看到闪了一下就表示安装了。
至此,我们的准备工作基本完成了,下一步就是去Xcode里设置来真机调试了。
Xcode中设置工程:
第一步:在工程的Supporting Files下,找到.plist文件,然后在右边的列表中找到Bundle identifier行,设置成与我们刚才创建的工程标识一致;
第二步:点击工程名(最上面蓝色的),中间列表选择TARGETS下的工程同名文件,于右边的列表中找到Code Signing部分,找到Provisioning Profile项选择我们刚才创建并安装的PP配置文件,还是Code Signing部分中,找到Code Signing Identity行,下属的四个全部改成我们创建并下载的证书cer文件,注意,不是PP文件;
第三步:在中间列表中的PROJECT下选择工程同名文件,进行与第二步同样的修改。
真机连接调试:
至此所有工作全部完成,已经可以进行真机调试了,可喜可贺。现在,连接设备,解锁设备,在原来Xcode中选择模拟器的地方选择自己的设备,如果没连接好,会显示“iOS Devices”,连接好了会显示你的设备名。点击运行,看你的手机吧~