Xcode 6 以后在导出企业级ipa时并没有“saved for enterprise distribution”这个选项,所以需要手动添加该plist文件。
必备条件:1、申请 iOS Developer Enterprise Program,需要$299/年;
2、需要一个有效的SSL证书(访问plist文件用到),可以来着http://www.freehao123.com/startssl-ssl/ 搞一个;
具体步骤如下:
1、创建Production 证书
点击红色方框的+图标
选择In-house and Ad Hoc,由于已经创建过该类证书,所以不能再次创建。点击continue后会要求上传证书请求文件,具体的证书创建过程请参考http://blog.csdn.net/abbottsuccess/article/details/4445160。证书生成后下载(cer)文件,双击安装,可在钥匙串中查看到已安装的证书
2、创建Provisioning Profiles
选择In House ,点击继续
选择App ID(关于如何创建APP ID请查看步骤一的链接),继续
选择步骤一创建的发布证书(别选错),继续
下载,之后双击安装该文件(安装时间很短,确定双击即可)
3、创建IPA及plist
打开Xcode,点击左上角的工程名称,在TARGETS中点击工程名,选中顶部的General, Team选择为在 iOS Developer Enterprise Program创建的账号。
选择工程,在Build Settings中的Code Signing中将Debug、Distribution、Release全选择为步骤一中安装好的证书,Provisionning Profile选择为所下载的那个文件。返回到TARGETS,在Build Settings中进行同样的操作。
在Xcode的菜单栏上选择Product -> Archive
选择 Export,
选择Save for Enterprise Deployment,next
按要求选择账号,然后继续即可,最后就是导出ipa了(注意,没有任何Save for Enterprise选项)
截止目前为止,ipa已经生成了,但是由于6以上的xcode已经不支持自动生产plist文件,所以需要自己创建plist文件。Dropbox有个样例,可以参考一下https://www.dropbox.com/s/a8hpnmq654pmbaw/AppName.plist?dl=0
4、通过网络安装ipa
注意:plist文件的名称必须跟ipa文件名称一致
1)将plist与ipa文件上传至服务器,
- 创建网页,包含如下代码:<a href="itms-services://?action=download-manifest&url=https://mydomain.com/apps/MyInHouseApp.plist" id="text">Install the In-House App</a>
url必须是https,否则ipa无法安装。
2)有些服务器可能还需要配置一些mime type,如下:
application/octet-stream ipa text/xml plist最后贴图,证明上述所说的都不是扯蛋