拡張コントロール、設定、ヘルプ

Android Emulator の拡張コントロールを使用して、データの送信、デバイス プロパティの変更、アプリの制御などができます。[Extended controls] ウィンドウを開くには、エミュレータ パネルでその他アイコン エミュレータ拡張コントロール アイコン をクリックします。なお、拡張コントロール オプションの一部は、Android Studio 外で別のウィンドウでエミュレータを実行する場合にのみ使用できます。

これらのタスクの多くは、キーボード ショートカットで実行できます。エミュレータのショートカットを一覧表示するには、F1(macOS では Command+/)キーを押して [Help] ペインを開きます。

表 1. 拡張コントロールの詳細

機能 説明
ディスプレイ

エミュレータを使用すると、サイズをカスタマイズできる複数のディスプレイにアプリをデプロイして、マルチウィンドウマルチディスプレイをサポートするアプリをテストできます。仮想デバイスの実行中、次のように、最大 2 つのディスプレイを追加できます。

  1. ディスプレイを 1 つ追加するには、[Add secondary display] をクリックします。
  2. [Secondary displays] のメニューで、次のいずれかを行います。
    1. プリセットされているアスペクト比のいずれかを選択します。
    2. [custom] を選択して、カスタム ディスプレイの高さdpi を設定します。
  3. (省略可)3 つ目のディスプレイを追加するには、[Add secondary display] をクリックします。
  4. [Apply changes] をクリックして、指定したディスプレイを、実行中の仮想デバイスに追加します。
モバイル

エミュレータでは、さまざまなネットワークの状態をシミュレートできます。さまざまなネットワーク プロトコルのネットワーク速度に近づけたり、[Full] を指定してコンピュータで実現できる最高速度でデータを転送したりできます。ネットワーク プロトコルを指定すると必ず、[Full] にした場合よりも速度が低下します。さらにローミングなど、音声やデータ ネットワークの状態も指定できます。デフォルトでは AVD に設定されています。

[Network type] の値を選択します。

  • GSM: Global System for Mobile Communications
  • HSCSD: 高速回線交換データ
  • GPRS: 汎用パケット無線サービス
  • EDGE: GSM Evolution の拡張データ通信速度
  • UMTS: Universal Mobile Telecommunications System
  • HSPDA: 高速ダウンリンク パケット アクセス
  • LTE: Long-Term Evolution
  • Full(デフォルト): コンピュータによって提供されるネットワークを使用します

[Signal strength] の値を選択します。

  • なし
  • 悪い
  • Moderate(デフォルト)
  • 良好
  • かなり良い

[Voice status] と [Data status] の一方または両方の値を選択します。

  • Home(デフォルト)
  • ローミング
  • 検索
  • 拒否(緊急通報のみ)
  • 未登録(オフ)
バッテリー

デバイスの電池プロパティをシミュレートすると、さまざまな条件下でアプリの動作を確認できます。[Charge level] を選択するには、スライダー コントロールを使用します。

[Charger connection] の値を選択します。

  • None
  • AC charger

[Battery health] の値を選択します。

  • Good(デフォルト)
  • 失敗
  • 無効
  • 過電圧
  • 過熱している
  • 不明

[Battery status] の値を選択します。

  • 不明
  • Charging(デフォルト)
  • 放電中
  • 充電していません
  • Full
カメラ エミュレータのカメラを開いたときにシミュレートされるシーンに画像を読み込むことができます。詳細については、ARCore ドキュメントのシーンに拡張画像を追加するをご覧ください。
位置情報

エミュレータでは「現在地」情報(エミュレートしているデバイスがある場所)をシミュレートできます。たとえば、Google マップで現在地 現在地アイコン をクリックして位置情報を送信すると、地図にその場所が表示されます。

デバイスの位置情報に関するコントロールは、2 つのタブ([Single points] と [Routes])にまとめられています。

単一ポイント

[Single points] タブでは、Google マップの WebView を使用して、スマートフォンやブラウザで Google マップを使用しているときと同じようにスポットを検索できます。地図で場所を検索またはクリックすると、地図の下部で [Save point] を選択して保存できます。保存した場所はすべて [Extended controls] ウィンドウの右側の一覧に表示されます。

エミュレータの場所を地図上で選択した場所に設定するには、[Extended controls] ウィンドウの右下にある [Set location] ボタンをクリックします。

Routes

[Single points] タブと同様に、[Routes] タブには、Google マップ WebView が表示されるので、2 つ以上の場所の間に経路を作成できます。経路を作成して保存する手順は次のとおりです。

  1. 地図表示で、テキスト フィールドを使用して経路の最初の目的地を検索します。
  2. 検索結果から場所を選択します。
  3. ナビゲーション ボタン を選択します。
  4. 地図から経路の出発地を選択します。
  5. (省略可)[Add destination] をクリックして、経由地をルートに追加します。
  6. 地図表示で [Save route] をクリックして経路を保存します。
  7. ルートの名前を指定して、[Save] をクリックします。

保存した経路に沿ってエミュレータでシミュレートするには、[Saved routes] リストから経路を選択し、[Extended controls] ウィンドウの右下にある [Play route] をクリックします。シミュレーションを停止するには、[Stop route] をクリックします。

指定した経路に沿ってエミュレータで継続的にシミュレートするには、[Repeat playback] のスイッチを有効にします。エミュレータが指定された経路をたどる速度を変更するには、[Playback speed] メニューから速度を選択します。

GPX データと KML データをインポートする

GPS 交換形式(GPX)または Keyhole Markup Language(KML)ファイルの地理データを使用するには:

  1. [Load GPX/KML] をクリックします。
  2. ファイル ダイアログでコンピュータ上にあるファイルを選択して [Open] をクリックします。
  3. 必要に応じて、[Speed] を選択します。
  4. 速度はデフォルトで [Delay](Speed 1X)に設定されています。速度は 2 倍(Speed 2X)、3 倍(Speed 3X)のように増加させることができます。

  5. 実行アイコン 実行アイコン をクリックします。
電話

エミュレータで電話の着信やテキスト メッセージの受信をシミュレートできます。

エミュレータへの通話を開始する方法は次のとおりです。

  1. [From] フィールドで電話番号を選択または入力します。
  2. [デバイスに発信] をクリックします。
  3. 必要に応じて、[Hold Call] をクリックして通話を保留にします。
  4. 通話を終了するには、[通話を終了] をクリックします。

エミュレータにテキスト メッセージを送信する方法は以下のとおりです。

  1. [From] フィールドで電話番号を選択または入力します。
  2. [SMS message](SMS のメッセージ)欄にメッセージを入力します。
  3. [メッセージを送信] をクリックします。
十字キー

AVD のハードウェア プロファイルで十字キーが有効になっている場合は、エミュレータで十字キーを利用できます。ただし、Android スマートウォッチなどの一部のデバイスは十字キーに対応していません。各ボタンがシミュレートする動作は以下のとおりです。

十字キーのコントロール
Microphone [Virtual microphone uses host audio input] がオンになっている場合、エミュレータはホストマイクからオーディオ入力を受け取ります。そうでない場合は、オーディオ入力を受け取りません。[Virtual headset plug inserted]、[Virtual headset has microphone]、および [Voice Assist] オプションは、現在実装されていません。
Fingerprint

このコントロールでは 10 種の異なる指紋スキャンをシミュレートできます。この機能を使用して、アプリで指紋機能の統合をテストできます。この機能は、Android 5.1(API レベル 22)以前、および Wear OS では無効です。

仮想デバイス上で指紋のスキャンをシミュレートする方法は次のとおりです。

  1. 指紋を受信するアプリを準備します。
  2. [Fingerprint] の値を選択します。
  3. [タッチセンサー] をクリックします。
Virtual sensors > Device Pose

このコントロールでは、デバイスの位置および / またはデバイスの向きの変化に対するアプリの反応をテストできます。たとえば、傾きや回転などのジェスチャーをシミュレートできます。加速度センサーは、デバイスの絶対位置を追跡することはありません。変更が発生したことを検出するだけです。このコントロールは、実際のデバイスを移動または回転させたときの加速度センサーと磁力計センサーの反応をシミュレートします。

このコントロールを使用するには、AVD の加速度センサーを有効にする必要があります。

このコントロールは、x、y、z 軸で TYPE_ACCELEROMETER イベントをレポートします。これらの値には重力が影響します。たとえば、デバイスが宇宙空間で吊り下げられている場合、加速度はゼロになります(x、y、z はすべて 0 になります)。デバイスが地球上にあり、テーブル上に画面を上にして置くと、重力のために加速度は 0、0、9.8 になります。

このコントロールは TYPE_MAGNETIC_FIELD イベントもレポートします。このイベントでは、x、y、z 軸の周囲磁場をマイクロテスラ(μT)単位で測定します。

x、y、z 軸でデバイスを回転させるには、[Rotate] を選択して、次のいずれかを行います。

  • [Yaw]、[Pitch]、[Roll] スライダーを調整し、上部ペインで位置を確認します。
  • 上部ペインに表示されているデバイスを移動させ、[Yaw]、[Pitch]、[Roll] と、その結果生じる加速度計値の変化を確認します。

Yaw、Pitch、Roll の計算方法の詳細は、デバイスの向きの計算に関する説明をご覧ください。

デバイスを水平(x)または垂直(y)に移動するには、[Move] を選択し、次のいずれかを行います。

  • [X] スライダーと [Y] スライダーを調整し、上部ペインで位置を確認します。
  • 上部ペインに表示されているデバイスを移動させ、[X]、[Y] のスライダー値と、その結果生じる加速度計値の変化を確認します。

デバイスを 0、90、180、270 度に配置するには:

  • [Device rotation] 領域で、回転を変更するボタンを選択します。

デバイスを調整すると、それに応じて [Resulting values] フィールドが変わります。これらの値には、アプリからアクセスできます。

上記のセンサーの詳細については、センサーの概要モーション センサー位置センサーをご覧ください。

Virtual sensors > Additional sensors

エミュレータは、さまざまな位置および環境センサーをシミュレートできます。以下のセンサーを調整して、アプリでテストできます。

  • Ambient temperature: この環境センサーは周囲の気温を測定します。
  • Magnetic field: この位置センサーは、それぞれ X、Y、Z 軸の周囲磁場を測定します。値の単位はマイクロテスラ(μT)です。
  • Proximity: この位置センサーは、対象物からの距離を測定します。たとえば、電話をかけるために顔がスマートフォンに近づいたことを通知できます。このコントロールを使用するには、AVD で近接センサーを有効にする必要があります。
  • Light: この環境センサーは照度を測定します。値はルクス単位です。
  • Pressure: この環境センサーは、周囲の気圧を測定します。 値はミリバール(hPa)単位です。
  • Relative Humidity: この環境センサーは、周囲の相対湿度を測定します。

これらのセンサーの詳細については、センサーの概要位置センサー環境センサーをご覧ください。

バグレポート エミュレータで問題が発生した場合は、バグレポートを作成して送信できます。エミュレータは、バグレポート用のスクリーンショットやログなどのデータを自動的に収集します。
Record and Playback 画面の録画をご覧ください。
Google Play AVD システム イメージに Play ストア アプリが含まれている場合、Google Play 開発者サービスのバージョン情報が表示されます。
Settings > General
  • Emulator window theme: [Light] か [Dark] を選択します。
  • Send keyboard shortcuts to: デフォルトでは、いくつかのキーの組み合わせでエミュレータのコントロール ショートカットがトリガーされます。キーボード ショートカット機能に対応したアプリを開発している場合(Bluetooth キーボードを使うデバイスを対象とするアプリなど)、この設定を変更することで、エミュレータでショートカットとみなされる入力を含め、すべてのキーボード入力を仮想デバイスに送信できます。
  • Screenshot save location: フォルダ アイコンをクリックして、エミュレータ画面のスクリーンショットを保存する場所を指定します。
  • Use detected ADB location: Android Studio からエミュレータを実行している場合は、この設定(デフォルト値)を選択します。Android Studio 以外からエミュレータを実行しており、特定の adb 実行ファイルを使用したい場合は、このオプションの選択を解除して SDK Tools の場所を指定してください。この設定が正しくない場合、スクリーンショットのキャプチャやドラッグ&ドロップによるアプリのインストールなどの機能は動作しません。
  • When to send crash reports: [Always]、[Never]、[Ask] のいずれかを選択します。
  • Show window frame around device: デフォルトでは、デバイスのスキンファイルを含むエミュレータが周囲のウィンドウ フレームなしで表示されます。
Settings > Proxy

エミュレータはデフォルトで Android Studio の HTTP プロキシ設定を使用します。この画面では、エミュレータの HTTP プロキシ設定を手動で定義できます。詳細については、エミュレータでプロキシを使用するをご覧ください。

Settings > Advanced
  • OpenGL ES renderer: グラフィック アクセラレーション タイプを選択します(これは -gpu コマンドライン オプションと同じです)。
    • Autodetect based on host: エミュレータがハードウェアかソフトウェアのどちらのグラフィック アクセラレーションを使用するかを、コンピュータのセットアップに基づいて選択します。既知の障害がある GPU ドライバのリストにコンピュータの GPU ドライバがあるかを確認し、ある場合、エミュレータはグラフィック ハードウェア エミュレーションを無効にして、代わりに CPU を使用します。
    • ANGLE:(Windows のみ)ANGLE Direct3D を使用して、ソフトウェアでグラフィックをレンダリングします。
    • SwiftShader: SwiftShader を使用して、ソフトウェアでグラフィックをレンダリングします。
    • Desktop native OpenGL: ホスト コンピュータの GPU を使用します。通常、このオプションは最速のパフォーマンスを提供します。ただし、一部のドライバには OpenGL グラフィックのレンダリングに問題があるため、信頼できるオプションではない場合があります。
  • OpenGL ES API level: エミュレータで使用する OpenGL ES の最大バージョンを選択します。
    • Autoselect: ホストおよびゲストのサポートに基づいて、エミュレータが使用する OpenGL ES のバージョンが選択されます。
    • Renderer maximum (up to OpenGL ES 3.1): OpenGL ES の最大バージョンの使用を試みます。
    • Compatibility (OpenGL ES 1.1/2.0): ほとんどの環境と互換性のあるバージョンの OpenGL ES を使用します。
Help > Keyboard Shortcuts

このペインには、エミュレータのキーボード ショートカットの一覧が表示されます。エミュレータでの操作中にこのペインを開くには、F1(macOS では Command+/)キーを押します。

ショートカットを有効にするには、[General] 設定ペインの [Send keyboard shortcuts] オプションを [Emulator controls (default)] に設定する必要があります。

Help > Emulator Help

エミュレータのオンライン ドキュメントを参照するには、[Documentation] をクリックします。

エミュレータのバグを報告するには、[Send feedback] をクリックします。詳細については、エミュレータのバグを報告する方法をご覧ください。

Help > About

エミュレータで使用している adb ポートや、Android とエミュレータのバージョン番号を確認できます。使用中のエミュレータのバージョンと最新バージョンを比較して、最新のソフトウェアをインストールしているか確認してください。

エミュレータのシリアル番号は emulator-adb_port です。これは adb コマンドラインのオプションとして指定できます。