• 繁體中文(香港)
  • Ad Hoc 分發

    何時使用 Ad Hoc

    Ad Hoc 可在無 TestFlight Beta App Review 下,將已簽名構建安裝至固定的已註冊裝置清單。適合小型內部測試、客戶驗收、離線演示或所有裝置都預先已知的緊急驗證。

    如測試者經常變動、需要集中更新/意見,或無法收集 UDID,請使用 TestFlight。持久正式分發應使用不公開列出、自訂或公開 App Store。

    要求及限制

    你需要:

    • 有效 Apple Developer Program 會籍
    • 與 MeDo Bundle ID 一致的明確 App ID
    • Apple Distribution 證書及其私鑰
    • 包含 App ID、證書、entitlement 及目標裝置 ID 的 Ad Hoc 簽名描述檔
    • 打包前在 Apple 開發者帳號註冊所有目標 iPhone 或 iPad

    Apple 每個產品類別每個會籍年度最多允許 100 部已註冊裝置。年度中途停用裝置不會歸還名額;新會籍年度開始時可重設裝置清單。

    在 MeDo 選擇 Ad Hoc

    開啟 Public Release / Invite Testing Build,選擇 Install on Specific Devices (Ad Hoc)。生成的 IPA 只可在簽名描述檔包含的裝置運行。

    選擇 Ad Hoc 分發方式

    配置 Apple 授權

    如工作區尚未連接,MeDo 會要求 App Store Connect API 的 Issuer IDKey ID.p8 私鑰。請使用 Team Key;Apple 的 Individual API Key 無法存取 provisioning endpoints。

    Account Holder 或 Admin 可在 App Store Connect → Users and Access → Integrations → App Store Connect API → Team Keys 建立 Key。只授予 MeDo 流程接受的最低角色權限。Apple 只允許下載 .p8 一次。

    上載 .p8 會按該 Key 的角色授權 MeDo 執行操作。建議使用專用 Key、安全保存下載檔案,並在外洩或不再需要時撤銷。授權成功後,Release prerequisites 會將 Apple 授權顯示為 Completed,簽名證書則顯示為 Ready

    核對 Apple 授權及簽名證書 建立 App Store Connect API Key

    註冊及核對裝置

    裝置 ID 必須準確,錯誤 UDID 會令目標裝置無法安裝。

    可在可信 Mac 的 Finder 或 Xcode 取得 iPhone/iPad UDID。Check installable devices 步驟提供 Add DeviceManage DevicesRefresh

    1. 選擇 Refresh,確認目標裝置標示為 Installable
    2. 如找不到裝置,使用 Add DeviceManage Devices,或在 Certificates, Identifiers & Profiles → Devices 註冊。
    3. 確認前核對 UDID 及產品類別。註冊新裝置會佔用 Apple 開發者帳號的一個年度裝置名額。
    4. 如上次構建後新增裝置或 entitlement,建立新的簽名描述檔並重新打包。
    5. 只在目標裝置已包含時開始打包。

    核對可進行 Ad Hoc 安裝的已註冊裝置

    開始打包

    每次 iOS 打包會消耗 500 Credits。由於價格可能變更,執行前請核對 MeDo 顯示的金額。

    Start Packaging。第 4 步會顯示 Packaging...、3–8 分鐘估算,並說明可在 build records 查看結果。實際時間會受隊列、簽名及服務狀態影響。

    打包成功後,第 5 步會進入 Packaging Complete,並顯示安裝 QR code,以及 Copy Installation LinkDownload IPACompleted

    Ad Hoc 安裝包正在建立 已完成的 Ad Hoc 安裝包及安裝選項

    安裝構建

    Packaging Complete 表示 MeDo 已生成簽名安裝包。請另行在已註冊的目標裝置驗證安裝及啟動。

    在已註冊裝置使用 MeDo 安裝連結或 QR code。如使用 OTA 安裝,請在 Safari 開啟,並保持連線直至下載及驗證完成。

    MeDo 可能顯示首次安裝的開發者信任提示,請按目標裝置實際顯示的指示操作。一般 Ad Hoc 構建以 Apple Distribution 證書簽名,並受簽名描述檔限制;它不是 Enterprise App,除非安裝包實際採用 enterprise signing,否則不應套用 Apple 的 Enterprise App 手動信任程序。

    2021 年 6 月 6 日後建立的開發者團隊,其 development 及 Ad Hoc 簽名 App 首次啟動時可能需要連接 Apple PPQ 服務。封鎖 https://ppq.apple.com 的網絡可能令驗證失敗。

    疑難排解

    無法完成安裝

    • UDID 必須與描述檔中的裝置完全一致。
    • 描述檔未到期或失效。
    • 分發證書有效,簽名時可存取其私鑰。
    • Bundle ID 及 entitlement 與 App ID/描述檔一致。
    • 構建支援裝置 OS 及架構。
    • 下載及 manifest 網址使用有效 HTTPS,且裝置可存取。

    已安裝但無法啟動

    • 確認裝置可連接 Apple 證書驗證服務。
    • 查看裝置 log 的簽名或 entitlement 錯誤。
    • 變更 capability 後重新產生描述檔。
    • 新增裝置後必須重新打包;舊 IPA 不會自動包含新裝置。

    新測試者需要存取

    註冊新 UDID、重新產生描述檔及建立新簽名 IPA。如經常發生,應改用 TestFlight 外部測試。

    安全及生命週期

    • 即使描述檔會限制裝置,仍只應向指定測試者分享安裝連結。
    • 立即撤銷已外洩的 API Key 及證書。
    • 測試完成後移除敏感測試資料並停用測試帳號。
    • 追蹤證書、描述檔、會籍及裝置清單的續期日期。
    • 不要將 Ad Hoc 描述為永久客戶分發渠道。

    Apple 官方參考