Android Emulator でのデバッグDebugging on the Android Emulator

このガイドでは、アプリをデバッグしてテストするために Android Emulator で仮想デバイスを起動する方法について説明します。In this guide, you will learn how to launch a virtual device in the Android Emulator to debug and test your app.

概要Overview

Android Emulator (.NET によるモバイル開発のワークロードの一部としてインストールされている) は各種の Android デバイスをシミュレートするために、さまざまな構成で実行することができます。The Android Emulator (installed as part of the Mobile development with .NET workload), can be run in a variety of configurations to simulate different Android devices. これらの構成がそれぞれ、_仮想デバイス_として作成されます。Each one of these configurations is created as a virtual device. このガイドでは、Visual Studio からエミュレーターを起動する方法、および仮想デバイスでアプリを実行する方法を説明します。In this guide, you will learn how to launch the emulator from Visual Studio and run your app in a virtual device. Android Emulator の構成と、新しい仮想デバイスの作成については、「Android Emulator のセットアップ」を参照してください。For information about configuring the Android Emulator and creating new virtual devices, see Android Emulator Setup.

構成済み仮想デバイスの使用Using a Pre-Configured Virtual Device

Visual Studio には、デバイスのドロップダウン メニューに表示される構成済みの仮想デバイスが含まれます。Visual Studio includes pre-configured virtual devices that appear in the device drop-down menu. たとえば、次の Visual Studio 2017 のスクリーンショットでは、いくつかの構成済み仮想デバイスが使用可能です。For example, in the following Visual Studio 2017 screenshot, several pre-configured virtual devices are available:

  • VisualStudio_android-23_arm_phoneVisualStudio_android-23_arm_phone

  • VisualStudio_android-23_arm_tabletVisualStudio_android-23_arm_tablet

  • VisualStudio_android-23_x86_phoneVisualStudio_android-23_x86_phone

  • VisualStudio_android-23_x86_tabletVisualStudio_android-23_x86_tablet

仮想デバイスVirtual devices

通常、電話アプリをテストしてデバッグする場合は、VisualStudio_android-23_x86_phone 仮想デバイスを選択します。Typically, you would select the VisualStudio_android-23_x86_phone virtual device to test and debug a phone app. これらの構成済み仮想デバイスのいずれかが要件を満たしている (つまり、アプリのターゲット API レベルと一致している) 場合は、「エミュレーターの起動」に進み、エミュレーターでのアプリの実行を開始します If one of these pre-configured virtual devices meets your requirements (i.e., matches your app's target API level), skip to Launching the Emulator to begin running your app in the emulator. (Android API レベルについてまだよく理解していない場合は、「Understanding Android API Levels」 (Android API レベルについて) を参照してください)。(If you are not yet familiar with Android API levels, see Understanding Android API Levels.)

Xamarin.Android プロジェクトで、使用可能な仮想マシンと互換性のないターゲット フレームワーク レベルを使用している場合は、ドロップダウン メニューの [サポートされていないデバイス] に使用不可の仮想デバイスがリストされます。If your Xamarin.Android project is using a Target Framework level that is incompatible with the available virtual devices, the drop-down menu lists the unusable virtual devices under Unsupported Devices. たとえば、以下のプロジェクトでは、ターゲット フレームワークが、この例にリストされている Android 6.0 仮想デバイスと互換性のない Android 7.1 Nougat (API 25) に設定されています。For example, the following project has a Target Framework set to Android 7.1 Nougat (API 25), which is incompatible with the Android 6.0 virtual devices that are listed in this example:

互換性のない仮想デバイスIncompatible virtual device

使用可能な仮想デバイスの API レベルと一致するように、[最小 Android ターゲットの変更] をクリックして、プロジェクトの最小 Android バージョンを変更することができます。You can click Change Minimum Android Target to change the project's Minimum Android Version so that it matches the API level of the available virtual devices. また、Android Device Manager を使用して、ターゲット API レベルをサポートする新しい仮想デバイスを作成することもできます。Alternately, you can use the Android Device Manager to create new virtual devices that support your target API level. 新しい API レベル用に仮想デバイスを構成するには、まず、その API レベルに対応するシステム イメージをインストールする必要があります (「Xamarin.Android 向け Android SDK を設定する」を参照)。Before you can configure virtual devices for a new API level, you must first install the corresponding system images for that API level (see Setting up the Android SDK for Xamarin.Android).

仮想デバイスの編集Editing Virtual Devices

仮想デバイスを編集する (または新規に作成する) には、Android Device Manager を使用する必要があります。To modify virtual devices (or to create new ones), you must use the Android Device Manager.

エミュレーターの起動Launching the Emulator

VisuaI Studio の上部近くにドロップダウン メニューがあります。このメニューを使用して、デバッグ モードまたはリリース モードを選択できます。Near the top of Visual Studio, there is a drop-down menu that can be used to select Debug or Release mode. [デバッグ] を選択すると、アプリの起動後にエミュレーター内で実行されているアプリケーション プロセスにデバッガーがアタッチされます。Choosing Debug causes the debugger to attach to the application process running inside the emulator after the app starts. [リリース] モードを選択すると、デバッガーが無効になります (ただし、アプリを実行し、ログ ステートメントを使用してデバッグすることはできます)。Choosing Release mode disables the debugger (however, you can still run the app and use log statements for debug). デバイスのドロップダウン メニューから仮想デバイスを選択した後、[デバッグ] または [リリース] のいずれかのモードを選択し、[再生] ボタンをクリックしてアプリケーションを実行します。After you have chosen a virtual device from the device drop-down menu, select either Debug or Release mode, then click the Play button to run the application:

エミュレーターが起動すると、Xamarin.Android はエミュレーターにアプリを展開します。After the emulator starts, Xamarin.Android will deploy the app to the emulator. エミュレーターは、構成済みの仮想デバイス イメージを使用してアプリを実行します。The emulator runs the app with the configured virtual device image. Android Emulator の例のスクリーン ショットを、下に表示します。An example screenshot of the Android Emulator is displayed below. この例では、エミュレーターが MyApp という空のアプリを実行しています。In this example, the emulator is running a blank app called MyApp:

空のアプリを実行するエミュレーター

エミュレーターは実行したままでかまいません。アプリが起動するたびにシャットダウンして再起動を待つ必要はありません。The emulator may be left running: it is not necessary to shut it down and wait for it to restart each time the app is launched. Xamarin.Android アプリがエミュレーターで初めて実行されるときに、ターゲットとなる API レベルの Xamarin.Android 共有ランタイムがインストールされてからアプリケーションがインストールされます。The first time a Xamarin.Android app is run in the emulator, the Xamarin.Android shared runtime for the targeted API level is installed, followed by the application. ランタイムのインストールには少し時間がかかる場合があります。完了するまでしばらくお待ちください。The runtime installation may take a few moments, so please be patient. ランタイムのインストールが行われるのは、Xamarin.Android アプリが初めてエミュレーターに展開される場合のみです。以降の展開では、エミュレーターにアプリがコピーされるだけなので、初回より時間はかかりません。Installation of the runtime takes place only when the first Xamarin.Android app is deployed to the emulator – subsequent deployments are faster because only the app is copied to the emulator.

クイック ブートQuick Boot

新しいバージョンの Android Emulator には、ほんの数秒でエミュレーターを起動する_クイック ブート_と呼ばれる機能が含まれています。Newer versions of the Android Emulator include a feature called Quick Boot that launches the emulator in only a few seconds. エミュレーターを閉じるときに、仮想デバイスの状態のスナップショットが取得されるため、再起動時にその状態をすばやく復元できます。When you close the emulator, it takes a snapshot of the virtual device state so that it can be quickly restored from that state when it is restarted. この機能にアクセスするには、次が必要になります。To access this feature, you will need the following:

  • Android Emulator バージョン 27.0.2 またはそれ以降Android Emulator version 27.0.2 or later
  • Android SDK Tools バージョン 26.1.1 またはそれ以降Android SDK Tools version 26.1.1 or later

上記のバージョンのエミュレーターと SDK Tools がインストールされていると、クイック ブート機能が既定で有効になります。When the above-listed versions of the emulator and SDK tools are installed, the Quick Boot feature is enabled by default.

仮想デバイスの最初のコールド ブートではまだスナップショットが作成されていないため、実行速度が改善されません。The first cold boot of the virtual device takes place without a speed improvement because a snapshot has not yet been created:

コールド ブートのスクリーンショット

エミュレーターを終了すると、クイック ブートによりエミュレーターの状態がスナップショットで保存されます。When you exit out of the emulator, Quick Boot saves the state of the emulator in a snapshot:

シャットダウン時の状態の保存

以後の仮想デバイスの起動では、エミュレーターの終了時の状態が単純に復元されるため、はるかに高速になります。Subsequent virtual device starts are much faster because the emulator simply restores the state at which you closed the emulator.

再起動時の読み込み中の状態

トラブルシューティングTroubleshooting

エミュレーターの一般的な問題のヒントと回避策は、「エミュレーターのセットアップに関する問題のトラブルシューティング」を参照してください。For tips and workarounds for common emulator problems, see Android Emulator Troubleshooting.

まとめSummary

このガイドでは、Xamarin.Android アプリを実行およびテストするために、Android Emulator を構成するプロセスについて説明しました。This guide explained the process for configuring the Android Emulator to run and test Xamarin.Android apps. あらかじめ構成された仮想デバイスを使用してエミュレーターを起動する手順、および Visual Studio からエミュレーターにアプリケーションを配置するための手順について説明しました。It described the steps for launching the emulator using pre-configured virtual devices, and it provided the steps for deploying an application to the emulator from Visual Studio.

Android Emulator の使用の詳細については、以下の Android 開発者向けトピックを参照してください。For more information about using the Android Emulator, see the following Android Developer topics: