1 Certificate Signing Request (CSR)文件javascript
在Mac系统中进入“钥匙串访问”,选择“钥匙串访问”-“证书助理”-“从证书颁发机构请求证书…”,如图1所示:html
—>填写前两项,并选择“存储到磁盘”,如图2所示:java
2 请求Certificate证书git
登陆https://developer.apple.com —>MemberCenter—>Certificates, Indentifiers & Profiles—>Certificates,如图3所示:github
—>在图4页面,点击右上角加号,添加一个证书:xcode
—>选择In-House and Ad Hoc,点继续,如图5所示:七牛云存储
—>如图6:Choose File选择第1步的CSR文件上传,点击generate生成cer证书,下载后双击安转(须要输入Mac的密码)服务器
3 App IDapp
点击右上角的加号按钮,如图7所示:ide
—>有两项须要填(如图8所示),name为描述能够随便填写.bundleID必须与APP的bundleID彻底一致(如图9所示)。至于App Services根据本身须要选择。最后点击继续->submit->done
4 生成最终的Provisioning Profile(企业版不须要device即iPhone的UDID,所以跳过)。
选择Provisioning Profile->ALL,点击右上角加号:
—>选择刚建立的AppID,点击继续,如图12所示:
—>选择cer证书点击继续.图13 给最终生成的Profile文件命名方便本身识别。而后点击生成,并下载双击打开。至此证书环节完毕
这一步开始前,须要将手机插入电脑,并调试选项选择真机。(防止没法Archive),若是没有真机,能够选择iOS Device(这个没有测试)。
1 打包ipa
1.1 Edit scheme
用Xcode打开对应APP。Product->Scheme->Edit scheme,填写Archive name,即为打包后的ipa名字,如图14所示
1.2 选择对应证书,即刚才生成的证书,如图15所示:
1.3 归档,Product->Archive,并按图16,图17操做:
完成以后会生成一个ipa包。
要发布还必须有一个plist文件,在Xcode6以前会自动生成一个plist文件,可是Xcode6以后须要咱们本身建立plist,文章最后提供一个plist模板,复制并重命名为plist后打开根据提示操做便可.图18为plist的截图,能够看到有三个URL,分别存放ipa,大小图标。下图的1(ipa)、2(大图)、3(小图)填写咱们本身生成的URL,即将ipa和大小图标放在咱们本身的服务器,当用Safari打开plist时会根据填的plist里面的一、二、3对应的URL来下载安装ipa、大小图标。
那么plist放在哪里呢(即Safari打开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包,还会访问大小图标,大小图标在ipa包正在下载时显示,当下载完毕后显示程序自带的图标
下载安装后,若是想打开程序还须要在手机 设置->通用->描述文件与设备管理(不一样系统可能名字不同) 里面选择相应的证书信任后,方可打开程序
那么,如何获取别人的APP,或者避免别人下载本身的APP呢?
注意,公用的https连接会被封掉,能够试试github,百度云,七牛云存储等等。最好仍是用本身的
下面是plist模板的文本形式,将其复制到文本而后重命名.plist,用Xcode打开按照提示编辑便可。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>items</key> <array> <dict> <key>assets</key> <array> <dict> <key>kind</key> <string>software-package</string> <key>url</key> <string>ipa包URL(必填)</string> </dict> <dict> <key>kind</key> <string>full-size-image</string> <key>needs-shine</key> <false/> <key>url</key> <string>下载时大图(非必填)</string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>needs-shine</key> <false/> <key>url</key> <string>下载时小图(非必填)</string> </dict> </array> <key>metadata</key> <dict> <key>bundle-identifier</key> <string>BundleID(必填)</string> <key>bundle-version</key> <string>1.0</string> <key>kind</key> <string>software</string> <key>subtitle</key> <string>副标题(非必填)</string> <key>title</key> <string>应用名(必填)</string> </dict> </dict> </array> </dict> </plist>
.