这两天需要发布一个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的服务

如果大家觉得对自己有帮助的话,还希望能帮顶一下,谢谢:)
转载请注明出处,谢谢!

iOS企业开发In House ipa发布流程的更多相关文章

  1. iOS$299企业账号In House ipa发布流程

    1.在Mac系统中进入“钥匙串访问”,选择“钥匙串访问”-“证书助理”-“从证书颁发机构请求证书”. 填写前两项,并保存在本地. 2.登录https://developer.apple.com,进入i ...

  2. 企业级开发账号In House ipa发布流程

    这两天需要发布一个ipa放到网上供其他人安装,需要用到企业级开发者账号.在网上查了一下资料,感觉没有一个比较完善的流程,于是决定把整个流程写下来,供大家参考. 首先详细说明一下我们的目标,我们需要发布 ...

  3. iOS版本更新的App提交审核发布流程

    http://www.2cto.com/kf/201502/378698.html 版本更新的App和新App的发布提交流程略有不同,新的App需要在开发者账号里准备发布证书,添加App的id,关联描 ...

  4. iOS企业开发plist安装包实现

    第一步: 在使用MACBOOK导出ipa的时候,我们得到ipa的同时,还得到一份plist文件 看到我们导出的plist,需要注意的地方有两个已经用中文标注. 一个是URL,一个是bundle-ide ...

  5. ios 企业证书 ipa 重新签名发布

    提示:暂时不能用了,企业证书滥用 ios 企业证书 ipa 重新签名发布 1. 应用场景 当前有一个 未用企业证书签名的 ipa 文件,默认是不可以直接安装到设备上的:我们需要用企业版证书签名: 当前 ...

  6. iOS 本地企业发布流程

    今天和后台弄了一下本地企业ipa发布, 准备工具:要发布的ipa文件一个,一个plist plist文件格式内容: <?xml version="1.0" encoding= ...

  7. iOS应用App Store发布流程

    iOS应用App Store发布流程 要发布iOS应用到App Store首先得有一个开发者账号,且不能是企业版(企业版只能部署inhouse,不能部署到App Store). 应用发布到App St ...

  8. ios 证书申请和发布流程

    证书是什么? 上面这个就是我们申请好证书后,下载到本地的.cer文件,也就是常说的开发证书与发布证书的样式.这.cer文件格式的证书是让开发者使用的设备(也就是你的Mac)有真机调试,发布APP的权限 ...

  9. App开发到App Store上架,发布流程。

     http://blog.csdn.net/wojsg001/article/details/12005887 App开发到App Store上架,发布流程. 分类: IOS2013-09-25 11 ...

随机推荐

  1. 将table中的值转换成json格式传到后台接收处理。

    table数据 <table style="border:1px" id="tableID"> <tr> <th>编号< ...

  2. Ubuntu 安装配置 JDK+Tomcat+Nginx

    安装配置JDK 下载安装 # 下载: wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=acc ...

  3. Swift不等于nil

    我照着书上的例子写下了如下代码,运行后发现提示Nil cannot be assigned to type 'Int' if i!=nil {//Nil cannot be assigned to t ...

  4. C# Oracle.ManagedDataAccess 批量更新表数据

    这是我第一次发表博客.以前经常到博客园查找相关技术和代码,今天在写一段小程序时出现了问题, 但在网上没能找到理想的解决方法.故注册了博客园,想与新手分享(因为本人也不是什么高手). vb.net和C# ...

  5. myeclipse的user library不自动部署到WEB-INF/lib目录下的解决办法

    右键进入项目属性 Properties 点进去 左边 MyEclipse -> Deployment Assembly 右边 Add -> JavaBuild Path Entries - ...

  6. mysql启动与关闭

    撰于:http://wenku.baidu.com/link?url=QV3mEJWnU4c8VZPjKGxz4A8gSmdjO2HZY7n963UaVx4l_uPKrh16tGxLyqjf5i3MA ...

  7. Nginx(一):linux下安装nginx与配置

    linux系统为Centos 64位 准备目录 [root@instance-3lm099to ~]# mkdir /usr/local/nginx [root@instance-3lm099to ~ ...

  8. delete void *

    看代码的时候看到 typedef char xxx[sizeof(T) ? 1 : -1]; 这种语句 如:JavaScriptCore/wtf/OwnPtrCommon.h template < ...

  9. Python内置函数之int()

    class int(x, base=10) 返回一个整型对象.默认返回0. 参数x可以是字符串,也可以是浮点数. base指x的进制形式,比如2表示2进制,10表示10进制.特别需要注意的是,0表示任 ...

  10. hdu Distant Galaxy(遥远的银河)

    Distant Galaxy Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...