itms-services://?action=download-manifest&url=http://www.test.com/app.plist
可是到了 iOS 7.1 之後,就會發生:無法安裝應用程式,因為「www.test.com」的憑證無效。
上網查了一下,才發現原來 iOS 7.1 之後 plist 檔一定要在認可的 https 協定下載,目前可行的方法有:
- 為網站購買 SSL 憑證,改走 https 的方式進行安裝
- 使用 openssl 自簽憑證,iDevice 上要先匯入自簽根憑證才可使用
- 將 plist 檔放在別人提供的 https 空間(如 dropbox),再利用此種模式下載安裝
第一種方式就不用講了,第二種方式的處理方式如下:
- 產生自簽根金鑰
openssl genrsa -out myCA.key 2048 - 產生自簽根憑證
openssl req -x509 -new -key myCA.key -out myCA.cer -days 3650 -subj /CN="小虫CA" - 產生網站金鑰
openssl genrsa -out mycert1.key 2048 - 產生 CSR
openssl req -new -out mycert1.req -key mycert1.key -subj /CN=www.test.com - 利用自簽根金鑰
openssl x509 -req -in mycert1.req -out mycert1.cer -CAkey myCA.key -CA myCA.cer -days 365 -CAcreateserial -CAserial serial - 網站使用 mycert1.key 及 mycert1.cer 來加密,iDevice 先匯入 myCA.cer 即可利用 https 連線到網站上了
- 再利用以下網址即可進行網路安裝 ipa
itms-services://?action=download-manifest&url=https://www.test.com/app.plist
第三種方式,可以將 plist 放置 Dropbox 上,步驟如下:
- 將 plist 檔放置 dropbox 下
- 取得 plist 檔的分享路徑,如
https://www.dropbox.com/s/jwwu4p1kctqenva/app.plist - 將 www.dropbox.com 改為 dl.dropboxusercontent.com,如
https://dl.dropboxusercontent.com/s/jwwu4p1kctqenva/app.plist - 將 app 安裝的網址改為使用第三點的 link 即可,如:
itms-services://?action=download-manifest&url=https://dl.dropboxusercontent.com/s/jwwu4p1kctqenva/app.plist