这两天需要发布一个ipa放到网上供其他人安装,需要用到企业级开发者账号。在网上查了一下资料,感觉没有一个比较完善的流程,于是决定把整个流程写下来,供大家参考。
首先详细说明一下我们的目标,我们需要发布一个ipa放到网上,所有人(包括越狱及非越狱设备)可以直接通过链接下载安装,不需要通过AppStore,也不需要安装任何证书。要达到这个目标,就需要企业级开发账号(299刀)。企业级开发账号的申请流程在这里就不细说,主要说一下In House ipa的发布流程。
1.登录https://developer.apple.com,进入iOS开发者中心。在Certificates-Production中创建一个证书。
2.选择 In-House and Ad Hoc,点继续。注意,如果已经创建过In-House的证书,就不能再创建了,该选项会变灰,如下图。如果要重新创建,可以先在之前的列表中将该证书Revoke掉。
3.在Mac系统中进入“钥匙串访问”(可以直接用SpotLight搜索),选择“钥匙串访问”-“证书助理”-“从证书颁发机构请求证书”。
4.输入邮箱地址和名称,选择“存储到磁盘”
5.将生成的“CertificateSigningRequest.certSigningRequest”文件上传到开发者中心,点击下一步生成,最后将生成的证书下载到本地,双击打开。就可以在钥匙串中看到证书已经成功安装了。
6.回到iOS开发者中心,在“Identifiers”-“App IDs”中创建一个应用对应的App ID。本人是创建的Explicit App ID,Wildcard App ID应该也行。
7.在Provisioning Profiles中添加一个与刚刚创建的AppID相应的Profile,选择“In House”
8.选择刚刚创建的App ID
9.创建并生成Profile后,下载到本地,双击打开,添加到资料库中。
10.打开需要导出ipa的工程,在Scheme中选择iOS Device
11.在菜单中选择Product-Archive
12.在弹出的Orgnizer中选择刚刚生成的Archive(默认选中),再选择右上角的Distribute
13.选择Save for Enterprise or Ad Hoc Deployment
14.选择刚刚创建的Profile
15.在弹出的保存框中将“Save for Enterprise Distribution”选上,并填入ipa在服务器上的路径(服务器地址需要改成自己的)以及应用的名称,选择保存路径,点击“Save”。
16.接下来就会在刚刚保存的路径下看到生成的两个文件,下面,我们需要把这两个文件上传到我们的服务器上。
17.服务器可以使用Apache、Tomcat等,只要支持文件访问即可,本人是在本地架了个Apache。服务器搭建完后,将以上两个文件放到根目录(其他目录也可,但需要修改15步骤中的Application URL和18步骤中的plist地址,Application URL还可以在plist中修改)
18.最后,我们将plist在服务器上的地址加到字符串“itms-services://?action=download-manifest&url=”之后,得到:
itms-services://?action=download-manifest&url=http://59.64.93.213/HelloWorld.plist
将这个plist地址用iOS设备的safari浏览器打开,就会提示安装应用。
注意:服务端要用https的服务