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 の使用時に UIWebView の非推奨の警告 (ITMS-90809) についてリソースを探している場合は、Xamarin.Forms WebView のドキュメントを参照してください。

アプリケーションを配布するには、アプリケーションの開発の場合と同じように、適切なプロビジョニング プロファイルを使用してアプリケーションをプロビジョニングする必要があります。 プロビジョニング プロファイルは、コード署名情報だけでなく、アプリケーションの ID と使用する配布メカニズムも含むファイルです。 App Store 以外の配布では、アプリを展開できるデバイスに関する情報も含まれています。

重要

iTunes Connect を使う場合、またそのためアプリを App Store に発行する場合は、お客様は個人または組織の Apple Developer Program に参加する必要があります。 Apple Developer Enterprise Program のメンバーの場合、このページの手順に従うことはできません。

App Store で配布するためのアプリのプロビジョニング

Xamarin.iOS アプリケーションをリリースするためにどのように計画しているかに関係なく、固有の配布プロビジョニング プロファイルをビルドする必要があります。 このプロファイルでは、iOS デバイスにインストールできるように、リリースするアプリケーションにデジタル署名することができます。 開発プロビジョニング プロファイルと同様に、配布プロファイルには以下が含まれます。

  • アプリ ID
  • 配布証明書

開発プロビジョニング プロファイルで使用したものと同じアプリ IDデバイスを選択できますが、まだ作成していないため、App Store にアプリを提出する際に組織を識別するための配布証明書を作成する必要があります。 配布証明書の作成手順については、以下のセクションで説明します。

Note

配布証明書とプロビジョニング プロファイルを作成できるのは、チーム エージェントと管理者のみです。

配布証明書の作成

  1. Apple Developer Member Center の [Certificates, Identifiers & Profiles]\(証明書、ID、およびプロファイル\) セクションに移動します。

  2. [Certificates]\(証明書\) の下で [Production]\(運用\) を選択します。

  3. + ボタンをクリックして、新しい証明書を作成します。

  4. [Production]\(運用\) の見出しの下で [App Store and Ad Hoc]\(App Store およびアドホック\) を選択します。

    Select App Store and Ad Hoc

  5. [Continue]\(続行\) をクリックし、指示に従って Keychain Access を使用して証明書署名要求を作成します。

    Create a Certificate Signing Request via Keychain Access

  6. 指示どおりに CSR を作成したら、[Continue]\(続行\) をクリックし、CSR を Member Center にアップロードします。

    Upload the CSR to the Member Center

  7. [Generate]\(生成\) をクリックして証明書を作成します。

  8. 最後に、完成した証明書をダウンロードし、ファイルをダブルクリックしてインストールします。

  9. この時点で、証明書はコンピューターにインストールされますが、場合によっては、プロファイルを更新して、Xcode で表示されるようにする必要があります。

または、Xcode の [Preferences]\(環境設定\) ダイアログを使用して証明書を要求することができます。 これを行うには、次の手順に従います。

  1. チームを選択し、[証明書の管理...] をクリックします: Select the team and View Details

  2. 次に、[iOS Distribution Certificate]\(iOS 配布証明書\) の横の [作成] ボタンをクリックします: Create an iOS Distribution Certificate

  3. チーム権限に応じて、次のように署名 ID が生成されます。チーム エージェントまたは管理者が承認するまで待機する必要がある場合もあります: The signing identity will be generated and a dialog displayed

配布プロファイルの作成

アプリ ID の作成

作成する他のプロビジョニング プロファイルと同じように、ユーザーのデバイスに配布するアプリを識別するためにアプリ ID が必要になります。 ID をまだ作成していない場合は、次の手順に従って作成します。

  1. Apple Developer Center[Certificate, Identifiers and Profiles]\(証明書、ID、およびプロファイル\) セクションを参照します。 [Identifiers]\(ID\) の下で [App IDs]\(App ID\) を選択します。
  2. + ボタンをクリックして、ポータルで識別するための名前を指定します。
  3. アプリのプレフィックスは、チーム ID として既に設定されており、変更できません。 明示的またはワイルドカード アプリ ID を選択し、次のように逆引き DNS 形式でバンドル ID を入力します。
    • 明示的: com.[DomainName].[AppName]
    • ワイルドカード: com.[DomainName].*
  4. アプリで必要な任意の App Services を選択します。
  5. [Continue]\(続行\) ボタンをクリックし、画面の指示に従って新しいアプリ ID を作成します。

プロビジョニング プロファイルの作成

配布プロファイルを作成するのに必要なコンポーネントがそろったら、次の手順に従って配布プロファイルを作成します。

  1. Apple Provisioning ポータルに戻り、[Provisioning]\(プロビジョニング\)>[Distribution]\(配布\) の順に選択します。

    RSelect Provisioning > Distribution

  2. + ボタンをクリックし、App Store として作成する配布プロファイルの種類を選択します。

    Create an App Store distribution profile

  3. [Continue]\(続行\) ボタンをクリックし、配布プロファイルを作成するアプリ ID をドロップダウン リストから選択します。

    Select App ID from the dropdown list

  4. [Continue]\(続行\) ボタンをクリックし、アプリケーションに署名するために必要な証明書を選択します。

    Select the certificate required to sign the application

  5. [Continue]\(続行\) ボタンをクリックし、Xamarin.iOS アプリケーションを実行できるようにする iOS を選択します。

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

  6. [Continue]\(続行\) ボタンをクリックし、新しい配布プロファイルの名前を入力します。

    Enter a Name for the new Distribution Profile

  7. [Generate]\(生成\) ボタンをクリックし、新しいプロファイルを作成してプロセスを終了します。

Visual Studio for Mac で新しい配布プロファイルを使用可能にするには、Visual Studio for Mac を終了し、(「Requesting Signing Identities」 (署名 ID の要求) セクションの手順に従って) Xcode で使用可能な署名 ID とプロビジョニング プロファイルのリストを更新する必要があります。

Xamarin.iOS プロジェクトでの配布プロファイルの選択

iTunes App Store の販売向けの Xamarin.iOS アプリケーションの最終ビルドを行う準備ができたら、作成済みの配布プロファイルを選択します。

Visual Studio for Mac で、次の操作を行います。

  1. ソリューション エクスプローラーでプロジェクト名をダブルクリックして、編集用に開きます。

  2. [iOS バンドル署名] を選択し、[構成] ドロップダウン リストから [Release | iPhone]\(リリース | iPhone\) を選択します。

    Select Release | iPhone from the Configuration dropdown

  3. ほとんどの場合、[署名 ID][プロビジョニング プロファイル] は既定値の [自動] のままにしておいてかまいません。Visual Studio for Mac は、Info.plist のバンドル識別子に従って適切なプロファイルを選択します。

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

  4. 必要に応じて、ドロップダウン リストから署名 ID と配布プロファイル (前の手順で作成したもの) を選択します。

    Select the Signing Identity and Distribution Profiles

  5. [OK] ボタンをクリックして、変更を保存します。

iTunes Connect でのアプリケーションの構成

アプリケーションが正常にプロビジョニングされたら、次の手順では、特に、App Store で iOS アプリケーションを管理するための一連の Web ベース ツールである、iTunes Connect でアプリを構成します。

Xamarin.iOS アプリケーションをレビューのために Apple に提出し、最終的に App Store で販売または無償アプリとしてリリースする前に、アプリケーションを正しく設定して、iTunes Connect で構成する必要があります。

詳細については、「Configuring an App in iTunes Connect」 (iTunes Connect でのアプリの構成) ドキュメントを参照してください。

ITunes Connect へのアプリの提出

配布プロビジョニング プロファイルを使用してアプリケーションが署名され、iTunes Connect でアプリが作成されると、アプリケーション バイナリがレビューのために Apple にアップロードされます。 Apple で正常にレビューされると、App Store で使用できるようになります。

App Store へのアプリケーションの発行の詳細については、「App Store に発行する」を参照してください。

.app バンドルを自動的に Windows にコピーする

Visual Studio や Mac Build エージェントで iOS アプリをビルドするとき、.app バンドルは Windows マシンにコピーされません。 Visual Studio 7.4 用の Xamarin ツールでは新たに CopyAppBundle プロパティが加わりました。このプロパティによって CI ビルドは .app バンドルを Windows にコピーできます。

この機能を利用するには、この機能を適用するプロパティ グループの下で .csproj に CopyAppBundle プロパティを追加します。 たとえば、次の例では、iPhoneSimulator をターゲットにするデバッグ ビルドのために .app バンドルを Windows コンピューターにコピーする方法を確認できます。

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

まとめ

ここでは、App Store で Xamarin.iOS アプリケーションを配布するための準備を行う際に重要なコンポーネントについて説明します。