介紹如何通過網頁內部分發 iOS 應用, 包括 In-House 公司專屬應用程式和 ad-hoc 測試應用。
原生 XCode 應用
1. 歸檔編譯
用 XCode 開啟要分發的項目, 依次選擇 "Product" -> "Build for" -> "Archiving"
, 如:
編譯完成之後,就會產生 XCode 的項目歸檔, 接下來使用 Organizer 設定分發資訊。
2. 使用 Organizer 設定分發資訊
開啟 Orangizer , 選擇 Archives 標籤, 可以看到現有的 XCode 項目歸檔, 選擇要分發的項目, 然後點擊右邊的 Distribute...
按鈕, 如所示:
接下來回彈出分發嚮導, 第一步分發方式, 選擇 Save for Enterprise or Ad-Hoc Development
, 如所示:
點擊 Next
按鈕, 第二步選擇程式碼簽署, 選擇 Enterprise
或者 Ad-Hoc
簽名, 如所示:
點擊 Next
按鈕, 第三步填寫分發資訊, 選擇應用儲存位置以及名稱, 同時要勾選 Save for Enterprise Distribution
, 輸入分發資訊, 然後儲存, 這樣將會產生兩個檔案, 一個是尾碼為 ipa 檔案, 就是 iOS 程式本身了, 另一個是尾碼為 plist 檔案, 包含 ipa 檔案的描述資訊。
3. 部署到內部 Web 服務器
將上一部最終產生的 ipa 以及 plist 檔案複製到內部的 Web 服務器, 在網頁上添加類似這樣的連結:
<a href="itms-services://?action=download-manifest&url=http://url-to-your-app.plist">安裝隨處工作iOS版</a>
Web 服務器上可能需要添加 .plist 和 .ipa 的 Mime 類型, 它們的 Mime 類型分別為:
.plist : text/xml
;
.ipa : application/octet-stream
4. iOS 裝置下載安裝
用 iOS 裝置訪問網頁, 點選連結就可以直接安裝了。 如果是未越獄的裝置, 需要確認簽名許可包含了裝置的 UDID , 否則無法安裝。
MonoTouch 應用
對於 MonoTouch 編寫的應用, 需要將 MonoDevelop 升級到最新版的 3.1.1 , 在 Build
菜單下也添加了 Achive
選項, 選擇 Arcive
菜單進行編譯, 就會在 XCode 的 Organizer 的 Archives 標籤下能看到對應的項目, 接下來就和上面的步驟一致了。