使用七牛雲端儲存解決ios7.1的app部署問題,牛雲ios7.1
使用七牛雲端儲存解決ios7.1的app部署問題
一.問題描述
開發完ios版本的app。需要將.ipa檔案和.plist檔案打包上傳,供使用者下載,線上安裝。使用者安裝過程簡單描述如下:
首先通過手機瀏覽器safari或者掃描二維碼擷取到下載.plist的地址。然後瀏覽器會自動跳轉到這個地址,下載、讀取.plist。(使用者跳轉的地址是.plist的。)這個過程,顯然使用http協議來下載.plist檔案。最後,iphone通過讀取.plist檔案中配置的.ipa,來安裝.ipa檔案,來完成ios版本的app。
舉例,網站首頁中,下載.plist的代碼:
<ahref="itms-services://?action=download-manifest&url=http://www.ekwing.com/ekwing.plist"class="mobile-ios"></a>
但是,蘋果從ios7.1開始,使用者安裝app,需要使用https協議,來下載plist檔案。也就說,在安裝app的第一步,下載.plist檔案,需要使用https協議。https協議如下:
這裡不詳細描述https協議。HTTPS的信任繼承基於預先安裝在瀏覽器中的憑證授權單位(如VeriSign、Microsoft等)(意即“我信任憑證授權單位告訴我應該信任的”)。因此,一個到某網站的HTTPS串連可被信任,若且唯若:
1. 使用者相信他們的瀏覽器正確實現了HTTPS且安裝了正確的憑證授權單位;
2. 使用者相信憑證授權單位僅信任合法的網站;
3. 被訪問的網站提供了一個有效認證,意即,它是由一個被信任的憑證授權單位簽發的(大部分瀏覽器會對無效的認證發出警告);
4. 該認證正確地驗證了被訪問的網站(如,訪問https://example時收到了給“Example Inc.”而不是其它組織的認證);
5. 或者互連網上相關的節點是值得信任的,或者使用者相信本協議的加密層(TLS或SSL)不能被竊聽者破壞。
簡單描述,使用者使用https來下載.plist檔案。則需要網站支援https協議。支援https協議,除了服務端做一些配置外,還需要申請一個資料簽署憑證。這個簽署憑證是由簽發機構簽發的。不能自己配置產生。而申請簽署憑證需要一段時間。而我們的目的只是希望能夠讓我們的app被使用者正常下載安裝即可。
二.問題分析
解決該問題,就2個方法:
1.自己網站服務上配置https服務,併購買數位簽章認證以保證每種類型及其不同版本的瀏覽器能夠安裝了憑證授權單位頒發的,我們購買的資料簽署憑證。時間開銷7天左右。
2.將app檔案託管到支援https協議的第三方伺服器上。
三.解決問題
使用七牛雲端儲存,可以快速,免費解決這個問題。只需要到http://www.qiniu.com/註冊一個帳號。然後,開通https協議的網域名稱即可。最後將.plist和.ipa檔案上傳到七牛雲端儲存上即可。操作過程,非常簡單。只要注意幾點:
1. 開通一個http協議的網域名稱,和一個https協議的網域名稱。
如。尾碼名是.qiniudn.com的是支援http協議的網域名稱。尾碼名是.qbox.me的是支援https協議的網域名稱。上傳.plist、.ipa到七牛雲端儲存。
2. 修改下載.plist檔案的地址,修改.plist檔案內容。
網站首頁,下載.plist地址改成上傳到七牛雲端儲存上的支援https協議(網域名稱尾碼名是.qbox.me)的下載連結地址。
<ahref="itms-services://?action=download-manifest&url=https://dn-ekwing.qbox.me/ekwing.plist"class="mobile-ios"></a>
3. 將.plist檔案內容中,.ipa的,改成七牛雲端儲存上的支援http協議(尾碼名是.qiniudn.com)
<string>http://ekwing.qiniudn.com/ekwing.ipa</string>
4. 總結,.plist的下載用https協議,而.ipa的下載用http協議即可。修改完後,就可應用ios6、ios7、ios7.1進行測試了。
四. 感謝七牛雲端儲存
感謝七牛運儲存提供免費服務。不過,目前防盜鏈還不能用。希望能夠加上防盜鏈功能。
五. 因ios7.1安裝app,需要用https協議而提示的錯誤
無法安裝應用程式因為認證無效
<Warning>:[ERROR]: Cannot load non-https manifest URL:http://192.168.1.22/ekwing.plist
<Warning>:Could not load download manifest with underlying error: ErrorDomain=SSErrorDomain Code=128 "無法串連" UserInfo=0x1669d990 {NSLocalizedDescription=無法串連}
<Warning>: NSURLConnection/CFURLConnection HTTP loadfailed (kCFStreamErrorDomainSSL, -9813)
<Warning>: Could not load download manifest withunderlying error: Error Domain=NSURLErrorDomain Code=-1202 "無法串連到商店" UserInfo=0x166bc640{NSLocalizedDescription=無法串連到商店,NSLocalizedRecoverySuggestion=您仍要串連此伺服器嗎?,NSLocalizedFailureReason=無法建立安全連線。請檢查“日期與時間”設定。,NSErrorFailingURLStringKey=https://192.168.1.22/ekwing.plist,NSUnderlyingError=0x165b37e0 "此伺服器的認證無效。您可能正在串連到一個偽裝成“192.168.1.22”的伺服器,這會威脅到您的機密資訊的安全。",NSURLErrorFailingURLPeerTrustErrorKey=<SecTrustRef:0x166b83e0>,NSErrorFailingURLKey=https://192.168.1.22/ekwing.plist}
轉載,請註明原地址 http://blog.csdn.net/longxibendi/article/details/37601747
又拍雲端儲存與七牛雲端儲存有什不同?
特有的上傳加速能力。其他雲端儲存通常只加速下載(CDN)。有的號稱支援上傳加速,其實也就只是做了上傳的代理節點。但是七牛是全球首家採用多IDC架構的分布式儲存。資料就近上傳到某個IDC即落地,真正加速到極致。
特有的斷點續上傳功能。不再需要網路不行時在那一遍遍從頭再來。無論網路多糟糕(尤其是3G/2G移動網路)、無論檔案多大,我們都能夠保證讓你的資料到達伺服器。這個在國內仍然沒有其他雲端儲存能夠做到。
CDN整合。七牛目前整合了包括藍汛、網宿在內的 4 家 CDN,總節點數已經超過 1000 個IDC,這讓自建 CDN 望塵莫及。我們不重新發明輪子。但我們要讓 CDN 從高端走向平民。為什麼只能大公司才能享受 CDN 帶來的好處?有了七牛,你就是個部落客也可以享受高品質的快感。七牛還幫你做了智能的 CDN 品質監測。萬一某家 CDN 出現局部節點問題時,七牛還能夠自動幫你把該地區切換到另一家 CDN,整個過程透明,讓你省時省心。
獨特的鏡像儲存,體驗七牛雲端儲存只需一鍵。
流媒體(音視頻處理)支援。這個目前國內雲端儲存也是首家。悄悄告訴你,最近音視頻支援還會重大更新哦。
資料處理功能的級聯(也就是管道)。圖片先縮減再打浮水印,是管道功能的典型案例。
大檔案支援。七牛雲端儲存單檔案最大支援到1TB(不夠用請告訴我 ^_^)。
織夢dedecms整合七牛雲端儲存
恕我孤陋寡聞了,沒有聽說過