ios app 未釋出前進行大規模測試的一些思路及做法
阿新 • • 發佈:2019-02-14
正常情況,做好一個蘋果的app,要想讓大眾使用者下載安裝使用,都是上傳到app store,使用者登入app store找到你開發的app下載安裝使用。
但是app能否成功出現在蘋果的app store,還需要有一個時間段讓蘋果對你開發的app進行稽核,如果稽核有問題還要退回解決後重新上傳,所以耗費週期有時很長。
現在問題出現,如果開發出app,先給周邊的朋友、同事測試,假如這個人數有幾十人到上百人,該如何辦呢??
辦法一:把每一臺要安裝app的ios裝置的UDID號複製出來,加入到開發環境,編譯好app後發給使用者,讓使用者把ios裝置連線到電腦,將收到的app拖到itunes,然後和ios裝置同步安裝。這些步驟在一個開發者看來再簡單不過的操作,但是普通的使用者就會說:太複雜,搞不定?
辦法二:辦法一不是太麻煩嘛!亮出第二招。 根據蘋果釋出的“Distributing Enterprise Apps for iOS 4 Devices”說明檔案,蘋果在iOS4中新增了一項功能,就是無線釋出iOS App(installing apps wirelessly),——使用者不需要經過iTunes,只用在Safari中點選一個連結就可以下載並安裝應用。
實現起來只需兩步: 1.建立HTML頁面 該頁面用於釋出App,我們可以在這個頁面新增諸如軟體介紹,更新說明等資訊…當然核心程式碼是這個: <a href="itms-services://?action=download-manifest&url=http://iinterest.net/ anifest.plist">Install App</a>當用戶使用Safari瀏覽器瀏覽這個頁面並點選該連結時,iOS裝置會自動識別,返回HOME介面下載並安裝該App,就和我們在iTunes中點選下載按鈕的效果一致。
2.建立manifest.plist檔案
manifest.plist用於記錄App的一些重要資訊如:下載url、軟體圖示url、軟體名稱等,關於anifest.plist完整例子可以在蘋果的開發文件中找到(在最後)。當然,其實並不需要那麼詳盡的軟體資訊,這裡給個更為精簡的例子:
<?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://www.iinterest.net/ipa/Everlight-3.1-Nathan1233.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://www.iinterest.net/webapp/images/ifw114.png</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://www.iinterest.net/webapp/images/ifw114.png</string>
</dict>
</array><key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>net.iinterest.www</string>
<key>bundle-version</key>
<string>8.0.3.99</string>
<key>kind</key>
<string>software</string>
<key>subtitle</key>
<string>Everlight</string>
<key>title</key>
<string>Everlight</string>
</dict>
</dict>
</array>
</dict>
</plist>
以上示例我也是借用這些大俠的勞動成果http://www.iinterest.net/2011/09/22/installing-apps-wirelessly-ipa/。辦法二解決了使用者側的安裝麻煩問題,但是開發者依然需要知道使用者ios裝置的UDID號,一百以內的還好管理,超過一百個UDID,管理起來就很麻煩,而且超過100個,開發者就要申請蘋果的企業開發者賬號了。
有沒有不用UDID號,也能給上百臺ios裝置安裝app的辦法呢。當然是有地。且看辦法三!
辦法三:你可要花大價錢了
其實辦法三,還是使用辦法二的無線釋出iOS App(installing apps wirelessly)套路,只是開發者需要去申請蘋果的EDP(Enterprise developers Program)也就是企業開發者賬戶,這個一年的費是299美刀。
申請EDP還有一個前置的任務,開發者先要申請一個鄧氏全球編碼(D-U-N-S® Number),這個編碼的申請網址是http://www.dnbregistered.com.cn,是國內代理公司。費用分為三個類別:
這個辦法,其實是國外一個創業專案 TestFlight,面向移動應用開發者,提供一站式超級簡易的測試平臺,讓開發者的移動應用在上線之前通過真正的使用者進行應用測試。 使用TestFlight,甚至不需要有蘋果開發者賬戶,就可以測試APP。TestFlight提供了一個雲端安裝app的方案,可以大大降低目前iTunes同步的難度。TestFlight能做比雲端安裝app多得多的事情,它的另一大功能是:你可以把測試使用者分成不同的群體,分別提供不同版本的app,比如向公司同事提供一個版本,投資人則是另一個版本。它可以追蹤各個群體的統計資料,還可以幫助開發者招募測試人員。當然,這些都得受蘋果公司的限制(需要識別符號)。TestFlight一樣可以用在iPad和iPod touch這些iOS裝置上。對於想嘗試一下的開發者它是免費的,同時也有一個還沒有確定價格的企業版本。 他的基本工作原理是: 首先是採集使用者資訊:測試使用者在接收到開發者 (Developer) 的 TestFlight 邀請之後,使用者只需拿自己的 iPhone 開啟邀請中的連結,註冊賬號,註冊硬體 ( Register Device ) ,TestFlight 會自動採集使用者 iPhone 的 UDID 、iOS 版本、硬體版本,併發送給開發者。 然後開發者將 IPA 上傳到 TestFlight 網站,然後勾選合適的測試使用者,點選確認,你就完事了。使用者會馬上收到TestFlight 的更新通知。然後,使用者只需在她的 iPhone 上登入 TestFlight 網站, TestFlight 就會自動將測試 IPA 安裝到她的 iPhone 上。 當然還可以實時監測 IPA 的安裝情況。擔心有的使用者沒有成功安裝? TestFlight 能夠實時給你反饋最新統計資料。 原文地址
辦法二:辦法一不是太麻煩嘛!亮出第二招。 根據蘋果釋出的“Distributing Enterprise Apps for iOS 4 Devices”說明檔案,蘋果在iOS4中新增了一項功能,就是無線釋出iOS App(installing apps wirelessly),——使用者不需要經過iTunes,只用在Safari中點選一個連結就可以下載並安裝應用。
實現起來只需兩步: 1.建立HTML頁面 該頁面用於釋出App,我們可以在這個頁面新增諸如軟體介紹,更新說明等資訊…當然核心程式碼是這個: <a href="itms-services://?action=download-manifest&url=http://iinterest.net/ anifest.plist">Install App</a>當用戶使用Safari瀏覽器瀏覽這個頁面並點選該連結時,iOS裝置會自動識別,返回HOME介面下載並安裝該App,就和我們在iTunes中點選下載按鈕的效果一致。
- 標準版 8600/兩年 貌似國內大多使用這個
- 實地考查版 15800/兩年 代理商極力推薦這個
- VIP版 21000/兩年
這個辦法,其實是國外一個創業專案 TestFlight,面向移動應用開發者,提供一站式超級簡易的測試平臺,讓開發者的移動應用在上線之前通過真正的使用者進行應用測試。 使用TestFlight,甚至不需要有蘋果開發者賬戶,就可以測試APP。TestFlight提供了一個雲端安裝app的方案,可以大大降低目前iTunes同步的難度。TestFlight能做比雲端安裝app多得多的事情,它的另一大功能是:你可以把測試使用者分成不同的群體,分別提供不同版本的app,比如向公司同事提供一個版本,投資人則是另一個版本。它可以追蹤各個群體的統計資料,還可以幫助開發者招募測試人員。當然,這些都得受蘋果公司的限制(需要識別符號)。TestFlight一樣可以用在iPad和iPod touch這些iOS裝置上。對於想嘗試一下的開發者它是免費的,同時也有一個還沒有確定價格的企業版本。 他的基本工作原理是: 首先是採集使用者資訊:測試使用者在接收到開發者 (Developer) 的 TestFlight 邀請之後,使用者只需拿自己的 iPhone 開啟邀請中的連結,註冊賬號,註冊硬體 ( Register Device ) ,TestFlight 會自動採集使用者 iPhone 的 UDID 、iOS 版本、硬體版本,併發送給開發者。 然後開發者將 IPA 上傳到 TestFlight 網站,然後勾選合適的測試使用者,點選確認,你就完事了。使用者會馬上收到TestFlight 的更新通知。然後,使用者只需在她的 iPhone 上登入 TestFlight 網站, TestFlight 就會自動將測試 IPA 安裝到她的 iPhone 上。 當然還可以實時監測 IPA 的安裝情況。擔心有的使用者沒有成功安裝? TestFlight 能夠實時給你反饋最新統計資料。 原文地址