通過 itms-services 協議,發佈或者分享 iOS 應用程序

itms-services 協議常用於 iOS 企業應用的無線部署,這可在不使用 iTunes 的情況下將內部軟件發佈或者分享給用戶。

前期準備資料

1、應用程序 (.ipa) 文件(使用了企業級預置描述文件);
2、清單 (.plist) 文件(xml格式的清單描述文件)。


準備清單 (.plist) 文件:

清單文件是一個xml格式的文件,參考如下代碼:

<?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>http://domain/app.ipa</string>
               </dict>
               <dict>
                   <key>kind</key>
                   <string>display-image</string>
                   <key>needs-shine</key>
                   <true/>
                   <key>url</key>
                   <string>http://domain/logo/logo.png</string>
               </dict>
           </array>
           <key>metadata</key>
           <dict>
               <key>bundle-identifier</key>
               <string>domain</string>
               <key>bundle-version</key>
               <string>1.0.0</string>
               <key>kind</key>
               <string>software</string>
               <key>subtitle</key>
               <string>App Subtitle</string>
               <key>title</key>
               <string>App Title</string>
           </dict>
       </dict>
   </array>
</dict>
</plist>

描述文件需要注意的三個地方

1、兩個 url 地址,即 software-package 和 display-image 的 URL,前者是所要安裝的 ipa 地址,後者是安裝時桌面顯示的 logo 圖標。
2、metadata裏需要修改 bundle-identifier 和 bundle-version,具體是什麼就不用介紹了,但是要注意一定要跟所安裝的 ipa 包內容一致,不然無法安裝成功。
3、可以修改title和subtitle,定製安裝時彈出框的內容。



ipa格式應用的分享或者發佈

可以使用以下兩種方式提供下載:

第1種是點擊下載,在網頁中加入如下的鏈接就行了:

<a href="itms-services://?action=download-manifest&url=http://domain/manifest.plist">下載App</a>

備註:請勿使用應用程序 (.ipa) 的 Web 鏈接方式提供下載。當打開清單文件(manifest.plist)時,設備會下載該 .ipa。雖然 URL 的協議部分是 itms-services,但 iTunes Store 並不參與此過程。

第2種是通過JavaScript自動下載,參考代碼:

<script>
        var url = "http://domain/manifest.plist";
        window.location = "itms-services://?action=download-manifest&url=" + url;
</script>

備註:此代碼放到 html 標籤的 head 標記中,這樣就會自動提示下載和安裝了。


設定服務器 MIME 類型

配置 Web 服務器的MIME 類型,以便正確地傳輸清單文件(.plist)和應用程序文件(.ipa)。

1、對於 OS X Server,將以下 MIME 類型添加到 Web 服務的“MIME Types”(MIME 類型)設置中:

application/octet-stream ipa
text/xml plist

2、對於 MS 的 IIS,使用 IIS Manager 在服務器的“屬性”頁面中添加 MIME 類型:

.ipa application/octet-stream
.plist text/xml



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章