Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る

Android Emulator とシステム イメージのトラブルシューティングと既知の問題

このページには、Android Emulator の既知の問題、回避策、トラブルシューティングのヒントが掲載されています。

ここに掲載されていない問題が発生した場合、またはここに掲載された方法で問題を解決できない場合は、バグを報告してください。

十分なディスク空き容量の確認

十分なディスク空き容量がないことによるクラッシュとハングを回避するために、エミュレータは起動時に十分な空きディスク容量があるかどうかを確認し、少なくとも 2 GB の空きがない限り起動しません。エミュレータが起動しない場合は、十分な空きディスク容量があることを確認してください。

ウィルス対策ソフトウェア

セキュリティ ソフトウェアおよびウィルス対策ソフトウェア パッケージの多くは、すべての読み取りおよび書き込みオペレーションをモニタリングすることで機能します。そのため、それらのソフトウェアを使用すると、Android Emulator などのツールのパフォーマンスが低下することがあります。

多くのウィルス対策パッケージには、信頼できるアプリケーションのリストに特定のアプリケーションを追加できる機能があり、それらのアプリケーションはパフォーマンスを低下させることなく動作できます。AVD スナップショットの保存または読み込みを行う際にパフォーマンスが低下する場合は、ウィルス対策ソフトウェアに、Android Emulator アプリケーションを信頼できるアプリケーションとして追加すると、パフォーマンスを改善できます。

パフォーマンスへの影響は、ウィルス対策ソフトウェア パッケージによって異なります。オペレーティング システムに含まれているウィルス対策ソフトウェア以外に追加のウィルス対策ソフトウェアがインストールされている場合は、簡単なテストを実行して、エミュレータの読み込みおよび保存オペレーションのパフォーマンスに大きく影響するウィルス対策ソフトウェアを特定できます。

ウィルス対策ソフトウェアによっては、Android Emulator と互換性がない場合があります。

アバスト ソフトウェアを使用していて、Android Emulator の実行に問題がある場合は、アバストのトラブルシューティング設定で [利用可能な場合は、入れ子式仮想化を使用します] および [ハードウェアによる仮想化支援機能を利用する] を無効にしてみてください。さらに、アバストでハードウェアによる仮想化を無効にした後、SDK Manager から最新の HAXM をすべて再インストールし、再度適切にセットアップされたことを確認してください。

最新ではなく、現在サポートされていない Mac OS バージョン上の HAXM

最新ではなく、現在サポートされていない Mac OS X バージョン(10.9 など)で Android Emulator を使用している場合は、HAXM についても古いバージョン(6.1.2)を使用する必要があります。

アップデート後に Android Emulator の動作が遅い

さまざまな外部要因により、アップデート後に Android Emulator の動作が遅くなる場合があります。トラブルシューティングを開始するには、次の手順に従うことをおすすめします。

  • Windows で Android Emulator を実行している場合は、Windows Update の KB4013429 および KB4015217 がインストールされているかどうかを確認してください。これらの更新プログラムをアンインストールすると、Android Emulator のパフォーマンスが改善されたという報告が寄せられています。Windows Update の KB4015438インストールすると、エミュレータのパフォーマンスが改善された事例も報告されています。
  • Intel GPU(特に Intel HD 4000)を使用している場合は、最新の Intel グラフィック ドライバをダウンロードしてインストールしていることを確認してください。
  • Intel HD 4000 GPU とディスクリート GPU の両方がマシンに搭載されている場合は、デバイス マネージャーで Intel HD 4000 GPU を無効にして、ディスクリート GPU を使用してください。
  • -gpu angle-gpu swiftshader、または -gpu guest モードを使用してエミュレータを実行してみてください。コマンドラインでのグラフィック アクセラレーション オプションの設定については、ハードウェア アクセラレーションの設定をご覧ください。
  • IPv6 接続がない場合は、ルーターが IPv6 アドレスを使用していないことを確認してください。

上記の解決策を試しても Android Emulator の動作が遅い問題が引き続き発生する場合は、調査に必要な Android Emulator の詳細情報を記載してバグを報告してください。

Windows: RAM の空き容量とコミット チャージ

エミュレータは、起動時に Android ゲスト オペレーティング システムの RAM を初期化する必要があります。Windows では、実際のオペレーション中にメモリがオンデマンドでページインされる場合でも、エミュレータは起動時にフルサイズのゲストメモリを準備するように Windows に要求します。Windows は潜在的なワーキング セット全体を保持するのに十分な物理 RAM とページファイルの確保に対して消極的であるため、エミュレータは起動時にゲストメモリ全量を要求します。これにより、メモリを破棄するかさもなければ解放する機会がないまま、すべてのゲストメモリが急速にアクセスされるという最悪のケースに備えます。

このようにエミュレータが Windows にフルサイズのゲストメモリを確保するように要求すると、要求が現在のコミット制限(使用可能な物理 RAM とページファイルの合計)を超えてしまうことがあります。この場合、Windows は最悪のケースのワーキング セットが物理 RAM またはページファイルのいずれかに収まることを保証できないため、エミュレータの起動が失敗します。

一般的なケースでは、ページファイルと物理 RAM に割り当てられたハードドライブ容量は、エミュレータのほとんどのユースケースに余裕を持って対応できます。コミット制限を超えたためにエミュレータの起動が失敗した場合は、Windows タスク マネージャーの [パフォーマンス] タブで現在のコミット チャージを確認することをおすすめします(タスク マネージャーを開くには、Ctrl+Shift+Esc を押します)。

コミット制限を超える可能性はさまざまな方法で減少させることができます。

  • エミュレータを起動する前に、未使用のアプリケーションとファイルを閉じて物理 RAM を解放します。
  • サードパーティのメモリ管理およびメモリ圧縮ユーティリティを無効にします。こうしたユーティリティは、過剰なコミット チャージを非効率的に発生させ、システムをコミット制限に近づけるおそれがあります。
  • Windows ページファイルには、システム管理サイズを使用します。これにより、エミュレータやその他のアプリケーションからの需要の増加に応じて、より柔軟かつ動的にページファイルのサイズを(結果的にコミット制限も)増やすことができます。

    コミット チャージの詳細と、柔軟な設定が適切に機能する理由については、Microsoft のこちらの記事をご覧ください。