AppStore企业账号打包发布APP流程详解
一、通过企业账号申请证书
1 Certificate Signing Request (CSR)文件
在Mac系统中进入“钥匙串访问”,选择“钥匙串访问”-“证书助理”-“从证书颁发机构请求证书…”,如图1所示:

—>填写前两项,并选择“存储到磁盘”,如图2所示:

2 请求Certificate证书
登录https://developer.apple.com —>MemberCenter—>Certificates, Indentifiers & Profiles—>Certificates,如图3所示:

—>在图4页面,点击右上角加号,添加一个证书:

—>选择In-House and Ad Hoc,点继续,如图5所示:

—>如图6:Choose File选择第1步的CSR文件上传,点击generate生成cer证书,下载后双击安转(需要输入Mac的密码)

3 App ID
点击右上角的加号按钮,如图7所示:

—>有两项需要填(如图8所示),name为描述可以随便填写.bundleID必须与APP的bundleID完全一致(如图9所示)。至于App Services根据自己需要选择。最后点击继续->submit->done


4 生成最终的Provisioning Profile(企业版不需要device即iPhone的UDID,因此跳过)。
选择Provisioning Profile->ALL,点击右上角加号:

—>选择刚创建的AppID,点击继续,如图12所示:

—>选择cer证书点击继续.图13 给最终生成的Profile文件命名方便自己识别。然后点击生成,并下载双击打开。至此证书环节完毕

二、打包ipa,手动生成plist
这一步开始前,需要将手机插入电脑,并调试选项选择真机。(防止无法Archive)
1 打包ipa
1.1 Edit scheme
用Xcode打开对应APP。Product->Scheme->Edit scheme,填写scheme name如图14所示

1.2 选择对应证书,即刚才生成的证书,如图15所示:

1.3 归档,Product->Archive,并按图16,图17操作:


完成之后会生成一个ipa包。
三、发布APP
要发布还必须有一个plist文件,在Xcode6之前会自动生成一个plist文件,但是Xcode6之后需要我们自己创建plist,文章最后提供一个plist模板,复制并重命名为plist后打开根据提示操作即可.图18为plist的截图,可以看到有三个URL,分别存放ipa,大小图标。当用Safari打开plist时会根据填的URL来下载安装ipa,大小图标。

那么plist放在哪里呢?它的URL是多少呢?苹果对plist存放地址有要求,必须是https的,如果没有https网站,我们可以把plist放在https://git.oschina.net。具体做法就是在上面创建一个项目(不能是私人的),然后将编辑好的plist传到项目,最后将plist的URL赋值下来,比如https://git.oschina.net/waitwait/companytest/blob/master/MDDTest.plist。然后我们在Safari中输入:itms-services:///?action=download-manifest&url=https://git.oschina.net/waitwait/companytest/blob/master/MDDTest.plist就可以安装了(一定要将红色字符串和蓝色URL一起输入)。
Safari操作的具体流程是:
1 Safari解析我们输入的那一串字符串,找到plist文件
2 根据plist文件里面提供的信息下载ipa包,还会访问大小图标
下面是plist模板的文本形式,将其复制到文本然后重命名.plist,用Xcode打开按照提示编辑即可。

1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3 <plist version="1.0">
4 <dict>
5 <key>items</key>
6 <array>
7 <dict>
8 <key>assets</key>
9 <array>
10 <dict>
11 <key>kind</key>
12 <string>software-package</string>
13 <key>url</key>
14 <string>ipa包URL(必填)</string>
15 </dict>
16 <dict>
17 <key>kind</key>
18 <string>full-size-image</string>
19 <key>needs-shine</key>
20 <false/>
21 <key>url</key>
22 <string>下载时大图(非必填)</string>
23 </dict>
24 <dict>
25 <key>kind</key>
26 <string>display-image</string>
27 <key>needs-shine</key>
28 <false/>
29 <key>url</key>
30 <string>下载时小图(非必填)</string>
31 </dict>
32 </array>
33 <key>metadata</key>
34 <dict>
35 <key>bundle-identifier</key>
36 <string>BundleID(必填)</string>
37 <key>bundle-version</key>
38 <string>1.0</string>
39 <key>kind</key>
40 <string>software</string>
41 <key>subtitle</key>
42 <string>副标题(非必填)</string>
43 <key>title</key>
44 <string>应用名(必填)</string>
45 </dict>
46 </dict>
47 </array>
48 </dict>
49 </plist>

AppStore企业账号打包发布APP流程详解的更多相关文章
- 苹果企业账号打包发布APP流程详解
原文链接:http://www.cnblogs.com/mddblog/p/4718228.html 一.通过企业账号申请证书 1 Certificate Signing Request (CSR)文 ...
- unity3d-配置Android环境,打包发布Apk流程详解
31:unity3d-配置Android环境,打包发布Apk流程详解 作者 阿西纳尼 关注 2016.08.28 22:52 字数 498 阅读 1806评论 0喜欢 5 Unity配置Android ...
- 苹果企业账号打包发布App的详细流程
原文链接:http://www.cnblogs.com/mddblog/p/4718228.html 一.通过企业账号申请证书 1 Certificate Signing Request (CSR)文 ...
- winform打包发布安装包详解..
winform打包发布安装包详解.. 使用VS 自带的打包工具,制作winform安装项目 开发环境:VS 2008 Access 操作系统:Windows XP 开发语言:C# 项目名称:**管 ...
- Qt之打包发布(NSIS详解)
来源:http://blog.sina.com.cn/s/blog_a6fb6cc90101fer8.html 发布方式 Qt发布的时候,通常使用两种方式: (1)静态编译 (2)动态编译 ...
- Jenkins持续构建打包后端服务流程详解
背景运用场景及思路 1.为响应后端开发人员需求,提升项目开发过程效率,选择Jenkins持续构建,进行导包启动一键持续集成 思路: 使用jenkins自带,立即构建->SVN拉取代码,通过Jen ...
- Cordova 打包 Android release app 过程详解
Cordova 打包 Android release app 过程详解 时间 -- :: SegmentFault 原文 https://segmentfault.com/a/119000000517 ...
- ios app: 使用企业license设置发布app的过程
ios开发者证书与企业证书的内容,关系,以及ios app 使用企业license设置发布app的过程 iOS是一个非常封闭的系统.授权文件(.mobileprovision)和签名证书文件(.c ...
- 企业账号打包如何通过HTML页面打开
企业账号打包后 Plist文件加入前缀 href="itms-services://?action=download-manifest&url= Plist文件在服务器中的地址为:h ...
随机推荐
- CSS 原理
CSS是一个描述HTML文档的样式语言. CSS描述HTML元素的显示方式. 本教程将教你CSS从基础到网页布局,学完本教程,可以设计出漂亮的网站. 本教程需要HTML知识为基础,学习HTML前往&l ...
- JAVA语言 第四周
oh my god! 说实话,上周的目标没有完成. 这一周过的太随便了,比刚放假时候的热情减少的太多了. 具体干了啥,就不说了吧.好像什么完整的事都没有干~~~~~ 不过一直在完善代码,已经能实现部分 ...
- MATLAB 移动复制文件
copyfile('source','destination'):%复制文件 delete('fileName');%删除文件 movefile('source','destination');%移动 ...
- 1.3.5、CDH 搭建Hadoop在安装之前(端口---Cloudera Search使用的端口)
Cloudera Search使用的端口 在下表中,每个端口的“ 访问要求”列通常是“内部”或“外部”.在此上下文中,“内部”表示端口仅用于组件之间的通信; “外部”表示该端口可用于内部或外部通信. ...
- linux服务不支持chkconfig的解决
服务不支持chkconfig的解决 写了脚本,想用命令chkconfig加载自启动.提示xxxxxxx服务不支持chkconfig",原来是自己写的脚本时,忘记写两行了.开头一般要这样写 # ...
- Linux下SVN server 的使用及权限配置
[Linux下SVN server 的使用及权限配置] 参考:http://www.cnblogs.com/heinoc/p/3805779.html
- windows上java中文乱码-指定字符集 -Dfile.encoding=UTF-8
jvm启动中增加参数: -Dfile.encoding=UTF-8 重启即可.
- Ubantu和CentOS设置静态ip
Ubantu设置ip: 1.sudo vim /etc/NetworkManager/NetworkManager.conf 将false改成true 2.修改配置文件/etc/network/int ...
- HTTP协议之请求
HTTP请求 组成 一个http请求通常由三个部分组成: 请求行(request line) 首部(header) 主体(body) 格式如下所示 <request-line><CR ...
- sqlserver 数据库迁移
参考 https://blog.csdn.net/wuzhanwen/article/details/77449229 一.连接本地数据库引擎 新建一个数据库,如:rbrbsoft 二.连接远程数据库 ...