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
配布証明書とプロビジョニング プロファイルを作成できるのは、チーム エージェントと管理者のみです。
配布証明書の作成
Apple Developer Member Center の [Certificates, Identifiers & Profiles]\(証明書、ID、およびプロファイル\) セクションに移動します。
[Certificates]\(証明書\) の下で [Production]\(運用\) を選択します。
+ ボタンをクリックして、新しい証明書を作成します。
[Production]\(運用\) の見出しの下で [App Store and Ad Hoc]\(App Store およびアドホック\) を選択します。
[Continue]\(続行\) をクリックし、指示に従って Keychain Access を使用して証明書署名要求を作成します。
指示どおりに CSR を作成したら、[Continue]\(続行\) をクリックし、CSR を Member Center にアップロードします。
[Generate]\(生成\) をクリックして証明書を作成します。
最後に、完成した証明書をダウンロードし、ファイルをダブルクリックしてインストールします。
この時点で、証明書はコンピューターにインストールされますが、場合によっては、プロファイルを更新して、Xcode で表示されるようにする必要があります。
または、Xcode の [Preferences]\(環境設定\) ダイアログを使用して証明書を要求することができます。 これを行うには、次の手順に従います。
次に、[iOS Distribution Certificate]\(iOS 配布証明書\) の横の [作成] ボタンをクリックします:
チーム権限に応じて、次のように署名 ID が生成されます。チーム エージェントまたは管理者が承認するまで待機する必要がある場合もあります:
配布プロファイルの作成
アプリ ID の作成
作成する他のプロビジョニング プロファイルと同じように、ユーザーのデバイスに配布するアプリを識別するためにアプリ ID が必要になります。 ID をまだ作成していない場合は、次の手順に従って作成します。
- Apple Developer Center で [Certificate, Identifiers and Profiles]\(証明書、ID、およびプロファイル\) セクションを参照します。 [Identifiers]\(ID\) の下で [App IDs]\(App ID\) を選択します。
- + ボタンをクリックして、ポータルで識別するための名前を指定します。
- アプリのプレフィックスは、チーム ID として既に設定されており、変更できません。 明示的またはワイルドカード アプリ ID を選択し、次のように逆引き DNS 形式でバンドル ID を入力します。
- 明示的: com.[DomainName].[AppName]
- ワイルドカード: com.[DomainName].*
- アプリで必要な任意の App Services を選択します。
- [Continue]\(続行\) ボタンをクリックし、画面の指示に従って新しいアプリ ID を作成します。
プロビジョニング プロファイルの作成
配布プロファイルを作成するのに必要なコンポーネントがそろったら、次の手順に従って配布プロファイルを作成します。
Apple Provisioning ポータルに戻り、[Provisioning]\(プロビジョニング\)>[Distribution]\(配布\) の順に選択します。
+ ボタンをクリックし、App Store として作成する配布プロファイルの種類を選択します。
[Continue]\(続行\) ボタンをクリックし、配布プロファイルを作成するアプリ ID をドロップダウン リストから選択します。
[Continue]\(続行\) ボタンをクリックし、アプリケーションに署名するために必要な証明書を選択します。
[Continue]\(続行\) ボタンをクリックし、Xamarin.iOS アプリケーションを実行できるようにする iOS を選択します。
[Continue]\(続行\) ボタンをクリックし、新しい配布プロファイルの名前を入力します。
[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 で、次の操作を行います。
ソリューション エクスプローラーでプロジェクト名をダブルクリックして、編集用に開きます。
[iOS バンドル署名] を選択し、[構成] ドロップダウン リストから [Release | iPhone]\(リリース | iPhone\) を選択します。
ほとんどの場合、[署名 ID] と [プロビジョニング プロファイル] は既定値の [自動] のままにしておいてかまいません。Visual Studio for Mac は、Info.plist のバンドル識別子に従って適切なプロファイルを選択します。
必要に応じて、ドロップダウン リストから署名 ID と配布プロファイル (前の手順で作成したもの) を選択します。
[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 アプリケーションを配布するための準備を行う際に重要なコンポーネントについて説明します。