Android WearおよびTVアプリ開発にIntel HAXMを使用する

Androidプラットフォームには長い道のりがあります。 それはすべてスマートフォンから始まり、タブレット、そしてGoogle TV、Android Wear、Android TV(Google TVの代わり)、そして最後にAndroid Autoを実行するデバイスがありました。 このような多様性に対応するように設計されたアプリケーションの構築とテストは、開発者にとって困難な場合があります。 また、ここにさまざまなフォームファクターとデバイスの画面解像度を追加すると、プログラムの包括的な検証とテストの問題にすぐに遭遇する可能性があります。 どうする? 幸いなことに、 Intel HAXMがあります。


予備情報


Intel Hardware Accelerated Execution Manager (HAXM)は、ハードウェア仮想化をサポートするAndroidエミュレーターです。 システムの負荷を軽減し、優れたパフォーマンスと高速インターフェイスを備えています。

Intel HAXMを使用すると、パフォーマンス、システム負荷、またはインターフェイスの「ブレーキ」を心配することなく、1台のコンピューターでAndroidエミュレーターの複数のインスタンスを実行できます。 このようなアプローチは、アプリケーションの作成とテストの反復プロセスで非常に役立ち、開発者の生産性を大幅に向上させることができます。

x86以外のアーキテクチャ向けに設計されたAndroidエミュレーターのイメージは、起動が遅く、ユーザーコマンドに遅れて応答する場合があります。 さらに、一部のサードパーティ製Androidエミュレーターとは異なり、Intel HAXMを使用すると、リリース後すぐに最新バージョンのAPIおよびAndroidプラットフォームで作業する機会が得られます。

ここでは、詳細なHAXMマニュアルを見つけることができます。

この記事では、あらゆる種類のAndroidプラットフォームオプション用に設計されたアプリケーションを作成する際に、Intel HAXMの機能を使用する方法について説明します。 このようなアプリケーションは、さまざまなフォームファクターの通常のスマートフォンや、Android WearとAndroid TVを搭載したデバイスで動作します。

Android用の汎用サンプルアプリケーションを使用する


Googleは最近、1つのコードベースでさまざまなAndroidデバイスをカバーする方法を示すアプリケーションをリリースしました。

この例は、ユニバーサルアプリケーションの開発に対する高度なアプローチを示しています。 プロジェクトをビルドするには、上記のリンクにある手順を使用してください。 この実用的なガイドでは、Android TV、Wear、およびスマートフォンのx86 HAXMエミュレーターの例を試します。

プロジェクトをAndroid Studioにインポートし、この環境の機能を利用して、エミュレーターでアプリケーションをビルドおよび実行できます。 別のIDEを使用したい場合は、後で説明するものも役立ちます。

コマンドラインインターフェイスが近くにある場合は、Gradleスクリプトを実行するだけで、サンプルのソースコードを含むフォルダーからアプリケーションをビルドできます。

gradlew assembleDebug 

結果のAPKファイルは、「mobile / build / outputs / apk / mobile-debug.apk」フォルダにあります。

Android TVおよびWear用のAVDを作成する


まず、Android TV、Wear、および通常のスマートフォン用の最新のエミュレーターイメージがあることを確認する必要があります。

Android SDK Managerを開きます。 次のコマンドを使用して、Android Studioインターフェースまたはコマンドライン(<Android-SDK> / toolsフォルダーを環境変数で指定する必要があります)から起動できます。

 > android 


Android SDK Managerウィンドウ。 ロードするシステムの画像が強調表示されます

必要なパッケージをダウンロードしたら、適切なシステムイメージを使用するようにエミュレーター構成を構成する(つまり、AVDセットを作成する)必要があります。 これを行うには、Android Virtual Device Managerが必要です。 コマンドラインから実行します。

 > android avd 


Android Virtual Device Managerウィンドウでは、ここで新しいAVDを作成し、既存のAVDを構成できます

Android Wearエミュレーション


次の図に示すように、Android Wearの仮想デバイスを構成します。


Android Wearのエミュレーター構成をカスタマイズする

設定が完了したら、[OK]をクリックしてから、エミュレータを実行します。 これを行うには、AVD Managerウィンドウでそれを選択し、スタートボタンをクリックします。 これは、エミュレータウィンドウの外観です。


Android Wearエミュレーターウィンドウ

スマートフォンがAndroid Wearを実行しているデバイス(または適切なエミュレーター)と対話するには、追加のアプリケーションが必要です 。 このアプリケーションをデバイスにインストールする唯一の方法は、Google Playストアからダウンロードすることです。 したがって、ストアにアクセスできるAndroidスマートフォンが必要です。

デバイスはADBで使用可能でなければなりません。 エミュレータに接続できるようにするには、スマートフォンとエミュレータの両方がデバイスのリストに存在する必要があります。デバイスのリストは、次のコマンドで取得できます。
 > adb devices 



接続されたデバイスのリスト

次のコマンドでTCPポートをリダイレクトします。

 > adb -d forward tcp:5601 tcp:5601 

これで、Android Wearエミュレーターとハードウェアデバイスをペアリングする準備がすべて整いました。 スマートフォンでAndroid Wearアプリケーションを起動し、メニューからエミュレータに接続するコマンドを実行するだけです。 接続に成功すると、エミュレータ画面は図の左側に表示されているようになります。 右側には、スマートフォンに接続されていないエミュレーターの画面が表示されます。


接続済み(左)および未接続(右)状態のAndroid Wearエミュレーター画面

Android Wearアプリの作成の詳細については、 こちらをご覧ください 。 テストアプリケーションのAPKは他のAPKと違いはありません。ADBを使用してAndroid Wearエミュレーターにインストールできます。

 > adb -s emulator-5554 install -r mobile\build\outputs\apk\mobile-debug.apk 

次のコマンドを使用して、アプリケーションがエミュレータにインストールされているかどうかを確認できます。

 > adb -s emulator-5554 shell pm list packages | grep example 


エミュレーターにアプリケーションをインストールし、インストールを確認します

サンプルアプリケーションのパッケージ名(com.example.android.uamp)が一覧表示されます。 コマンドラインから、アプリケーションを起動できます。

 > adb -s emulator-5554 shell monkey -p com.example.android.uamp -c android.intent.category.LAUNCHER 1 

これで、アプリケーションはAndroid Wearエミュレーターで実行されます

Android TVエミュレーション


次の図に示すように、Android TVの仮想デバイスの構成を作成しましょう。


Android TVのエミュレーター構成設定

設定後、[OK]ボタンをクリックし、[ADVマネージャー]ウィンドウの[スタート]ボタンでエミュレーターを起動します。

次のコマンドを使用して、ADBのエミュレータの可用性を確認できます。

 > adb devices 

エミュレーターID(emulator-55xxなど)を書き留めるか、覚えておいてください。 ADBを使用してエミュレータを操作する場合、ターゲットデバイスを示す必要があります。 エミュレータにアプリケーションをインストールするには、次のコマンドを使用できます。

 > adb -s emulator-55xx install -r mobile/build/outputs/apk/mobile-debug.apk 


次のように、Android TVエミュレーターでアプリケーションを実行できます。

 > adb -s emulator-55xx shell monkey -p com.example.android.uamp -c android.intent.category.LAUNCHER 1 

これは、アプリケーションがエミュレータ画面上でどのように見えるかです。


Android TVエミュレーターで実行されるアプリケーション

必要な数のエミュレーターのインスタンスを作成して実行する


アプリケーションの開発およびテスト中に、エミュレーターのいくつかのインスタンスを作成して実行する必要がある場合-これはすべて、インテルHAXMを使用して実現できます。 HAXMをインストールするときに、その操作に割り当てられるRAMのサイズを構成できます。 以下は、Android Wear、TV、およびスマートフォン用のAVD構成のセットです。


Android仮想デバイスのリスト

以下に、3つの仮想デバイス(Android TV、Wear、およびスマートフォンエミュレーター)で同時に実行されているサンプルアプリケーションを示します。 CPU使用率に関する情報も表示されます。 ご覧のとおり、エミュレータのこれらのインスタンスはすべて、システムに過度の負荷をかけません。


同時に実行される3つのエミュレータと、それらが作成するシステムの負荷に関する情報

このプロセスでは、エミュレーターのメモリの割り当てを構成して、システムリソースの消費を最適化できます。 HAXMのインストール中に指定されたメモリ割り当てパラメーターを再構成するには、インストールを再開し、必要なパラメーターを指定する必要があります。

まとめ


この記事では、Intel HAXMのコア機能を紹介しました。 ここでは、Androidエミュレーターの使用と構成に関する詳細を見つけることができます。 HAXMが正しくインストールされていること、およびエミュレーターでの作業時に使用されるかどうかを確認するには、 この資料を参照しください。 Intel HAXMが、このプラットフォームで実行されるさまざまなデバイス向けのAndroidアプリケーションの開発における信頼できるアシスタントになることを願っています。

Source: https://habr.com/ru/post/J265791/


All Articles