次の方法で共有


Android 用 Xamarin アプリの構築

重要

Visual Studio App Center は、2025 年 3 月 31 日に廃止される予定です。 完全に廃止されるまで Visual Studio App Center を引き続き使用できますが、移行を検討できる推奨される代替手段がいくつかあります。

サポートタイムラインと代替手段の詳細については、こちらを参照してください。

最初の Xamarin Android アプリのビルドを開始するには、次の操作を行う必要があります。

  1. リポジトリ サービス アカウント (GitHub、Bitbucket、VSTS、Azure DevOps) に接続します。
  2. アプリが保存されているリポジトリとブランチを選択します。
  3. ビルドする Android プロジェクトを選択します。
  4. 最初のビルドを設定します。

注意

アプリを実際のデバイスで実行するには、有効な KeyStore を使用してビルドに署名する必要があります。

1. リポジトリのリンク

リポジトリ サービス アカウントに以前に接続していない場合は、まずこれを行う必要があります。 アカウントが接続されたら、Xamarin プロジェクトが配置されているリポジトリを選択します。 リポジトリのビルドを設定するには、管理者とプルのアクセス許可が必要です。

2. ブランチの選択

リポジトリを選択したら、ビルドするブランチを選択します。 既定では、App Center にはすべてのアクティブなブランチが一覧表示されます。

3. ビルドの構成

Xamarin プロジェクトは、最初のビルドの前に構成する必要があります。

3.1. ビルド トリガー

既定では、ビルド サービスは継続的インテグレーションを使用するため、開発者が構成されたブランチにプッシュするたびに新しいビルドがトリガーされます。 新しいビルドを手動でトリガーする場合は、構成ウィンドウでこの設定を変更できます。

3.2. プロジェクトと構成

リポジトリで使用可能なプロジェクトは、分析範囲内にある場合に設定されます。 Android ビルドに適したプロジェクトを選択し、適切な構成を選択します。

注意

最適なパフォーマンスを得るために、分析は現在、リポジトリのルートを含む 4 つのディレクトリ レベルに制限されています。

3.3 Mono バージョン

App Center では、ビルドに対応する Xamarin.Android SDK にバンドルされているさまざまな Mono 環境を使用できます。 これにより、下位互換性が維持され、最新の機能もサポートされます。 新しいブランチ構成の既定の Mono バージョンは、最新の安定した構成です。 以前の Mono 環境のいずれかを使用して、古いバージョンのフレームワークまたはライブラリをビルドすることもできます。

ビルド構成で Mono バージョンを選択すると、バンドルされた Xamarin.Android SDK バージョンがすぐ横に表示されます。 Xamarin SDK バージョンの更新プログラムの詳細については、 Xamarin リリース ブログを参照してください。

3.3.1. .NET Core バージョン

ビルドに使用される Mono バージョンに基づいて適切な .NET Core バージョンが自動的に選択され、上書きすることはできません。 次の表に、サービスで使用される .NET Core への Mono のマッピングを表示できます。

Mono .NET Core
<= 5.18 2.2.105
6.0 2.2.300
6.4 3.0.100
6.6 3.1.100
6.8 3.1.200
6.10 3.1.300
6.12 3.1.401

3.4. Android アプリ バンドルのビルド (.aab)

Android アプリ バンドルは、特定のデバイス用に最適化された API を生成するために使用される配布形式です。 Play ストアにアップロードできます。 Android アプリ バンドルの詳細については、 Android の公式ドキュメントXamarin.Android 9.4 のリリース ノートを参照してください。これは、通常のバンドルと共にバンドルを構築するかどうかを決定するのにも役立ちます .apk.

Android アプリ バンドルで と を生成するオプションを.aab.apkオンに切り替えます。 ファイルに .csproj プロパティがAndroidPackageFormat含まれているaab場合、このオプションは自動的にオンに切り替わります。 .aabのビルドは、Xamarin.Android 9.4 以降でサポートされています。

3.5. バージョン番号の増分

有効にすると、アプリの AndroidManifest.xml のバージョン コードがビルドごとに自動的にインクリメントされます。 変更はビルド前に行われ、リポジトリにコミットされません。

3.6. コード署名

ビルドが成功すると、ファイルと追加.aabのファイルが生成.apkされます (有効な場合)。 ビルドを Play ストアにリリースするには、有効なキーストアとエイリアスで署名する必要があります。 ブランチから生成されたビルドに署名するには、構成ウィンドウでコード署名を有効にし、キーストアをアップロードして、構成ウィンドウに必要な値を指定します。 詳細 なコード署名手順を読むことができます。 は .aab と同じ資格情報 .apkを使用して署名されます。

3.7. 実際のデバイスで成功したビルドを起動する

新しく生成された .apk ファイルを使用して、アプリが実際のデバイスで起動するかどうかをテストします。 これにより、合計ビルド時間に約 10 分が追加されます。 詳細については、 テスト統合ガイドを参照してください

3.8. NuGet の復元

ファイルが NuGet.config リポジトリにチェックインされ、ファイルの横 .sln またはリポジトリのルート レベルにある場合、App Center では、次の例に示すように、プライベート NuGet フィードが追加されたときに復元されます。 資格情報は、 環境変数を使用して安全に追加できます。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget" value="https://api.nuget.org/v3/index.json" />
    <add key="MyGet" value="https://www.myget.org/F/MyUsername/api/v2/index.json" />
    <add key="MyAuthNuget" value="https://nuget.example.com/v2/index.json" />
  </packageSources>
  <activePackageSource>
    <add key="All" value="(Aggregate source)" />
  </activePackageSource>
  <packageSourceCredentials>
    <MyAuthNuget>
      <add key="Username" value="$USER_VARIABLE" />
      <add key="ClearTextPassword" value="$PASSWORD_VARIABLE" />
    </MyAuthNuget>
  </packageSourceCredentials>
</configuration>

複雑な構成があり、詳細が必要な場合は、「 NuGet の動作の構成」を参照してください。

3.9. ビルドを配布する

ブランチから正常にビルドされるたびに、以前に作成した配布グループまたはストアの宛先に配布するように構成できます。 新しい配布グループを追加することも、配布サービス内から ストア接続を構成 することもできます。 アプリにアクセスできるすべてのユーザーを含む、"コラボレーター" という既定の配布グループが常に存在します。

注意

Google Play ストアに配布する場合は、Android アプリ バンドル (.aab) が推奨され、有効になっている場合は配布されます。 App Center 配布グループとIntuneストアの宛先の場合、 も生成された場合.aabでも通常.apkのが使用されます。

4. ビルド結果

ビルド トリガーが発生すると、ビルドは次のいずれかの状態になります。

  • queued - ビルドは、リソースが解放されるのを待機しているキューにあります。
  • building - ビルドが実行されています。
  • succeeded - ビルドが正常に完了しました。
  • failed - ビルドが失敗して停止しました。 ビルド ログをダウンロードして調べることで、問題のトラブルシューティングを行うことができます。
  • canceled - ユーザー アクションによってビルドが取り消されたか、タイムアウトしました。

4.1. ビルド ログ

完了したビルド (成功または失敗) の場合は、ログをダウンロードして、ビルドの実行方法の詳細を理解します。 App Center には、次のファイルを含むアーカイブが用意されています。

|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
    |-- <build-step-1>
    |-- <build-step-2>
    |--
    |-- <build-step-n> (e.g. n_Post Job Cleanup.txt)

ビルド ステップ ログ (アーカイブのディレクトリにあります build/ ) は、どのステップでビルドが失敗したのかを理解するのに役立ちます。

4.2. アプリ (.apk)

ファイルは .apk 、Android アプリを格納する Android アプリケーション パッケージ ファイルです。 ビルドが正しく署名されている場合は、ファイルを実際の .apk デバイスにインストールし、Play ストアに展開できます。 ビルドに署名されていない場合、アプリはエミュレーターで実行することも、他の目的で使用することもできます。

サポートされているバージョンと要件

App Center では、ポータブル クラス ライブラリ (PCL) および .NET Standard プロジェクトがサポートされています。 .NET Standard のバージョンについては、 クラウド ビルド マシン に関するページを参照してください。

App Center は Xamarin コンポーネント ストアのコンポーネントをサポートしていないため、使用可能な場合は常に NuGet パッケージを使用することをお勧めします。 交換できないコンポーネントを使用している場合は、お問い合わせください。 ヘルプとフィードバックを参照してください。