iOS7.1 之後使用 OTA 方式部署時,強制使用 SSL 加密方式傳送 ipa 檔案和 plist 檔案,但是伺服器使用 https 的話需要支付一定的費用購買 SSL 證書,國內使用 OTA 方式發布 ipa 檔案的開發者大部分使用的是 http 方式,http 方式在 iOS7.1 就失效了。如果對發布的環境要求不高,使用 Dropbox 作為儲存空間方式發布是不錯的選擇,並且 Dropbox 是支援 https 的,而且是瀏覽器地址欄顯示為綠色,最安全的 EVSSL。
基本原理:通過 Dropbox 的 URL 分享外鏈可以直接實現對原始檔案的訪問。 以下是目前 Dropbox 分享外鏈的 URL 格式
"https://www.dropbox.com/s/v330y19y80zobrf/xxx.ipa"
這裡需要對 URL 進行修改,修改為以下格式的任意一種,即將”www” 更換為”dl-web”,”dl”,”files” 中的任意一種。複製到瀏覽器地址測試一下,如果能下載的話說明有效,如果不能下載也不跳轉到 dropbox 的 404 頁面的話,可能是檔案被牆。
"https://dl-web.dropbox.com/s/v330y19y80zobrf/xxx.ipa"
"https://dl.dropbox.com/s/v330y19y80zobrf/xxx.ipa"
"https://files.dropbox.com/s/v330y19y80zobrf/xxx.ipa"
以上都 OK 的話,按以下步驟進行 1. 在 Xcode 中導出 OTA 發布用的 ipa 包和 plist 檔案,再將 plist 以外的檔案上傳。 2. 創建 ipa 檔案的 Dropbox 外鏈,如果有需要可以將 large-icon 和 small-icon 檔案也創建好備用。 3. 打開 plist 檔案,編輯 plist 中的 assets 項目分支,修改對應的 URL(含 https://)
assets
kind
software-package
url
ipa 檔案的 dropbox url
kind
full-size-image
needs-shine
url
large-icon檔案的dropbox url
kind
display-image
needs-shine
url
small-icon檔案的dropbox url
4. 將 plist 檔案上傳到 Dropbox,創建分享鏈接 URL,使用 iOS 的 Safari 打開替後的 URL,此時便會提示安裝。 5. 如果要方便記憶的話,可以將 plist 檔案的 URL 換成短網址,網上這類服務有一堆,這個可以問度娘。
補充一下 iOS9.0 以後強制開啟的 Https 作為 http 協議的傳輸方式,不僅是 OTA 部署甚至是 APP 內容都禁止使用 http。 lidaren.com 目前已經全面開啟 https 協議方式支援,如果大家需要的話,我這裡可以提供免費的 OTA 部署服務,數量有限,歡迎在本文留言索取。