【轉】使用itms-services從瀏覽器發布iOS App遇到的問題總結


itms-service是apple為iOS企業用戶($299)提供的無線分發安裝方式所使用的協議,使用這種方式發布應用不需要通過App Store,任何iOS設備都可以安裝企業用戶通過這種方式發布的應用而沒有設備數目的限制。(個人用戶和公司用戶也可以使用這種方式通過網頁發布應用,但只有設備的UDID被包含在對應帳戶的Device ID中的設備可以安裝,而Device ID對數目是有限制的)。

    可以從safari瀏覽器直接打開如下所示的itms-services協議的鏈接,可以在iOS設備上直接安裝鏈接所指向的應用,itms-services://?action=download-manifest&url=http://192.168.1.27:8082/un/yi.plist。

    服務器對應的plist文件中包含iOS設備安裝該應用所需要的信息,如ipa的下載地址,也有該App的bundle identifier,相關的信息可以搜索“itms-services”找到,一搜一大把。

     1.我今天遇到的問題是:下載安裝應用時,進度條結束后圖標就突然消失了,桌面上找不到任何關於該軟件的信息,就和沒安裝一樣。但是你卻可以在設置》通用》用量》顯示所有應用程序 中找到該軟件所占內存信息,也可以連接上設備后在Xcode中的organizer的Devices中對應的iOS 設備的applications下找到該軟件信息。
嗯,最常遇到的情況就這樣了,折騰了一天,終於找到原因:是服務器上的plist文件中的bundle identifier和打包時候用的bundle identifier不一致。
     同時還發現一個現象,如果兩個bundle identifier不一致,在iOS5上安裝上軟件后軟件不顯示,如果在iOS6上安裝上軟件后軟件則能正常安裝。

    2.在iOS 7.1版本之后,通過itms-service安裝應用時,要求itms-service協議后面的url的值即plist文件的地址必須為https地址,且設備必須信任此https服務器的SSL證書。關於這個問題,可參考另一篇博客

    3.另外,用戶首次安裝企業應用時,可以通過在網頁上點擊itms-service鏈接或者掃瞄itms-service二維碼,后續更新時,可通過在程序的代碼中使用[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"itms-service..."]];的方式了。

 

from:http://blog.sina.com.cn/s/blog_5f19ccb10101da5m.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM