原文鏈接:http://www.survivalescaperooms.com/mddblog/p/4718228.html
一、通過企業賬號申請證書
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),如果沒有真機,可以選擇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包。
三、發布APP
要發布還必須有一個plist文件,在Xcode6之前會自動生成一個plist文件,但是Xcode6之后需要我們自己創建plist,文章最后提供一個plist模板,復制并重命名為plist后打開根據提示操作即可.圖18為plist的截圖,可以看到有三個URL,分別存放ipa,大小圖標。下圖的1(ipa)、2(大圖)、3(小圖)填寫我們自己生成的URL,即將ipa和大小圖標放在我們自己的服務器,當用Safari打開plist時會根據填的plist里面的1、2、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包,還會訪問大小圖標
下面是plist模板的文本形式,將其復制到文本然后重命名.plist,用Xcode打開按照提示編輯即可。
那么,如何獲取別人的APP,或者避免別人下載自己的APP呢?
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>
新聞熱點
疑難解答