以 Ad-Hoc 方式測試軟體 iOS 7.1 裝置需要使用具 SSL 憑證的伺服器

螢幕快照 2013-12-21 上午1.34.11

在進行 iOS 的 app 開發時,常需要讓一些團隊成員或測試者測試 beta 版的 app。如果您以 Ad-Hoc 方式發送測試用 app 給測試者下載安裝的話,使用者的裝置若已更新至 iOS 7.1,則您需要找個有 SSL 憑證,支援 HTTPS 的 host 來放置您的 app,否則測試者要下載測試軟體時,會遇上憑證無效的錯誤訊息而無法下載安裝。

提供給您參考,若您有相關的解決方法,也請不吝賜教分享給大家。

[更新]

可將 ipa 與 plist 檔上傳到 Dropbox 中的"公開檔夾(public)"中,然後連到 itms-services://?action=download-manifest&amp;url=<plist 檔的位置>,即可進行 Ad Hoc 的發佈。當然,測試者的裝置需經過開發裝置的 UDID 碼註冊才行。

另外,Google Site 因不支援以 itms-services:// 的協定連結,所以無法透過 Google Site 的連結來進行 Ad Hoc 的發佈。 

[回覆 -> 天天網友]

螢幕快照 2014-03-12 下午11.45.05 螢幕快照 2014-03-12 下午11.46.06

請如圖所示般,複製 .ipa 檔的公開連結,將 .ipa 的公開連結加到 .plist 檔中。以同樣的方法複製 .plist 檔的公開連結,並將連到 .plist 檔的超連結寫成 itms-services://?action=download-manifest&amp;url=<plist 檔超連結> 的形式(沒有角括號),放在網頁中,或以電郵傳給測試者,點選之後,即可將 .ipa 檔下載安裝。不是以 HTML 的 <a href=""> 來連結。

您的問題應該是沒有在網頁的連結中使用 itms-services:// 的方式來進行連結,或不是連結到 .plist 的公開連結上。 .plist 的 URL 看起來會像是 https://dl.dropboxusercontent.com/u/xxxxxxx/xxxxxx/xxxxxxxx.plist。網頁中連結的寫法是

<a href=itms-services://?action=download-manifest&amp;url=https://dl.dropboxusercontent.com/u/xxx/xxx/xxx.plist">xxxx</a>。

提供給您參考,希望能解決您的問題。

[致 ding 網友]

Xcode 5 所產生,供下載 app 用的 .plist 檔如下圖:

螢幕快照 2015-03-03 上午1.35.00

19 thoughts on “以 Ad-Hoc 方式測試軟體 iOS 7.1 裝置需要使用具 SSL 憑證的伺服器

  1. 請問哪裡可以找到pubic folder, 我的iPhone 會直接在瀏覽器上出現 plist 的檔案。它並不會下載&安裝 ipa 檔案。

    感謝

  2. 已經放到dropbox了,他有出現下載準備安裝的畫面,但最後還是會失敗,要求再試一次,請問要怎麼解決比較好呢?謝謝。

  3. 個人覺得 “天天" 網友所回答的,應該就是解答了。可以下載,表示連結到 plist 的連結與 plist 檔連結到 ipa 檔的連結沒有問題。檢查 UDID,確認無誤後,重新產生 Provisioning Profiles,點按二下,安裝到 Xcode 中,重新製作 ipa 檔。如果 ipa 檔的連結沒變,plist 不需重複產生。上傳到原 ipa 檔的位置即可。

    如果您之前沒有用這種方式發佈成功過,那在 code sign、scheme 與 archive 的地方都是可能會出現這類問題的地方。

    希望您能順利解決問題。

  4. 不好意思想請問您
    如果想開發企業內部的應用程式(類似考核系統
    也已經購買Enterprise Developer
    該如何封裝或操作
    想要一樣透過網頁讓user安裝
    是否有方法可以不用取得user手機的UDID(大概有400-500個User)

    • 您好:
      UDID 可以用文字檔先打好,再一次匯進去。不過這只是一種節省 UDID keyin 的方法。
      Apple 有買下一個 3rd party 的公司叫 TestFlight,它可以支援最高到 1,000 個 user 的測試。使用者只要下載 TestFlight App 安裝在手機中,就可以看到您發佈到 TestFlight 供測試的 App,當然就可以下載安裝測試。但目前因今年初才買下 TestFlight,還需要整合,所以用這個方式只支援公司內部的 25 個測試者,但每個測試者可以透過最高 10 部裝置來安裝測試用的 App。
      上述的方法,當然只是用來進行測試,並不是佈署。

  5. 又,如果您想知道的是 Enterprise 的 App Deployment,請參考 Distributing Enterprise Apps 影片。https://developer.apple.com/videos/enterprise/?id=43
    如有問題,請再提出,小弟再就個人經驗跟您討論。

    • 在 Organizer 中選擇 Export 以進行不同方式的佈署,接著您會看到三個選項,其中 Save for Ad Hoc Deployment 是您要在 App Store 外讓別人下載測試的選項,接著再選擇佈署到網站上,plist 就會自動產生。

    • 是的,Xcode 6 不會自動產生 plist 檔,個人認為 Apple 好像要將這個部份併到企業開發方案中了,要讓測試者透過網路下載 app 進行測試的話,要透過 iTunes Connect,也許您要查一下官方關於這方面的說明文件。
      Apple 購入 TestFlight 之後,這方面應該正在調整中。不過還是有方法的,請您使用小弟在 Xcode 5 中所產生的 plist,填入您 app 的資料後即可讓您的 ipa 在網頁中讓測試者下載使用。
      我想在 Apple 沒有調整好前,這部份大概只能這樣子處理了。
      小弟的 plist 載圖會放在原文的最後面,提供給您參考。請將寫有"填入"的部份改成您 app 的資料應該就可以了。

發表留言