アドホック配布用の iOS アプリを発行する

アドホック配布は、主に幅広いユーザー グループ内のアプリのテストに使用され、Apple Developer Program と Apple Developer Enterprise Program で利用できます。 アドホック配布のもう 1 つのユース ケースは、App Store Connect がオプションではない場合の社内での配布です。

アドホック配布には、Apple Configurator を使用してアプリをインストールすることで、App Store の承認を必要としないという利点があります。 ただし、開発と配布の両方で、メンバーシップ年あたり 100 台のデバイスに制限されており、デバイスを Apple Developer アカウントに追加する必要があります。

iOS アプリを配布するには、プロビジョニング プロファイルを使用してアプリをプロビジョニングする必要があります。 プロビジョニング プロファイルは、コード署名情報だけでなく、アプリケーションの ID と使用する配布メカニズムも含むファイルです。

.NET マルチプラットフォーム アプリ UI (.NET MAUI) iOS アプリを配布するには、それに固有の配布プロビジョニング プロファイルを構築する必要があります。 このプロファイルを使用すると、アプリをリリース用にデジタル署名して、iOS デバイスにインストールできるようになります。 アドホック配布プロビジョニング プロファイルには、アプリ ID、配布証明書、アプリをインストールできるデバイスの一覧が含まれます。 テスト用にアプリをデバイスにデプロイしたときと同じアプリ ID を使用できます。 ただし、配布証明書がまだない場合は、自分または組織を識別するための配布証明書を作成する必要があります。

アドホック配布プロビジョニング プロファイルを作成するプロセスは次のとおりです。

  1. 配布する証明書の作成 詳細については、「配布証明書を作成する」を参照してください。
  2. Apple Developer Account にデバイスを追加します。 詳細については、「デバイスの追加」を参照してください
  3. アプリ ID を作成する 詳細については、「アプリ ID を作成する」を参照してください。
  4. プロビジョニング プロファイルを作成します。 詳細については、「プロビジョニング プロファイルの作成」を参照してください。

配布する証明書の作成

配布証明書は、ID を確認するために使用されます。 ディストリビューション証明書を作成する前に、Apple Developer アカウントを Visual Studio に追加していることを確認する必要があります。 詳細については、「Apple アカウントの管理」をご覧ください。

配布証明書を作成する必要があるのは、まだ作成していない場合のみです。 ディストリビューション証明書は、Apple Developer アカウントの Apple ID を使用して作成する必要があります。

配布証明書を作成するには:

  1. Visual Studio で、[ツール > オプション>] Xamarin > Apple アカウントに移動します
  2. [Apple Developer Accounts]\(Apple 開発者アカウント\) ダイアログでチームを選択し、[View Details...]\(詳細の表示\)ボタンをクリックします。
  3. [詳細] ダイアログで、[証明書作成] をクリックし、[iOS ディストリビューション] を選択します。 正しいアクセス許可を持っている場合は、新しい署名 ID が作成され、Apple と同期されます。

重要

IDE がペアリングされている場合、署名 ID を構成する秘密キーと証明書も Mac ビルド ホストのキーチェーン アクセスにエクスポートされます。 詳細については、「iOS 開発のための Mac とのペアリング」をご覧ください。

証明書キー ペアについて

ディストリビューション プロファイルには、証明書、関連付けられているキー、および Apple Developer アカウントに関連付けられているプロビジョニング プロファイルが含まれています。 ディストリビューション プロファイルには 2 つのバージョンがあります。1 つは Apple Developer アカウントに存在し、もう 1 つはローカル コンピューターに存在します。 2 つの違いは、含まれるキーの種類です。Apple Developer Account のプロファイルには証明書に関連付けられているすべての公開キーが含まれますが、ローカル コンピューター上のコピーにはすべての秘密キーが含まれています。 証明書を有効にするには、キーペアが一致している必要があります。

警告

証明書と関連付けられているキーを失うと、既存の証明書を失効させ、プロビジョニング プロファイルを再作成する必要があるため、非常に混乱を招く可能性があります。

配布プロファイルの作成

アドホック配布プロビジョニング プロファイルを使用すると、.NET MAUI iOS アプリをリリース用にデジタル署名できるため、特定の iOS デバイスにインストールできます。 アドホック配布プロビジョニング プロファイルには、アプリ ID、配布証明書、アプリをインストールできるデバイスの一覧が含まれます。 サポートするデバイスは、Xcode でサポートされているバージョンの iOS を実行している必要があります。

デバイスを追加する

プロビジョニング プロファイルを作成するときは、アプリを実行できるデバイスをプロファイルに含める必要があります。 プロビジョニング プロファイルに追加するデバイスを選択する前に、まず Apple Developer アカウントにデバイスを追加する必要があります。 次の手順でデバイスを追加できます。

  1. ローカル Mac にプロビジョニングするデバイスを USB ケーブルで接続します。

  2. Xcode を開き、ウィンドウ > デバイスとシミュレーターに移動します

  3. Xcode で、[デバイス] タブを選択し、接続されているデバイスの一覧からデバイスを選択します。

  4. Xcode で、識別子の値をクリップボードにコピーします。

    Xcode devices and simulator window with the iOS identifier string location highlighted.

  5. Web ブラウザーで、Apple Developer Account の [デバイス] セクションに移動し、+ ボタンをクリックします。

  6. [新しいデバイスの登録] ページで、適切なプラットフォームを設定し、新しいデバイスの名前を指定します。 次に、クリップボードの識別子をデバイス ID (UDID) フィールドに貼り付け、[続行] をクリックします

    Register a device by naming it and entering its unique device identifier.

  7. [新しいデバイスの登録] ページで情報を確認し、[登録] をクリックします

.NET MAUI iOS アプリをデプロイする iOS デバイスについて、前の手順を繰り返します。

アプリ ID を作成する

配布するアプリを識別するには、アプリ ID が必要です。 アプリ ID は逆引き DNS 文字列に似ています。これはアプリを一意に識別するもので、アプリのバンドル識別子と同じである必要があります。 テスト用にアプリをデバイスにデプロイしたときと同じアプリ ID を使用できます。

アプリ ID には 2 種類あります。

  • ワイルドカード。 ワイルドカード アプリ ID を使用すると、1 つのアプリ ID を使用して複数のアプリを照合できます。通常は com.domainname.* の形式を使用します。 ワイルドカード アプリ ID を使用して、複数のアプリを配布できます。アプリ固有の機能を有効にしないアプリに使用する必要があります。
  • 明示。 明示的なアプリ ID は、1 つのアプリに対して一意であり、通常は com.domainname.myid の形式を使用します。 明示的なアプリ ID を使用して、バンドル識別子が一致する 1 つのアプリを配布できます。 明示的なアプリ ID は、通常、Apple Pay や Game Center などのアプリ固有の機能を有効にするアプリに使用されます。 機能の詳細については、「機能」をご覧ください。

新しいアプリ ID の作成方法:

  1. Apple 開発者アカウントで、証明書、ID、プロファイルに 移動します

  2. [証明書]、[識別子]、[プロファイル] ページで、[識別子] タブを選択します。

  3. [識別子] ページで 、ボタンを + クリックして新しいアプリ ID を作成します。

  4. [新しい識別子の登録] ページで、[続行] ボタンをクリックする前に、[アプリ ID] ラジオ ボタンを選択します。

    Create an App ID.

  5. [新しい識別子の登録] ページで、[続行] ボタンをクリックする前に [アプリ] を選択します。

    Register an App ID.

  6. [アプリ ID の登録] ページで説明を入力し、[明示的] または [ワイルドカード] バンドル ID ラジオ ボタンを選択します。 次に、アプリのバンドル ID を逆引き DS 形式で入力します。

    Specify the bundle identifier for the app.

    重要

    入力するバンドル ID は、アプリ プロジェクトの Info.plist ファイルのバンドル識別子に対応している必要があります。

    .NET MAUI アプリのバンドル識別子は、アプリケーション ID プロパティとしてプロジェクト ファイルに格納されます。

    • Visual Studio では、ソリューション エクスプローラーで、.NET MAUI アプリ プロジェクトを右クリックし、[プロパティ] を選択します。 次に、[MAUI 共有]> [全般] タブに移動します。"アプリケーション ID" フィールドにバンドル識別子が一覧表示されます。
    • Visual Studio for Mac のソリューション ウィンドウで、.NET MAUI アプリ プロジェクトを右クリックし、[プロパティ] を選択します。 次に、[プロジェクトのプロパティ] ウィンドウで、[ビルド]> [アプリ情報] タブを選択します。"アプリケーション ID" フィールドにバンドル識別子が一覧表示されます。

    "アプリケーション ID" フィールドの値が更新されると、Info.plistバンドル識別子の値が自動的に更新されます。

  7. [アプリ ID の登録] ページで、アプリで使用する機能を選択します。 すべての機能は、このページとアプリ プロジェクトの Entitlements.plist ファイルの両方で構成する必要があります。 詳細については、「機能」と「エンタイトルメント」をご覧ください。

  8. [アプリ ID の登録] ページで、[続行] ボタンをクリックします。

  9. [アプリ ID の確認] ページで、[登録] ボタンをクリックします。

プロビジョニング プロファイルを作成する

アプリ ID が作成されたら、配布プロビジョニング プロファイルを作成する必要があります。 このプロファイルを使用すると、アプリをリリース用にデジタル署名して、iOS デバイスにインストールできるようになります。

アドホック配布のプロビジョニング プロファイルを作成するには:

  1. Apple Developer Account の [Certificates, Identifiers & Profiles]\(証明書、識別子、プロファイル\) ページで、[Profiles]\(プロファイル\) タブを選択します。

  2. [プロファイル] タブで、[+] ボタンをクリックして新しいプロファイルを作成します。

  3. [新しいプロビジョニング プロファイルの登録] ページで、[続行] ボタンをクリックする前に [アドホック] ラジオ ボタンを選択します。

    Register a provisioning profile for ad hoc distribution.

  4. [プロビジョニング プロファイルの生成] ページの [アプリ ID] ドロップダウンで、前に作成したアプリ ID を選択し、[続行] ボタンをクリックする前にオフライン プロファイルを作成するかどうかを選択します。

    Select your App ID.

  5. [プロビジョニング プロファイルの生成] ページで、配布証明書に対応するラジオ ボタンを選択してから、[続行] ボタンをクリックします。

    Select your distribution certificate.

  6. [プロビジョニング プロファイルの生成] ページで、アプリがインストールされるデバイスを選択し、[続行] ボタンをクリックします。

    Screenshot of adding a device to a provisioning profile.

  7. [プロビジョニング プロファイルの生成] ページで、[生成] ボタンをクリックする前にプロビジョニング プロファイルの名前を入力します。

    Generate the provisioning profile.

    Note

    プロビジョニング プロファイル名は、アプリの署名時に必要になりますので、メモしておきます。

  8. [プロビジョニング プロファイルの生成] ページで、必要に応じて [ダウンロード] ボタンをクリックしてプロビジョニング プロファイルをダウンロードします。

    Note

    プロビジョニング プロファイルを今すぐダウンロードする必要はありません。 代わりに、Visual Studio でこれを行います。

プロビジョニング プロファイルを Visual Studio にダウンロードする

Apple Developer アカウントでディストリビューション プロビジョニング プロファイルを作成した後、Visual Studio はそれをダウンロードして、アプリに署名できるようにします。

  1. Visual Studio で、[ツール > オプション>] Xamarin > Apple アカウントに移動します
  2. [Apple Developer Accounts]\(Apple 開発者アカウント\) ダイアログで、チームを選択し、[View Details]\(詳細の表示\) をクリックします
  3. [詳細] ダイアログで、[プロビジョニング プロファイル] の一覧に新しいプロファイルが表示されることを確認します。 場合によって Visual Studio を再起動して、リストを最新の情報に更新する必要があります。
  4. [詳細] ダイアログで、[すべてのプロファイルのダウンロード] をクリックします

プロビジョニング プロファイルは Windows にダウンロードされ、IDE がペアリングされている場合は Mac ビルド ホストにエクスポートされます。 詳細については、「iOS 開発のための Mac とのペアリング」をご覧ください。

アプリの発行

Visual Studio では、アドホック配布用の .NET MAUI iOS アプリを発行できます。 コマンド ライン インターフェイス (CLI) を使用して iOS アプリを発行する方法については、「コマンド ラインを使用した iOS アプリの発行」を参照してください

  1. Visual Studio で、IDE が Mac ビルド ホストとペアリングされていることを確認します。 詳細については、「Xamarin.iOS 開発のための Mac とのペアリング」を参照してください。

  2. Visual Studio のツール バーで、[デバッグ ターゲット] ドロップダウンを使用して、iOS リモート デバイスとリモート デバイス選択します。

    Select your remote device in Visual Studio.

  3. Visual Studio のツール バーで、[ソリューション構成] ドロップダウンを使用して、デバッグ構成からリリース構成に変更します。

    Select the release configuration in Visual Studio.

  4. ソリューション エクスプローラーで、.NET MAUI アプリ プロジェクトを右クリックし、[プロパティ] を選択します。 次に、iOS バンドル署名タブに移動し、スキームが手動プロビジョニング設定され署名 ID がディストリビューション (自動)設定され、プロビジョニング プロファイルが自動設定されていることを確認します。

    Screenshot of bundle signing tab for iOS in Visual Studio.

    これらの設定により、Info.plist のバンドル識別子 (プロジェクト ファイル内のアプリケーション ID プロパティの値と同じ) に基づいて、Visual Studio によって正しいプロビジョニング プロファイルが選択されるようになります。 または、署名 ID を適切な配布証明書に設定し、プロビジョニング プロファイルを Apple Developer アカウントで作成したプロファイルに設定します。

  5. ソリューション エクスプローラーで、.NET MAUI アプリ プロジェクトを右クリックし、[発行...] を選択します。

    Select the publish menu item in Visual Studio.

    アーカイブ マネージャーが開き、Visual Studio によってアプリ バンドルのアーカイブが開始されます。

    Screenshot of the archive manager in Visual Studio.

    アーカイブ プロセスは、選択したソリューション構成の [iOS バンドル署名] タブで 指定した証明書とプロビジョニング プロファイルを使用してアプリに署名 します。

  6. アーカイブ マネージャーで、アーカイブが正常に完了したら、アーカイブが選択されていることを確認し、[配布] ボタンを選択して、配布用にアプリをパッケージ化するプロセスを開始します。

    Screenshot of the archive manager in Visual Studio once archiving is complete.

    [ 配布 - チャネル の選択] ダイアログが表示されます。

  1. [分散 - チャネル選択] ダイアログで、[アドホック] ボタンを選択します。

    Screenshot of selecting a distribution channel in the distribution dialog.

  2. [配布 - 署名 ID] ダイアログで、署名 ID とプロビジョニング プロファイルを選択します。

    Screenshot of selecting a signing identity in the distribution dialog.

    Note

    アプリ用に作成された署名 ID とプロビジョニング プロファイルと、選択した配布チャネルを使用する必要があります。

  3. [配布 - 署名 ID] ダイアログで、[名前を付けて保存] ボタンを選択し、ファイル名を入力します。 その後、アプリは再署名され、ファイル システム上の .ipa ファイルに発行されます。

その後、Apple Configurator を使用してアプリを配布できます。 詳細については、support.apple.com の「Apple Configurator ユーザー ガイド」をご覧ください。