Android Emulator を使用して、実機なしで AR シナリオをテストします。Android Emulator を使用すると、エミュレートしたデバイスを制御して、仮想環境で ARCore アプリを実行できます。
開発環境を設定する
ソフトウェア要件:
Android Studio 3.1 以降。
Android Emulator、27.2.9 以降。
ハードウェア要件:
- アプリでシーンシーンを使用するには、OpenGL ES 3.0 以降をサポートする開発マシンも必要です。
ARCore 用の Android Studio と SDK ツールを入手する
Android Studio 3.1 以降をインストールします。
Android Studio で、[Preferences] > [Appearance and Behavior] > System Settings > Android SDK に移動します。
[SDK Platforms] タブを選択し、[Show Package Details] をオンにします。
[Android 8.1 (Oreo)] で、以下を選択します。
Google API Intel x86 Atom System Image API レベル 27、バージョン 4 以降。[SDK Tools] タブを選択し、Android Emulator 27.2.9 以降を追加します。
[OK] をクリックして、選択したペースとツールをインストールします。
もう一度 [OK] をクリックして、変更を確定します。
コンポーネント インストーラのライセンス契約に同意します。
[Finish] をクリックします。
AR をサポートする仮想デバイスを作成する
Android Studio の手順に沿って、AR をサポートする仮想デバイスを作成します。
仮想デバイスを構成する
- Pixel または Pixel 2 のハードウェア プロファイルを選択します。
- [Oreo: API Level 27: x86: Android 8.1 (Google APIs)] システム イメージを選択します。
仮想デバイスが正しく構成されていることを確認します。
- [設定を確認] > [詳細設定を表示] に移動します。
- [Camera Back] が [VirtualScene] に設定されていることを確認します。
シーン構成をサポートするようにエミュレータを構成する
シーンには OpenGL ES 3.0 以降が必要です。
OpenGL ES の最新バージョンを使用するようにエミュレータが構成されていることを確認します。
- 実行中のエミュレータのツールバーで、 をクリックします。
- [Settings > Advanced > OpenGL ES API level > Renderer maximum (up to OpenGL ES 3.1)] を選択します。
- エミュレータを再起動します。プロンプトが表示されたら、現在の状態を保存しないでください。
エミュレータを再起動した後、エミュレートされたデバイスを一時的に操作し、デバイスログを grepg して OpenGL ES 3.0 以降が使用されているかどうかを確認します。
adb logcat | grep eglMakeCurrent
ver 3 0
以降のバージョンが表示されている場合は、エミュレータでシーンアプリを実行できます。… … … … D EGL_emulation: eglMakeCurrent: 0xebe63540: ver 3 0 (tinfo 0xd104cb40)
これより前のバージョンが表示された場合、デスクトップ GPU は OpenGL ES 3.0 をサポートしていないため、代わりにサポートされているデバイスを使用してシーンシーン アプリを実行する必要があります。
アプリを実行する
エミュレータで AR 対応仮想デバイスで ARCore アプリをテストします。そのためには、Android Studio の手順に沿って Android Emulator でアプリを実行します。
Google Play 開発者サービス(AR)を更新する
エミュレータ上の AR 用 Google Play 開発者サービスのバージョンが古い可能性があります。次の手順に沿って更新してください。
GitHub のリリース ページから、最新の Google_Play_Services_for_AR_1.15.0_x86_for_emulator.apk をダウンロードします。
ダウンロードした各 AVD に、ダウンロードした APK をインストールします。
目的の AVD を起動し、ダウンロードした APK を実行中のエミュレータにドラッグするか、仮想デバイスの実行中に
adb
を使用してインストールします。adb install -r Google_Play_Services_for_AR_1.15.0_x86_for_emulator.apk
使用したい AVD があれば、この手順を繰り返します。
仮想シーンを操作する
アプリが ARCore に接続すると、エミュレータの下部にカメラを制御する方法を説明するオーバーレイとステータスバーが表示されます。
仮想カメラを移動する
option(macOS)または Alt(Linux または Windows)を長押しして、カメラの移動コントロールにアクセスします。カメラを移動するには、以下のコントロールを使用します。
プラットフォーム | アクション | 必要なご対応 |
---|---|---|
macOS | 左右に移動する | option を押しながら A または D |
下または上に移動 | option を押しながら Q または E | |
前後に移動 | option を押しながら W または S | |
デバイスの向きを変更する | option+マウスの長押し | |
Linux または Windows | 左右に移動する | Alt キーを押しながら A または D を押す |
下または上に移動 | Alt を押しながら Q または E | |
前後に移動 | Alt を押しながら W または S | |
デバイスの向きを変更する | Alt+マウスの長押し |
Option または Alt を離すと、エミュレータのインタラクティブ モードに戻ります。
デバイスの拡張の位置をより正確に設定するには、[Extended controls] の [Virtual Sensors] タブを使用します。
トラブルシューティングのヒント
ARCore アプリが起動したときに「AR Core はサポートされていません」というメッセージが表示された場合は、システム イメージのリビジョンを確認してください。API レベル 27 リビジョン 4 を使用していることを確認します。
ARCore アプリが起動時にカメラを開くことができない場合は、上記の構成手順で説明したように、[Camera Back] が VirtualScene に設定されていることを確認します。