App Store 散發

完成 Xamarin.iOS 應用程式開發之後,軟體開發生命週期的下一步就是使用 iTunes App Store 將應用程式散發給使用者。 這是散發應用程式最常用的方式。 藉由 Apple 的 App Store 來發佈應用程式,可提供給全球使用者使用。

重要

Apple 已宣佈從 2019 年 3 月開始,提交至 App Store 的所有應用程式與更新,都必須使用 iOS 12.1 SDK 或更新版本 (包含在 Xcode 10.1 或更新版本中) 進行建置。 應用程式也應支援 iPhone XS 及 12.9" iPad Pro 的螢幕大小。

重要

如果您在使用 Xamarin.Forms 時尋找取代警告 (ITMS-90809) 的資源 UIWebView ,請參閱 Xamarin.Forms WebView 檔。

如同開發應用程式,散發應用程式需使用適當的「佈建設定檔」來佈建應用程式。 佈建設定檔是一種檔案,其包含程式碼簽署資訊、應用程式身分識別及預期的散發機制。 對於非 App Store 的散發,佈建設定檔也包含可用來部署應用程式之裝置的相關資訊。

重要

必須是 Apple Developer Program 的個人或組織成員身分,才能使用 iTunes Connect 並將應用程式發佈至 App Store。 如果您是 Apple Developer Enterprise Program 的成員,將無法執行此頁面的操作步驟。

佈建適用於 App Store 散發的應用程式

不論您計劃如何發行 Xamarin.iOS 應用程式,都將必須建置特定的「散發佈建設定檔」。 此設定檔可讓應用程式進行數位簽署以便發行,使其可安裝在 iOS 裝置上。 類似於開發佈建設定檔,散發設定檔將包含下列內容:

  • 應用程式識別碼
  • 散發憑證

您可以選擇與用於開發佈建設定檔相同的應用程式識別碼裝置;但如果您還沒有,則需要建立一個「散發憑證」,以在將應用程式提交到應用程式市集時,確認您的組織。 以下將介紹建立「散發憑證」的步驟。

注意

只有小組代理人和管理員可以建立散發憑證和佈建設定檔。

建立散發憑證

  1. 瀏覽至 Apple Developer Member Center 的「憑證、識別碼與設定檔」區段。

  2. 在 [憑證] 下,選取 [生產環境]

  3. 按一下 []+ 按鈕以建立新的憑證。

  4. 在「生產環境」標題下,選取 [App Store and Ad Hoc] (App Store 和臨機操作)

    Select App Store and Ad Hoc

  5. 按一下 [繼續],並遵循指示以透過 Keychain 存取來建立憑證簽署要求:

    Create a Certificate Signing Request via Keychain Access

  6. 依指示建立 CSR 之後,請按一下 [繼續] 並將 CSR 上傳到 Member Center:

    Upload the CSR to the Member Center

  7. 按一下 [產生] 以建立您的憑證。

  8. 最後,下載完成的憑證,並按兩下檔案以進行安裝。

  9. 此時,電腦上應該已安裝憑證,但是您可能需要重新整理設定檔,以確保會顯示在 Xcode 中。

或者,也可以透過 Xcode 中的 [喜好設定] 對話方塊來要求憑證。 若要這樣做,請依照下列步驟進行操作:

  1. 選取您的小組,然後按兩下 [ 管理憑證...]: Select the team and View Details

  2. 接下來,按兩下 iOS 散發憑證旁的 [建立] 按鈕:Create an iOS Distribution Certificate

  3. 根據您的小組許可權,系統會產生簽署身分識別,如下所示,或者您可能必須等到小組代理程式或系統管理員核准它: The signing identity will be generated and a dialog displayed

建立散發設定檔

建立應用程式識別碼

如同您所建立的其他任何佈建設定檔,此處也需要應用程式識別碼才能識別您要散發給使用者裝置的應用程式。 如果您尚未建立應用程式識別碼,請遵循下列步驟來建立:

  1. Apple Developer Center 中,瀏覽到「憑證、識別碼與設定檔」區段。 選取 [識別碼] 下的 [應用程式識別碼]
  2. 按一下 []+ 按鈕,並提供可在入口網站中識別應用程式的名稱
  3. 應用程式前置詞應該已設定為您的小組識別碼,且無法變更。 選取 [明確] 或 [通配符應用程式識別符],並以反向 DNS 格式輸入套件組合識別碼,例如:
    • 明確com.[網域名稱].[應用程式名稱]
    • 萬用字元com.[網域名稱].*
  4. 選取您的應用程式所需要的任何應用程式服務
  5. 按一下 [繼續] 按鈕,並遵循畫面指示來建立新的應用程式識別碼。

建立佈建設定檔

一旦您有建立散發設定檔所需的元件之後,請遵循下列步驟來建立散發設定檔:

  1. 返回 Apple Provisioning Portal 並選取 [佈建]>[散發]

    RSelect Provisioning > Distribution

  2. 按一下 []+ 按鈕,並選取您想要建立為 App Store 的散發設定檔類型:

    Create an App Store distribution profile

  3. 按一下 [繼續] 按鈕,並從您要建立散發設定檔的下拉式清單中選取應用程式識別碼:

    Select App ID from the dropdown list

  4. 按一下 [繼續] 按鈕,並選取簽署應用程式所需的憑證:

    Select the certificate required to sign the application

  5. 按一下 [繼續] 按鈕,然後選取允許執行 Xamarin.iOS 應用程式的 iOS 裝置:

    Select the iOS devices that app will be allowed to run on

  6. 按一下 [繼續] 按鈕,並針對新的散發設定檔輸入名稱

    Enter a Name for the new Distribution Profile

  7. 按一下 [產生] 按鈕,以建立新的設定檔,並完成流程。

您可能需要結束 Visual Studio for Mac 並讓 Xcode 重新整理其可用「簽署身分識別」和「佈建設定檔」的清單 (遵循要求簽署身分識別一節中的指示),之後才能在 Visual Studio for Mac 中使用新的散發設定檔。

在 Xamarin.iOS 專案中選取散發設定檔

當您準備好為將於 iTunes App Store 上銷售的 Xamarin.iOS 應用程式進行最終建置,請選取上面所建立的散發設定檔。

請在 Visual Studio for Mac 中執行下列動作:

  1. 在方案總管 中,按兩下專案名稱,將其開啟進行編輯。

  2. 從 [組態] 下拉式清單中選取 [iOS Bundle Signing] (iOS 套件組合簽署) 和 [發行 | iPhone]

    Select Release | iPhone from the Configuration dropdown

  3. 在大多數情況下,可以保留 [簽署識別] 和 [佈建設定檔] 的預設值為 [自動] ,Visual Studio for Mac 會根據 Info.plist 中的套件組合識別碼選擇正確的設定檔:

    The Signing Identity and the Provisioning Profile set to the default values of Automatic

  4. 視需要,可在下拉式清單中選取 [簽署識別] 和 [散發設定檔] (上面所建立的):

    Select the Signing Identity and Distribution Profiles

  5. 按一下 [確定] 按鈕以儲存所做的變更。

在 iTunes Connect 中設定應用程式

成功佈建應用程式後,下一步是在 iTunes Connect 中設定應用程式,iTunes Connect 是一套可管理 App Store 中 iOS 應用程式和進行其他作業的 Web 工具。

您必須先在 iTunes Connect 中正確安裝並設定 Xamarin.iOS 應用程式,才能將其提交給 Apple 進行審查,最終達到在 App Store 作為付費或免費 App 發行的目標。

如需更多詳細資料,請參閱我們的在 iTunes Connect 中設定應用程式文件。

將 iTunes Connect 提交至應用程式

一旦應用程式已使用「發佈佈建設定檔」進行簽署並已在 iTunes Connect 中建立之後,可將應用程式的二進位檔案上傳到 Apple 以供檢閱。 成功通過 Apple 的審查後,即可將其發佈至 App Store。

如需如何將應用程式發佈至 App Store 的詳細資訊,請參閱發佈至 App Store

自動將 .app 套件組合複製回 Windows

在 Visual Studio 和 Mac Build Agent 中建置 iOS 應用程式時,.app 套件組合不會複製回 Windows 電腦。 適用於 Visual Studio 7.4 的 Xamarin 工具加入一個新的 CopyAppBundle 屬性,可讓 CI 組建將 .app 套件組合複製回 Windows。

若要使用此功能,請將 CopyAppBundle 屬性加入至 .csproj 中您想要套用此功能的屬性群組底下。 例如,下列範例示範如何將 .app 套件組合複製回 Windows 電腦,以取得適用於 iPhoneSimulator偵錯組建:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' ">
    <CopyAppBundle>true</CopyAppBundle>
</PropertyGroup>

摘要

本文涵蓋了準備在 App Store 中發佈 Xamarin.iOS 應用程式的關鍵元件。