Androidのエミュレータは少し遅いです。 Motorola DroidやNexus Oneなどの一部のデバイスでは、アプリはエミュレータよりも実際のデバイスで高速に動作します。これはゲームや視覚効果をテストするときに問題になります。
どのようにしてエミュレータを可能な限り高速にしますか?私はそのパラメータでいじっていましたが、顕著な改善を示す設定をまだ見つけていません。
50%早くなりました
Android SDKのルートフォルダに移動し、extras\intel\Hardware_Accelerated_Execution_Managerに移動します。ファイルIntelHaxm.exeを実行してインストールします。 (Android Studioでは、設定 - > Android SDK - > SDKツール - > Intel x86 Emulator Accelerator(HAXMインストーラ)に移動できます)。
"Intel atom x86" CPU/ABIでAVDを作成する
また、これをインストールすることを忘れないでください
P.S AVD作成中にエミュレーションメモリを追加する:ハードウェア/新規/デバイスRAMサイズ/設定値512以上
P.S:このツールをチェックしてください、とても便利です 体験版
更新:Intel x86イメージが利用可能になったので、最良の答えは上記のzestによるものです。
CommonsWareが正しく指摘しているように、エミュレータはARM CPUをエミュレートするので遅くなります。これにはIntelオペコードへの変換が必要です。この仮想化はCPUをかみ砕く。
エミュレータを高速にするには、CPUを増やさなければなりません。高速のCPUから始めるか、可能であればアップグレードしてください。
それから、エミュレータにあなたが持っているより多くのCPUを渡します。
これら2つの変更を加えて、どこかで50%の改善が見られます。
Windows 7でプロセッサアフィニティを設定するには
注:この方法でアフィニティーを変更した場合、それはプロセスの存続期間中にのみ変更されます。次回は、もう一度やらなければなりません。
Genymotion スピンをかけることをお勧めします。これはOracleのVirtualBoxで動作し、適度なシステムでは合法的に60 fpsに達するでしょう。
これは私のワークショップの1つで、2012年のローエンドモデルのMacBook Airで実行したスクリーンキャップです。
テキストが読めない場合は、56.6 fpsで動作するNexus 7エミュレータです。追加の(大きな!)ボーナスは、Google PlayとGoogle Play Servicesが仮想マシンに同梱されていることです。
(デモアニメーションのソース ここで見つけることができます 。)
API 15 v3以降およびSDK Tools v17 +を使用している場合は、IntelのHAXMに加えて] --- [GPU Hardware Accelerationを有効にします。エミュレータのグラフィックスアクセラレーションは、開発用コンピュータのグラフィックスハードウェア、特にそのグラフィックスプロセッシングユニット(GPU)を利用して、画面の描画を高速化します。これにより、速度が大幅に向上します。
エミュレータでデフォルトでグラフィックアクセラレーションを有効にする:AVDを作成するときは、[ハードウェア]セクションの[新規作成]をクリックし、[GPUエミュレーション]を選択して値を[はい]に設定します。
実行時にのみアクセラレーションを有効にする:このようにエミュレータを起動するときに-gpuフラグを使用します。
emulator -avd <avd_name> -gpu on
編集Intelイメージを使用するとパフォーマンスが若干向上しますが、Genymotionを使用するとパフォーマンスが向上します。 Paul Lammertsmaの答え を参照してください。
前回の回答
ADT rev 17では、エミュレータはWindowsおよびMac OS X上で仮想化モードでx86システムイメージを実行することをサポートします。これはパフォーマンスに大きな影響を与えます。
ADT rev 17リアクション: http://Android-developers.blogspot.jp/2012/03/updated-sdk-tools-and-adt-revision-17.html
仮想マシンアクセラレーションの設定: http://developer.Android.com/guide/developing/devices/emulator.html#accel-vm
私は最近、3 GBのRAMを搭載した2.5コアのコアから8 GBのRAMを搭載したi7 @ 1.73に切り替えました(どちらのシステムもUbuntu 10.10を実行していました)。それにもっと多くのハードウェアを投げることは確かに役に立ちます。
Intel HAXMアクセラレータをインストールしてIntel Atomイメージを使用した後は、エミュレータの実行速度が50倍速くなったようです。違いは素晴らしいです、それをチェックしてください!
http://www.developer.com/ws/Android/development-tools/haxm-speeds-up-the-Android-emulator.html
私は、エミュレータのデフォルトはCore 0のみで、ほとんどのWindowsアプリケーションはデフォルトで "any"コアになっていることに気付きました。また、(最後のコアのように)別のコアに置くと、エミュレータがおかしくなる可能性があります。可能であれば、CPU使用率の高いアプリケーションを他のCPUコアに配置して速度を上げることができます。
ハードウェア的には、シングルコアアプリケーションで動作する最速のCPUを入手してください。 2コアを超えるコアでは、エミュレータのパフォーマンスに関して大きな違いはありません。
Eclipse + Androidエミュレータは一緒に大量のRAMを消費します。少なくとも2ギガバイトのRAMを搭載したシステムを使用したため、3ギグのRAMを使用することをお勧めします。また、システムがRAMを使い果たし、ページファイルを使用し始めたため遅くなりました。
私はそれに最適なCPUはおそらく高いクロック(同じシリーズのCPUのための手段としてクロックを使用するだけ)を持ち、非SIMD操作をうまく処理し、そしてターボブーストメカニズムを持つことになると思う。 Javaベースのベンチマークはそれほど多くありませんが、全体的には圧縮やオフィスなどのアプリケーションベンチマークを探してください。ゲームやメディアは、SIMDの影響を大きく受けるので見ないでください。あなたがJavaのものを見つけたなら、もっと良いです。
今年のGoogle I/O(2011)で、Googleはより速いエミュレータを実演しました。問題はARMとx86の間のバイトコードではなく、QEMUによって実行されるソフトウェアレンダリングです。それらはQEMUのレンダリングを迂回して、私が信じているXサーバーに直接レンダリングを送ります。彼らは本当に良いパフォーマンスとfpsの車のゲームを見せた。
それがいつ開発者に利用できるようになるのでしょうか。
Googleは最近、Android用の新しいエミュレータを発表しました。それは昔のものよりずっと速くて良いです。あなたはそれについてのより多くの情報を見つけることができます こちら 。
ありがとう@zest!魅力のように働いた。注目すべきいくつかのこと:カーネルパニック問題に対処するためにHAXMのためのIntelのホットフィックスを適用する必要があります: http://software.intel.com/en-us/Android/articles/intel-hardware-accelerated-execution-マネージャー また、ノート、複数のABIを持っている場合、あなたはAndroidのAPI(R19)の最新バージョンでバグのため1をアンインストールする必要があります https://code.google.com/p/Android/issues/detail?id = 6674 (この場合はarmeabi-v7aを削除します(x86 abiが必要です))。これらを解決するのに45分かかったことを除けば、エミュレータのパフォーマンスが向上したという点で非常にやりがいのある作業でした。
これは、clr仮想マシンがコードのオペコード変換を行わずに直接cpuを使用するためであると思います。それはclrアプリケーションのための最適化であるかもしれませんまたはINTELプロセッサで開始されるwindows mobile/window phone 7であるかもしれません。 Linuxに基づくAndroidプラットフォームと理論上は、i686環境の仮想マシンでAndroidを起動できます。この場合、vmwareなどの仮想マシンは一部のオペコードを直接実行する可能性があります。しかし、このオプションはJavaで書いた場合にのみ許可されます。なぜなら、Javaは実行前に自分のバイトコードを解釈するか、それをプリコンパイルするからです。参照してください: http://www.taranfx.com/how-to-run-google-Android-in-virtualbox-vmware-on-netbooks
エミュレータに代わるものとしてAndroVM仮想マシンがあります。これはエミュレータよりはるかに高速で動作し、OpenGLアクセラレーションをサポートします。
逸話的に、私はそれが実際のAndroidデバイスより速く走ると感じます。
エミュレータの代わりにGenymotionを使用してください。 Genymotionはより良いパフォーマンスを持っています https://www.genymotion.com
私はIntel(86)CPU/ABIを使っています。私はARM(armeabi-v7a)を使用して別のエミュレータを作成しました、そして私はスピードに関してかなりの改善を見つけました。プラットフォーム4.1.2 APIレベル16を使用しています。
スタンドアローンエミュレータとしてインストールすることもできる Visual Studio Android Emulator を試すこともできます(Visual Studioは必要ありません)。 Windows Pro以降のシステムにのみインストールできます。
これがお役に立てば幸いです。
Goto to your BIOS settings. Enable your Virtualization technology in your settings..
それは私の問題を解決しました...
現在のAndroid Studioを Android Studio 2.0 に更新します。また、システムイメージも更新します。
Android Studio 2.0エミュレータは、Androidの以前のエミュレータよりも約3倍高速で動作します。ADBの機能強化により、アプリケーションやデータを物理デバイスよりも10倍高速にエミュレータにプッシュできるようになりました。物理的なデバイスと同様に、公式のAndroidエミュレータにもGoogle Play Servicesが組み込まれているため、より多くのAPI機能を試すことができます。最後に、新しいエミュレータには通話、バッテリ、ネットワーク、GPSなどを管理するための豊富な新機能があります。
あなたが良いグラフィックカードを持っていないのであれば、低解像度のエミュレータ(例:Nexus S)を選んでください(私のように)