Android Device Manager による仮想デバイスの管理

この記事では、Android Device Manager を使って、Android の物理デバイスをエミュレートする Android 仮想デバイス (AVD) を作成し、構成する方法を説明します。 仮想デバイスを使うと、物理デバイスがなくてもアプリを実行してテストすることができます。

ハードウェアの高速化が有効になっていることを確認した後は (「エミュレーター パフォーマンスのためのハードウェア高速化」を参照)、Android Device Manager (Xamarin Android Device Manager ともいう) を使って、アプリのテストとデバッグで使用できる仮想デバイスを作成します。

Windows 上の Android Device Manager

この記事では、Android Device Manager を使って、Android 仮想デバイスを作成、複製、カスタマイズ、起動する方法について説明します。

Screenshot of the Android Device Manager in the Devices tab

Android Emulator で実行する Android 仮想デバイス (AVD) を作成および構成するには、Android Device Manager を使います。 各 AVD は、物理的な Android デバイスをシミュレートするエミュレーター構成です。 これにより、異なる物理 Android デバイスをシミュレートするさまざまな構成でアプリを実行してテストすることができます。

要件

Android Device Manager を使用するには、次の項目が必要です。

  • Visual Studio 2019 Community、Professional、または Enterprise。

  • または、Visual Studio 2017 バージョン 15.8 以降が必要です。 Visual Studio Community、Professional、Enterprise Edition がサポートされています。

  • Visual Studio Tools for Xamarin バージョン 4.9 以降。

  • Android SDK をインストールする必要があります (「Xamarin.Android 向け Android SDK を設定する」を参照)。 Android SDK がまだインストールされていない場合は、既定の場所 (C:\Program Files (x86)\Android\android-sdk) にインストールします。

  • (Android SDK Manager を使用して) 次のパッケージをインストールする必要があります。

    • Android SDK Tools バージョン 26.1.1 以降
    • Android SDK Platform-Tools 27.0.1 以降
    • Android SDK Build Tools 27.0.3 以降
    • Android Emulator 27.2.7 以降。

    これらのパッケージの状態は、次のスクリーンショットのように[インストール済み] と表示される必要があります。

    Installing Android SDK Tools

Device Manager の起動

[ツール] > [Android] > [Android デバイス マネージャー] の順にクリックし、[ツール] メニューから Android デバイス マネージャーを起動します。

Launching the Device manager from the Tools menu

起動時に次のエラー ダイアログが表示される場合は、「トラブルシューティング」セクションの回避策の説明をご覧ください。

Android SDK instance error dialog

メイン画面

Android Device Manager を初めて起動すると、現在構成されているすべての仮想デバイスが画面に表示されます。 仮想デバイスごとに名前OS (Android バージョン)、プロセッサメモリ サイズ、および画面の解像度が表示されます。

List of installed devices and their parameters

一覧のデバイスを選択すると、右側に [Start]\(開始\) ボタンが表示されます。 [Start]\(開始\) ボタンをクリックして、この仮想デバイスのエミュレーターを起動できます。

Start button for a device image

選んだ仮想デバイスでエミュレーターが開始した後、[Start]\(開始\) ボタンは [Stop]\(停止\) ボタンに変わり、このボタンを使ってエミュレーターを停止できます。

Stop button for the running device

新しいデバイス

新しいデバイスを作成するには、[New]\(新規\) ボタン (画面の右上にあります) をクリックします。

New button for creating a new device

[New]\(新規\) をクリックすると、[New Device]\(新しいデバイス\) 画面が表示されます。

New Device screen of the Device Manager

[New Device]\(新しいデバイス)画面で新しいデバイスを構成するには、次の手順を実行します。

  1. デバイスの新しい名前を指定します。 次の例では、新しいデバイスに「Pixel_API_27」という名前を指定しています。

    Naming the new device

  2. [Base Device]\(ベース デバイス\) プルダウン メニューをクリックして、エミュレートする物理デバイスを選びます。

    Selecting the physical device to emulate

  3. [Processor]\(プロセッサ\) プルダウン メニューをクリックして、この仮想デバイスのプロセッサの種類を選択します。 [x86] を選択すると、エミュレーターでハードウェア高速化を使用できるので最高のパフォーマンスを達成できます。 [x86_64] オプションでもハードウェア高速化を利用しますが、[x86] よりやや遅くなります ([x86_64] は通常 64 ビット アプリのテストに使用されます)。

    Selecting the processor type

  4. [OS] プルダウン メニューをクリックして Android バージョン (API レベル) を選択します。 たとえば、API レベル 27 の仮想デバイスを作成するには、[Oreo 8.1 - API 27] を選択します。

    Selecting the Android version

    まだインストールされていない Android API レベルを選択すると、デバイス マネージャーの画面の下部に "A new device will be downloaded" (新しいデバイスがダウンロードされます) というメッセージが表示され、新しい仮想デバイスの作成時に必要なファイルがダウンロードされ、インストールされます。

    A new device image will be downloaded

  5. 仮想デバイスに Google Play 開発者サービス API を含める場合は、[Google API] オプションを有効にします。 Google Play ストア アプリを含めるには、[Google Play Store]\(Google Play ストア\) オプションを有効にします。

    Selecting Google Play Services and Google Play Store

    Google Play ストアのイメージは、Pixel、Pixel 2、Nexus 5、Nexus 5 X などの一部の基本デバイスの種類でのみ使用できる点に注意してください。

  6. 変更する必要のあるプロパティを編集します。 プロパティを変更する場合は、「Android 仮想デバイス プロパティの編集」を参照してください。

  7. 明示的に設定する必要がある他のプロパティを追加します。 [New Device]\(新しいデバイス\) 画面には最もよく変更されるプロパティのみが表示されていますが、[Add Property]\(プロパティの追加\) プルダウン メニュー (下部) をクリックしてプロパティを追加できます。

    Add Property pull-down menu

    また、プロパティ一覧の上部にある [Custom...]\(カスタム\) を選択してカスタム プロパティを定義することもできます。

  8. 新しいデバイスを作成するには、[Create]\(作成\) ボタン (右下隅) をクリックします。

    Create button

  9. [ライセンスの同意] 画面が表示される場合があります。 ライセンス条項に同意する場合は、[Accept]\(同意する\) をクリックします。

    License Acceptance screen

  10. Android Device Manager により、インストールされている仮想デバイスのリストに新しいデバイスが追加されます。デバイスが作成されている間は、[Creating]\(作成中\) という進行状況のインジケーターが表示されます。

    Creation progress Indicator

  11. 作成プロセスが完了すると、新しいデバイスがインストール済み仮想デバイスのリストに [Start]\(開始\) ボタンと共に表示され、起動できる状態になります。

    Newly-created device ready to launch

デバイスの編集

既存の仮想デバイスを編集するには、デバイスを選んで、[Edit]\(編集\) ボタン (画面の右上隅にあります) をクリックします。

Edit button for modifying a device

[Edit]\(編集\) をクリックすると、選んだ仮想デバイスのデバイス エディターが起動します。

Device Editor screen

[Device Editor]\(デバイス エディター\) 画面では、[Property]\(プロパティ\) 列に仮想デバイスのプロパティが一覧表示され、[Value]\(値\) 列に各プロパティの対応する値が表示されます。 プロパティを選ぶと、そのプロパティの詳しい説明が右側に表示されます。

プロパティを変更するには、[Value]\(値\) 列の値を編集します。 たとえば、次のスクリーンショットでは、hw.lcd.density プロパティを 480 から 240 に変更しています。

Device Editing example

必要な構成の変更を行った後、[Save]\(保存\) ボタンをクリックします。 仮想デバイス プロパティの変更の詳細については、「Android 仮想デバイス プロパティの編集」を参照してください。

追加のオプション

右上隅の [その他のオプション] (…) プルダウン メニューから、デバイスの操作に関するその他のオプションを指定できます。

Location of additional options menu

その他のオプションのメニューには、次の項目が含まれます。

  • [複製して編集] – 現在選択しているデバイスを複製し、異なる一意の名前を付けて [新しいデバイス] 画面で開きます。 たとえば、[Pixel_API_27] を選択し、[Duplicate and Edit]\(複製して編集\) をクリックすると、名前にカウンターが追加されます。

    Duplicate and Edit screen

  • [エクスプローラーで表示] – 仮想デバイスのファイルが含まれるフォルダーを、Windows のエクスプローラー ウィンドウで開きます。 たとえば、[Pixel_API_27] を選択し、[Reveal in Explorer]\(エクスプローラーで表示\) をクリックすると、次の例のようなウィンドウが開きます。

    Results of clicking Reveal in Explorer

  • [出荷時の設定にリセット] - 選択したデバイスをその既定の設定にリセットし、デバイスの実行中にユーザーが行ったデバイスの内部状態に対する変更を消去します (現在のクイック ブートのスナップショットが存在する場合は、それも消去されます)。 仮想デバイスを作成または編集するときに行った変更は消去されません。 このリセットは元に戻すことができないという警告がダイアログ ボックスに表示されます。 [Factory Reset]\(出荷時の設定にリセット\) をクリックしてリセットを確定します。

    Factory Reset dialog

  • 削除: 選択した仮想デバイスを完全に削除します。 デバイスの削除は元に戻すことができないという警告がダイアログ ボックスに表示されます。 [Delete]\(削除\) をクリックして、デバイスを削除することを確認します。

    Delete device dialog

Note

M1 などの Apple チップを搭載した Mac を使用している場合は、GitHub から M1 プレビュー用の Android Emulator をインストールする必要があります。

macOS 上の Android Device Manager

この記事では、Android Device Manager を使って、Android 仮想デバイスを作成、複製、カスタマイズ、起動する方法について説明します。

Screenshot of the Android Device Manager in the Devices tab

Android Emulator で実行する Android 仮想デバイス (AVD) を作成および構成するには、Android Device Manager を使います。 各 AVD は、物理的な Android デバイスをシミュレートするエミュレーター構成です。 これにより、異なる物理 Android デバイスをシミュレートするさまざまな構成でアプリを実行してテストすることができます。

要件

Android Device Manager を使用するには、次の項目が必要です。

  • Visual Studio for Mac 7.6 以降。

  • Android SDK をインストールする必要があります (「Xamarin.Android 向け Android SDK を設定する」を参照)。

  • (Android SDK Manager を使用して) 次のパッケージをインストールする必要があります。

    • SDK Tools バージョン 26.1.1 以降
    • Android SDK Platform-Tools 28.0.1 以降
    • Android SDK Build-Tools 26.0.3 以降

    これらのパッケージの状態は、次のスクリーンショットのように[インストール済み] と表示される必要があります。

    Installing Android SDK Tools

Device Manager の起動

[ツール] > [デバイス マネージャー] の順にクリックし、Android デバイス マネージャーを起動します。

Launching the Device manager from the Tools menu

起動時に次のエラー ダイアログが表示される場合は、「トラブルシューティング」セクションの回避策の説明をご覧ください。

Screenshot shows the Android SDK instance error dialog box for troubleshooting information.

メイン画面

Android Device Manager を初めて起動すると、現在構成されているすべての仮想デバイスが画面に表示されます。 仮想デバイスごとに名前OS (Android バージョン)、プロセッサメモリ サイズ、および画面の解像度が表示されます。

List of installed devices and their parameters

一覧のデバイスを選択すると、右側に [Play]\(再生\) ボタンが表示されます。 [Play]\(再生\) ボタンをクリックして、この仮想デバイスのエミュレーターを起動できます。

Play button for a device image

選んだ仮想デバイスでエミュレーターが開始した後、[Play]\(再生\) ボタンは [Stop]\(停止\) ボタンに変わり、このボタンを使ってエミュレーターを停止できます。

Stop button for the running device

エミュレーターを停止するときに、次のクイック ブートのために現在の状態を保存するかどうかを確認するプロンプトが表示されることがあります。

Save current state for Quick Boot dialog

現在の状態を保存すると、この仮想デバイスが再び起動されたときにエミュレーターの起動が速くなります。 クイック ブートの詳細については、「クイック ブート」を参照してください。

新しいデバイス

新しいデバイスを作成するには、[New Device]\(新しいデバイス\) ボタン (画面の左上にあります) をクリックします。

New button for creating a new device

[New Device]\(新しいデバイス\) をクリックすると、[New Device]\(新しいデバイス\) 画面が表示されます。

New Device screen of the Device Manager

[New Device]\(新しいデバイス\) 画面で新しいデバイスを構成するには、次の手順のようにします。

  1. デバイスの新しい名前を指定します。 次の例では、新しいデバイスに「Pixel_API_27」という名前を指定しています。

    Naming the new device

  2. [Base Device]\(ベース デバイス\) プルダウン メニューをクリックして、エミュレートする物理デバイスを選びます。

    Selecting the physical device to emulate

  3. [Processor]\(プロセッサ\) プルダウン メニューをクリックして、この仮想デバイスのプロセッサの種類を選択します。 [x86] を選択すると、エミュレーターでハードウェア高速化を使用できるので最高のパフォーマンスを達成できます。 [x86_64] オプションでもハードウェア高速化を利用しますが、[x86] よりやや遅くなります ([x86_64] は通常 64 ビット アプリのテストに使用されます)。

    Selecting the processor type

  4. [OS] プルダウン メニューをクリックして Android バージョン (API レベル) を選択します。 たとえば、API レベル 27 の仮想デバイスを作成するには、[Oreo 8.1 - API 27] を選択します。

    Selecting the Android version

    まだインストールされていない Android API レベルを選択すると、デバイス マネージャーの画面の下部に "A new device will be downloaded" (新しいデバイスがダウンロードされます) というメッセージが表示され、新しい仮想デバイスの作成時に必要なファイルがダウンロードされ、インストールされます。

    A new device image will be downloaded

  5. 仮想デバイスに Google Play 開発者サービス API を含める場合は、[Google API] オプションを有効にします。 Google Play ストア アプリを含めるには、[Google Play Store]\(Google Play ストア\) オプションを有効にします。

    Selecting Google Play Services and Google Play Store

    Google Play ストアのイメージは、Pixel、Pixel 2、Nexus 5、Nexus 5 X などの一部の基本デバイスの種類でのみ使用できる点に注意してください。

  6. 変更する必要のあるプロパティを編集します。 プロパティを変更する場合は、「Android 仮想デバイス プロパティの編集」を参照してください。

  7. 明示的に設定する必要がある他のプロパティを追加します。 [New Device]\(新しいデバイス\) 画面には最もよく変更されるプロパティのみが表示されていますが、[Add Property]\(プロパティの追加\) プルダウン メニュー (下部) をクリックしてプロパティを追加できます。

    Add Property pull-down menu

    また、このプロパティ一覧の上部にある [Custom...]\(カスタム\) をクリックしてカスタム プロパティを定義することもできます。

  8. 新しいデバイスを作成するには、[Create]\(作成\) ボタン (右下隅) をクリックします。

    Create button

  9. Android Device Manager により、インストールされている仮想デバイスのリストに新しいデバイスが追加されます。デバイスが作成されている間は、[Creating]\(作成中\) という進行状況のインジケーターが表示されます。

    Creation progress indicator

  10. 作成プロセスが完了すると、新しいデバイスがインストール済み仮想デバイスのリストに [Start]\(開始\) ボタンと共に表示され、起動できる状態になります。

    Newly-created device ready to launch

デバイスの編集

既存の仮想デバイスを編集するには、[Additional Options]\(追加オプション\) プルダウン メニュー (歯車アイコン) を選んで、[Edit]\(編集\) を選びます。

Edit menu selection for modifying a new device

[Edit]\(編集\) をクリックすると、選んだ仮想デバイスのデバイス エディターが起動します。

Device Editor screen

[Device Editor]\(デバイス エディター\) 画面では、[Property]\(プロパティ\) 列に仮想デバイスのプロパティが一覧表示され、[Value]\(値\) 列に各プロパティの対応する値が表示されます。 プロパティを選ぶと、そのプロパティの詳しい説明が右側に表示されます。

プロパティを変更するには、[Value]\(値\) 列の値を編集します。 たとえば、次のスクリーンショットでは、hw.lcd.density プロパティを 480 から 240 に変更しています。

Device Editing example

必要な構成の変更を行った後、[Save]\(保存\) ボタンをクリックします。 仮想デバイス プロパティの変更の詳細については、「Android 仮想デバイス プロパティの編集」を参照してください。

追加のオプション

デバイスの操作に関するその他のオプションを、[Play]\(再生\) ボタンの左側にあるプルダウン メニューから指定できます。

Location of additional options menu

その他のオプションのメニューには、次の項目が含まれます。

  • [編集] - 前述のとおり、現在選択しているデバイスがデバイス エディターで開かれます。

  • [複製して編集] – 現在選択しているデバイスを複製し、異なる一意の名前を付けて [新しいデバイス] 画面で開きます。 たとえば、[Pixel 2 API 28] を選択し、[Duplicate and Edit]\(複製して編集\) をクリックすると、名前にカウンターが追加されます。

    Duplicate and Edit screen

  • [Finder で表示] - 仮想デバイスのファイルが含まれるフォルダーを、macOS Finder ウィンドウで開きます。 たとえば、[Pixel 2 API 28] を選択し、[Reveal in Explorer]\(エクスプローラーで表示\) をクリックすると、次の例のようなウィンドウが開きます。

    Results of clicking Reveal in Finder

  • [出荷時の設定にリセット] - 選択したデバイスをその既定の設定にリセットし、デバイスの実行中にユーザーが行ったデバイスの内部状態に対する変更を消去します (現在のクイック ブートのスナップショットが存在する場合は、それも消去されます)。 仮想デバイスを作成または編集するときに行った変更は消去されません。 このリセットは元に戻すことができないという警告がダイアログ ボックスに表示されます。 [Factory Reset]\(出荷時の設定にリセット\) をクリックしてリセットを確定します。

    Factory reset dialog

  • 削除: 選択した仮想デバイスを完全に削除します。 デバイスの削除は元に戻すことができないという警告がダイアログ ボックスに表示されます。 [Delete]\(削除\) をクリックして、デバイスを削除することを確認します。

    Delete device dialog


トラブルシューティング

次のセクションでは、Android Device Manager を使用して仮想デバイスを構成するときに発生する可能性のある問題を診断して回避する方法について説明します。

標準以外の場所にある Android SDK

通常、Android SDK は次の場所にインストールされます。

C:\Program Files (x86)\Android\android-sdk

SDK がこの場所にインストールされていない場合、Android Device Manager の起動時に次のエラーが発生する可能性があります。

Android SDK instance error

この問題を回避するには、次の手順を実行します。

  1. Windows デスクトップから、C:\Users\username\AppData\Roaming\XamarinDeviceManager に移動します。

    Android Device Manager log file location

  2. いずれかのログ ファイルをダブルクリックして開き、構成ファイルのパスを調べます。 次に例を示します。

    Config file path in log file

  3. この場所に移動し、user.config をダブルクリックして開きます。

  4. user.config<UserSettings> 要素を探し、それに AndroidSdkPath 属性を追加します。 Android SDK がインストールされているコンピューター上のパスをこの属性に設定し、ファイルを保存します。 たとえば、Android SDK が C:\Programs\Android\SDK にインストールされている場合、<UserSettings> は次のようになります。

    <UserSettings SdkLibLastWriteTimeUtcTicks="636409365200000000" AndroidSdkPath="C:ProgramsAndroidSDK" />
    

user.config をこのように変更すると、Android Device Manager を起動できるようになります。

不適切なバージョンの Android SDK Tools

Android SDK Tools 26.1.1 以降がインストールされていない場合、起動時に次のエラー ダイアログが表示されることがあります。

Screenshot shows the Android SDK instance error dialog box.

このエラー ダイアログが表示された場合は、[SDK マネージャーを開く] をクリックして Android SDK Manager を開きます。 Android SDK Manager で、[ツール] タブをクリックして、以下のパッケージをインストールします。

  • Android SDK Tools 26.1.1 以降
  • Android SDK Platform-Tools 27.0.1 以降
  • Android SDK Build Tools 27.0.3 以降

スナップショットによって Android Oreo の WiFi が無効になる

Android Oreo 用に構成された AVD で Wi-Fi アクセスをシミュレートしている場合、スナップショットの後で AVD を再起動すると、Wi-Fi アクセスが無効になる場合があります。

この問題を回避するには、次のようにします。

  1. Android Device Manager で AVD を選びます。

  2. 追加のオプション メニューから、[エクスプローラーで表示します] をクリックします。

  3. snapshots > default_boot に移動します。

  4. snapshot.pb ファイルを削除します。

    Location of the snapshot.pb file

  5. AVD を再起動します。

これらの変更を行った後は、AVD は Wi-Fi が再び機能する状態で再起動します。

バグ報告の生成

上記のトラブルシューティングのヒントで解決できない問題が Android Device Manager で見つかった場合は、タイトル バーを右クリックし、[Generate Bug Report]\(バグ報告の生成\) を選択して、バグ報告を提出してください。

Location of menu item for filing a bug report

まとめ

このガイドでは、Visual Studio Tools for Xamarin and および Visual Studio for Mac で利用できる Android Device Manager について紹介しました。 Android エミュレーターの開始と停止、実行する Android 仮想デバイス (AVD) の選択、仮想デバイスの編集方法などの、重要な機能について説明しました。 さらにカスタマイズを行うためのハードウェア プロファイル プロパティの編集方法について説明し、一般的な問題のトラブルシューティングのヒントを提供しました。

他の Xamarin ビデオは、Channel 9 および YouTube でご覧いただけます。