Android Virtual Device(AVD)では、Android スマートフォンやタブレット、Wear OS、Android TV、Automotive OS デバイスなど、Android Emulator でシミュレートするデバイスの特性を定義できます。デバイス マネージャは Android Studio から起動できるインターフェースであり、AVD の作成と管理に役立ちます。
新しいデバイス マネージャを開くには、次のいずれかの手順を行います。
- Android Studio のウェルカム画面で、[More Actions] > [Virtual Device Manager] を選択します。
- プロジェクトを開いたら、メインのメニューバーから [View] > [Tool Windows] > [Device Manager] を選択します。
AVD について
AVD には、ハードウェア プロファイル、システム イメージ、ストレージ領域、スキンなどのプロパティが含まれています。
マニフェストの <uses-sdk>
設定に基づいて、アプリがサポートする可能性がある各システム イメージごとに AVD を作成することをおすすめします。
ハードウェア プロファイル
ハードウェア プロファイルは工場出荷時のデバイスの特性を定義します。デバイス マネージャには Pixel デバイスなどの特定のハードウェア プロファイルがプリロードされていますが、必要に応じてハードウェア プロファイルの定義やカスタマイズを行えます。
一部のハードウェア プロファイルにのみ、Play ストアが含まれることが示されています。これは、それらのプロファイルが CTS を完全に遵守し、Play ストア アプリを含むシステム イメージを使用できることを示しています。
システム イメージ
[Google API] というラベルの付いたシステム イメージには、Google Play 開発者サービスへのアクセスが含まれています。[Play Store] 列に Google Play のロゴが付いているシステム イメージには、Google Play ストア アプリと Google Play 開発者サービスへのアクセスが含まれ、[Extended controls] ダイアログの [Google Play] タブには、デバイスの Google Play 開発者サービスをアップデートするのに便利なボタンが提供されます。
アプリのセキュリティを確保し、実際のデバイスと同じように動作できるようにするため、Google Play ストアを含むシステム イメージはリリースキーで署名されています。つまり、それらのイメージでは、昇格された権限(root)を取得することはできません。アプリのトラブルシューティングに昇格された権限(root)が必要な場合は、Google のアプリやサービスが含まれていない Android オープンソース プロジェクト(AOSP)のシステム イメージを使うことができます。
ストレージ領域
AVD は開発マシン上に専用のストレージ領域を確保します。インストールしたアプリや設定内容、エミュレートされた SD カードなどのデバイスのユーザーデータは、そのストレージ領域に保存されます。必要に応じて、デバイス マネージャを使用してユーザーデータを消去し、デバイス内のデータを新品と同じ状態に戻せます。
スキン
エミュレータ スキンはデバイスの外観を決めるものです。デバイス マネージャには、あらかじめスキンがいくつか用意されています。また、自身で定義したスキンやサードパーティから提供されたスキンを使用することもできます。
AVD とアプリの機能
AVD 定義に、アプリが依存しているデバイス機能が含まれていることを確認してください。 AVD で定義できる機能のリストについては、ハードウェア プロファイルのプロパティと AVD プロパティをご覧ください。
AVD を作成する
ヒント: アプリをエミュレータで起動する場合は、その代わりに Android Studio からアプリを実行し、表示される [Select Deployment Target] ダイアログで [Create New Virtual Device] をクリックします。
AVD を新規作成するには:
- デバイス マネージャを開きます。
- [Create Device] をクリックします。
[Select Hardware] ウィンドウが表示されます。
一部のハードウェア プロファイルにのみ、Play ストアが含まれることが示されています。これは、それらのプロファイルが CTS を完全に遵守し、Play ストア アプリを含むシステム イメージを使用できることを示しています。
- ハードウェア プロファイルを選択して [Next] をクリックします。
- 特定の API レベル用のシステム イメージを選択して [Next] をクリックします。
- 必要に応じて AVD プロパティを変更し、[Finish] をクリックします。
スキンなどの詳細設定を確認するには、[Show Advanced Settings] をクリックします。
使用したいハードウェア プロファイルがない場合は、ハードウェア プロファイルを作成またはインポートできます。
[System Image] ページが表示されます。

[Recommended] タブには推奨されるシステム イメージが一覧表示されます。他のタブには、より包括的なリストが表示されます。右ペインには、選択したシステム イメージが表示されます。x86 イメージが最も高速に実行できます。
システム イメージの隣に [Download] と表示されている場合は、クリックしてシステム イメージをダウンロードする必要があります。ダウンロードするにはインターネット接続が必要です。
対象デバイスの API レベルは重要です。これは、アプリが必要とする API レベル(アプリ マニフェスト ファイルの minSdkVersion
属性で指定されているレベル)よりも API レベルが低いシステム イメージでは、そのアプリを実行できないためです。システムの API レベルと minSdkVersion
の関係については、アプリのバージョニングをご覧ください。
アプリのマニフェスト ファイルで <uses-library>
要素を宣言する場合は、その外部ライブラリを含むシステム イメージが必要になります。エミュレータ上でアプリを実行するには、必要なライブラリを含む AVD を作成します。そのためには、Google マップのライブラリを含む Google API のアドオンなど、AVD プラットフォーム用のアドオン コンポーネントを使用しなければならないことがあります。
[Verify Configuration] ページが表示されます。

新しい AVD が、デバイス マネージャの [Virtual] タブとターゲットのプルダウン メニューに表示されます。
コピーから AVD を作成するには:
- デバイス マネージャの [Virtual] タブで、メニュー アイコン
をクリックして [Duplicate] を選択します。
- [System Image] ページと [Select Hardware] ページで変更を行う必要がある場合は、[Change] または [Previous] をクリックします。
- 変更が完了したら、[Finish] をクリックします。
[Verify Configuration] ページが表示されます。
デバイス マネージャの [Virtual] タブに AVD が表示されます。
ハードウェア プロファイルを作成する
デバイス マネージャには一般的なデバイスのハードウェア プロファイルがあらかじめ定義されており、それらを簡単に自身の AVD 定義に追加できます。一方、別のデバイスを定義する必要がある場合は、ハードウェア プロファイルを新規作成できます。新しいハードウェア プロファイルを一から作成することも、ハードウェア プロファイルをコピーしてそれを元に作成することもできます。なお、プリロード済みのハードウェア プロファイルは編集できません。
ハードウェア プロファイルを一から作成するには:
- [Select Hardware] ページで [New Hardware Profile] をクリックします。
- [Configure Hardware Profile] ページで、必要に応じてハードウェア プロファイルのプロパティを変更します。
- [Finish] をクリックします。
新しいハードウェア プロファイルが [Select Hardware] ページに表示されます。 [Next] をクリックすると、オプションとして、そのハードウェア プロファイルを使用する AVD を作成できます。[Cancel] をクリックすると、[Virtual] タブまたはターゲット デバイスのプルダウン メニューに戻ります。
コピーからハードウェア プロファイルを作成するには:
- [Select Hardware] ページでハードウェア プロファイルを選択し、[Clone Device] をクリックします。
- [Configure Hardware Profile] ページで、必要に応じてハードウェア プロファイルのプロパティを変更します。
- [Finish] をクリックします。
またはハードウェア プロファイルを右クリックして、[Clone] を選択します。
新しいハードウェア プロファイルが [Select Hardware] ページに表示されます。 [Next] をクリックすると、オプションとして、そのハードウェア プロファイルを使用する AVD を作成できます。[Cancel] をクリックすると、[Virtual] タブまたはターゲット デバイスのプルダウン メニューに戻ります。
既存の AVD を編集する
デバイス マネージャの [Virtual] タブから、既存の AVD に対して以下の操作を行うことができます。
- AVD の編集。Edit this AVD アイコン
をクリックして変更を加えます。
- AVD の削除。メニュー アイコン
をクリックして [Delete] を選択します。
- ディスク上の関連する AVD の
.ini
ファイルと.img
ファイルの表示。メニュー アイコンをクリックして [Show on Disk] を選択します。
- AVD 構成の詳細情報の表示。この情報を Android Studio チームへのバグレポートに記載できます。メニュー アイコン
をクリックして [View Details] を選択します。
既存のハードウェア プロファイルを編集する
[Select Hardware] ページから、既存のハードウェア プロファイルに対して以下の操作を行うことができます。
- ハードウェア プロファイルの編集。ハードウェア プロファイルを選択して [Edit Device] をクリックするか、ハードウェア プロファイルを右クリックして [Edit] を選択し、変更を加えます。
- ハードウェア プロファイルの削除。ハードウェア プロファイルを右クリックして [Delete] を選択します。
事前定義されたハードウェア プロファイルを編集または削除することはできません。
エミュレータの実行と停止、データの消去を行う
[Virtual] タブから、エミュレータに対して以下の操作を行うことができます。
- AVD を使用するエミュレータの実行。Launch アイコン
をクリックします。
- 実行中のエミュレータの停止。メニュー アイコン
をクリックして [Stop] を選択します。
- エミュレータのデータの消去。[Wipe Data] を選択するか、メニュー アイコン
をクリックして [Wipe Data] を選択します。
ハードウェア プロファイルをインポートおよびエクスポートする
[Select Hardware] ページからハードウェア プロファイルのインポートとエクスポートができます。
- ハードウェア プロファイルをインポートするには、[Import Hardware Profiles] をクリックして、コンピュータ上の定義を含む XML ファイルを選択します。
- ハードウェア プロファイルをエクスポートするには、ハードウェア プロファイルを右クリックして [Export] を選択し、定義を含む XML ファイルを保存する場所を指定します。
ハードウェア プロファイルのプロパティ
[Configure Hardware Profile] ページで、ハードウェア プロファイルの以下のプロパティを指定できます。AVD 構成のプロパティはハードウェア プロファイルのプロパティをオーバーライドします。エミュレータの実行中に設定したエミュレータ プロパティはこの両方のプロパティをオーバーライドします。
デバイス マネージャに含まれる事前定義されたハードウェア プロファイルは編集できません。ただし、それらのコピーは編集できます。
ハードウェア プロファイルのプロパティ | 説明 |
---|---|
Device Name | ハードウェア プロファイルの名前。 使用できるのは大文字と小文字の英字、0 から 9 までの数字、ピリオド(.)、アンダースコア(_)、丸かっこ(())、スペースです。 このハードウェア プロファイル名が、ハードウェア プロファイルを保存するファイルの名前になります。 |
Device Type | 次のいずれかを選択します。
|
Screen Size | 対角線で計測した画面の物理サイズ(インチ表記)です。 このサイズがコンピュータの画面よりも大きい場合、起動時に縮小されます。 |
Screen Resolution | ピクセル単位で幅と高さを入力して、シミュレートした画面の総ピクセル数を指定します。 |
Round | Wear OS デバイスのように画面が丸いデバイスは、このオプションを選択します。 |
Memory: RAM | デバイスの RAM サイズを入力して、B(バイト)、KB(キロバイト)、MB(メガバイト)、GB(ギガバイト)、TB(テラバイト)で単位を選択します。 |
Input: Has Hardware Buttons (Back/Home/Menu) | デバイスにハードウェア ナビゲーション ボタンがある場合は、このオプションを選択します。 ソフトウェアのみにこのボタンが実装されている場合は、選択を解除します。このオプションを選択すると画面上にボタンが表示されなくなります。いずれの場合も、エミュレータのサイドパネルでボタンを押すことができます。 |
Input: Has Hardware Keyboard | デバイスにハードウェア キーボードがある場合はこのオプションを選択し、ない場合は選択を解除します。このオプションを選択すると画面上にキーボードが表示されなくなります。いずれの場合でも、コンピュータのキーボードでキー入力をエミュレータに送信できます。 |
Navigation Style | 次のいずれかを選択します。
これらのオプションはデバイス本体のハードウェア コントロールに使用します。 外部コントローラによってデバイスに送信されるイベントにも、同様に使用します。 |
Supported Device States | 以下のどちらか、または両方を選択します。
両方を選択すると、エミュレータ上でデバイスの向きを切り替えることができます。 設定を続けるには、少なくとも 1 つのオプションを選択する必要があります。 |
カメラ | カメラを有効にするには、以下のどちらか、または両方を選択します。
後で、エミュレータで提供されるウェブカメラや写真を利用して、カメラ撮影をシミュレートすることもできます。 |
Sensors: Accelerometer | 向きを特定するためのハードウェアがデバイスに備わっている場合は、選択します。 |
Sensors: Gyroscope | 回転や傾きを検出するハードウェアがデバイスに備わっている場合は、選択します。 加速度計と組み合わせると向きの検出がスムーズになり、6 軸方向システムに対応できます。 |
Sensors: GPS | グローバル ポジショニング システム(GPS)の衛星測位システムをサポートするハードウェアがデバイスに備わっている場合は、選択します。 |
Sensors: Proximity Sensor | 通話中にデバイスが顔に近づいたことを検出して画面入力を無効にするハードウェアがデバイスに備わっている場合は、選択します。 |
Default Skin | エミュレータを表示した際にデバイスの外観を決めるスキンを選択します。解像度に対して極端に大きい画面を指定すると、画面の一部がカットされるため、画面全体を表示できないことに注意してください。詳細については、エミュレータ スキンの作成をご覧ください。 |
AVD プロパティ
[Verify Configuration] ページで、AVD 構成の以下のプロパティを指定できます。 AVD 構成では、開発用コンピュータとエミュレータのインタラクションに加え、ハードウェア プロファイルでオーバーライドするプロパティを指定できます。
AVD 構成のプロパティはハードウェア プロファイルのプロパティをオーバーライドします。 エミュレータの実行中に設定したエミュレータ プロパティは、それら両方のプロパティをオーバーライドします。
AVD プロパティ | 説明 |
---|---|
AVD Name | AVD の名前。使用できるのは大文字と小文字の英字、0 から 9 までの数字、ピリオド(.)、アンダースコア(_)、丸かっこ(())、ダッシュ(-)、スペースです。 この AVD 名が、AVD 構成を保存するファイルの名前になります。 |
AVD ID (Advanced) | この ID が AVD ファイル名になり、コマンドラインから AVD を参照するのに使用できます。 |
Hardware Profile | [Change] をクリックすると、[Select Hardware] ページで異なるハードウェア プロファイルを選択できます。 |
System Image | [Change] をクリックすると、[System Image] ページで異なるシステム イメージを選択できます。新しいイメージをダウンロードする際はインターネット接続が必要です。 |
Startup Orientation | どちらかを選択して、エミュレータ画面の初期の向きを決定します。
このオプションはハードウェア プロファイルで選択している場合のみ、有効になります。ハードウェア プロファイルで縦向きと横向きの両方をサポートしている場合、エミュレータで AVD を実行している最中に画面の向きを切り替えることができます。 |
Camera (Advanced) | カメラを有効にするには、以下のどちらか、または両方を選択します。
[Emulated] 設定では、ソフトウェアで生成される画像を作成します。[Webcam] 設定では、開発用コンピュータのウェブカメラを使用して写真を撮影できます。 このオプションはハードウェア プロファイルで選択している場合のみ、有効になります。Wear OS と Android TV 向けには、このオプションは利用できません。 |
Network: Speed (Advanced) | データ転送速度を決定するネットワーク プロトコルを選択します。
|
Network: Latency (Advanced) | ネットワーク プロトコルを選択して、そのネットワーク プロトコルがある地点から別の地点へデータパケットを転送する際の遅延時間を設定します。 |
Emulated Performance: Graphics | エミュレータでのグラフィックのレンダリング方法を選択します。
|
Emulated Performance: Boot option (Advanced) |
|
Emulated Performance: Multi-Core CPU (Advanced) | エミュレータに使用するコンピュータ上のプロセッサコア数を選択します。プロセッサコア数が多いほどエミュレータが高速になります。 |
Memory and Storage: RAM | デバイスの RAM 容量。この値はハードウェア メーカーによって設定されていますが、エミュレータの動作を高速化したい場合など、必要に応じてオーバーライドできます。このサイズを大きくするほど、コンピュータのリソースをより多く使用します。RAM サイズを入力して、B(バイト)、KB(キロバイト)、MB(メガバイト)、GB(ギガバイト)、TB(テラバイト)から単位を選択します。 |
Memory and Storage: VM Heap | VM ヒープサイズ。この値はハードウェア メーカーによって設定されていますが、必要に応じてオーバーライドできます。ヒープサイズを入力して、B(バイト)、KB(キロバイト)、MB(メガバイト)、GB(ギガバイト)、TB(テラバイト)から単位を選択します。Android VM の詳細については、さまざまな仮想マシンでのメモリ管理をご覧ください。 |
Memory and Storage: Internal Storage | デバイスで利用可能な取り外しができないメモリ領域の容量。この値はハードウェア メーカーによって設定されていますが、必要に応じてオーバーライドできます。サイズを入力して、B(バイト)、KB(キロバイト)、MB(メガバイト)、GB(ギガバイト)、TB(テラバイト)から単位を選択します。 |
Memory and Storage: SD Card | デバイス上のデータの保存に利用できる取り外し可能なメモリ領域の容量。Android Studio で管理する仮想 SD カードを使用するには、[Studio-managed] を選択してサイズを入力し、B(バイト)、KB(キロバイト)、MB(メガバイト)、GB(ギガバイト)、TB(テラバイト)から単位を選択します。カメラを使用する場合は 100 MB 以上に設定することをおすすめします。この領域をファイルで管理するには、[External file] を選択し、[...] をクリックして、ファイルと場所を指定します。詳細については、mksdcard と AVD データ ディレクトリをご覧ください。 |
Device Frame: Enable Device Frame | エミュレータ ウィンドウの周りに表示されるフレームを有効にすると、実際のデバイスの外観を再現できます。 |
Custom Skin Definition(Advanced) | エミュレータを表示した際にデバイスの外観を決めるスキンを選択します。スキンに対して極端に大きい画面を指定すると、画面の一部がカットされるため、画面全体を表示できないことに注意してください。詳細については、エミュレータ スキンの作成をご覧ください。 |
Keyboard: Enable Keyboard Input (Advanced) | エミュレータと連携するハードウェア キーボードを使用したい場合は、このオプションを選択します。Wear OS と Android TV 向けには、このオプションは無効になっています。 |
エミュレータ スキンの作成
Android Emulator のスキンは、表示するエミュレータの外観やコントロールを定義した一式のファイルです。AVD 設定で利用可能なスキン定義の中に、自身の要件を満たすものがない場合は、自身でカスタムスキンの定義を作成して AVD に適用できます。
各エミュレータ スキンには次の内容が含まれます。
hardware.ini
ファイル- サポートする画面の向き(横向き、縦向き)と物理的な設定に対応したレイアウト ファイル
- 背景やキー、ボタンなどの表示要素用のイメージ ファイル
カスタムスキンの作成方法:
- スキン設定ファイルを保存するディレクトリを新規に作成します。
layout
という名前のテキスト ファイルでスキンの外観を定義します。このファイルでは、特定のボタンのサイズやイメージ アセットなど、スキンのさまざまな特徴を定義できます。次に例を示します。parts { device { display { width 320 height 480 x 0 y 0 } } portrait { background { image background_port.png } buttons { power { image button_vertical.png x 1229 y 616 } } } ... }
- 同じディレクトリにデバイス イメージ用のビットマップ ファイルを追加します。
- デバイス設定用の
hardware.ini
ファイルで、hw.keyboard
やhw.lcd.density
など、ハードウェア固有のデバイス設定を追加で指定します。 - スキンフォルダ内のファイルをアーカイブして、そのファイルをカスタムスキンとして選択します。
エミュレータ スキンの作成の詳細については、ツールのソースコードに含まれている Android Emulator スキンファイル仕様をご覧ください。