Android Emulator を使用して、実機なしで AR シナリオをテストします。Android Emulator を使用すると、制御しているエミュレートされたデバイスを使用して、仮想環境で ARCore アプリを実行できます。
開発環境を設定する
ソフトウェア要件:
Android Studio 3.1 以降。
Android Emulator 27.2.9 以降。
ARCore 用の Android Studio と SDK Tools を入手する
Android Studio 3.1 以降をインストールします。
Android Studio で Preferences > Appearance and Behavior > System Settings > Android SDK に移動します。
[SDK Platforms] タブを選択し、[Show Package Details] チェックボックスをオンにします。
該当する Android バージョンで、以下を選択します。
Google APIs Intel x86 Atom System Image API レベル 27 以降。[SDK Tools] タブを選択して、Android Emulator 27.2.9 以降を追加します。
OK をクリックして、選択したパッケージとツールをインストールします。
もう一度 [OK] をクリックして変更を確定します。
Accept: コンポーネント インストーラに関する使用許諾契約。
[Finish] をクリックします。
AR 対応の仮想デバイスを作成する
詳しくは、Android Studio で仮想デバイスを作成するの手順をご覧ください。
新しい Android Virtual Device(AVD)を作成する
Android Studio で Tools > Device Manager をクリックしてデバイス マネージャーを開きます。
[Device Manager] パネルの上部にある Create Device をクリックします。
目的の電話ハードウェア プロファイルを選択または作成して、[Next] を選択します。
API レベル 27 以降を実行している
x86
またはx86_64
システム イメージを選択し、Next を選択します。物理 ARCore デバイスは API レベル 24 以降でサポートされていますが、Android Emulator のサポートには API レベル 27 以降が必要です。
x86 ベースの Android Emulator アーキテクチャのみがサポートされています。
arm64-v8a
、armeabi-v7
などの他のアーキテクチャは現在サポートされていません。
仮想デバイスが正しく構成されていることを確認します。
[Show Advanced Settings] をクリックします。
Camera Back が VirtualScene に設定されていることを確認します。
Finish をクリックして AVD を作成します。
アプリを実行する
エミュレータを使用して、AR 対応の仮想デバイスで ARCore アプリをテストします。そのためには、Android Studio の手順に沿って Android Emulator でアプリを実行するをご覧ください。
Google Play 開発者サービス(AR)を更新する
エミュレータの Google Play 開発者サービス(AR)のバージョンが古い可能性があります。更新の手順は次のとおりです。
GitHub のリリースページから最新の Google_Play_Services_for_AR_1.44.0_x86_for_emulator.apk をダウンロードします。
ダウンロードした APK を、使用する各 AVD にインストールします。
目的の AVD を起動し、ダウンロードした APK をシステム フォルダ(Downloads など)を実行中のエミュレータにインストールするか、仮想デバイスの実行時に
adb
を使用してインストールします。adb install -r Google_Play_Services_for_AR_1.44.0_x86_for_emulator.apk
使用したい AVD が他にもある場合は、上記の手順を繰り返します。
仮想シーンを制御する
アプリが ARCore に接続すると、エミュレータ ウィンドウの下に、カメラの制御方法を説明するオーバーレイとステータスバーが表示されます。
仮想カメラを移動する
カメラの移動コントロールにアクセスするには、Shift を長押しします。 カメラを移動するには、次のコントロールを使用します。
アクション | 必要な対応 |
---|---|
左右に移動 | Shift+A または D キーを押す |
下または上に移動 | Shift+Q または E キーを押す |
前後に移動 | Shift+W または S キーを押す |
デバイスの向きを変更する | Shift キーを押したままマウスを移動 |
Shift を離して、エミュレータのインタラクティブ モードに戻ります。
デバイスの位置をより正確に設定するには、[Extended controls] の Virtual Sensors タブを使用します。
拡張画像をシーンに追加する
エミュレータのシミュレーション環境に画像を読み込んで、拡張画像をテストします。
Extended controls の Camera タブを使用して、Scene images を追加または変更します。画像は 2 か所あります。1 つは壁、もう 1 つはテーブルです。
シーン内のこれらの画像の位置を確認するには、エミュレータを起動し、カメラの開始位置の裏にあるドアからダイニング エリアにカメラを移動します。
トラブルシューティングのヒント
ARCore アプリが起動し、「このデバイスは AR をサポートしていません」というメッセージが表示される場合は、システム イメージのリビジョンを確認します。API レベル 27 リビジョン 4 以降を使用していることを確認します。
ARCore アプリの起動時にカメラを開けない場合は、上記の構成手順で説明されているように、Camera Back が VirtualScene に設定されていることを確認してください。
ARCore アプリが開かず、「Failed to create AR session」というエラー メッセージが表示される場合は、アプリログを確認します。
/lib/arm/libarcore_c.so" is for EM_ARM (40) instead of EM_386 (3)
を含むメッセージでjava.lang.UnsatisfiedLinkError
が見つかった場合は、間違ったバージョンの Google Play 開発者サービス(AR) APK をインストールしている可能性があります。新しい仮想デバイスを作成し、x86 バージョンをインストールします。