使用 Android 模拟器 测试 AR 场景,而无需使用实体设备。借助 Android 模拟器,您可以在虚拟环境中运行 ARCore 应用,并使用受您控制的模拟设备。
设置您的开发环境
软件要求:
Android Studio 3.1 或更高版本。
Android 模拟器 27.2.9 或更高版本。
获取适用于 ARCore 的 Android Studio 和 SDK 工具
安装 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 虚拟设备 (AVD)
在 Android Studio 中,依次点击 Tools > Device Manager 打开 设备管理器 。
点击 设备管理器 面板顶部的 Create Device 。
选择或创建所需的 手机 硬件配置文件,然后选择 Next 。
选择运行 API 级别 27 或更高版本 的
x86或x86_64系统映像,然后选择 Next。虽然实体 ARCore 设备支持 API 级别 24 或更高版本,但 Android 模拟器支持需要 API 级别 27 或更高版本。
仅支持基于 x86 的 Android 模拟器架构。目前不支持其他架构,例如
arm64-v8a、armeabi-v7。
验证您的虚拟设备是否已正确配置:
点击 Show Advanced Settings 。
确保 Camera Back 设置为 VirtualScene 。
点击 Finish 以创建 AVD。
运行应用
在模拟器中,在支持 AR 的虚拟设备上测试 ARCore 应用。为此,您可以按照 Android Studio 说明在 Android 模拟器中运行应用。
更新“面向 AR 的 Google Play 服务”
模拟器上的“面向 AR 的 Google Play 服务”版本可能已过时。请按照以下说明进行更新:
从 GitHub 版本页面下载最新的 Google_Play_Services_for_AR_1.54.0_x86_for_emulator.apk 。
将下载的 APK 安装到您要使用的每个 AVD 中:
启动所需的 AVD,然后将下载的 APK 从系统文件夹(即 Downloads) 拖到正在运行的 模拟器上,或者在虚拟设备运行时使用
adb安装它:adb install -r Google_Play_Services_for_AR_1.54.0_x86_for_emulator.apk
对您要使用的任何其他 AVD 重复这些步骤。
控制虚拟场景
当您的应用连接到 ARCore 时,您会看到一个叠加层,其中介绍了如何控制摄像头,以及模拟器窗口下方的状态栏。
移动虚拟摄像头
按住 Shift 即可访问摄像头移动控件。 使用以下控件移动摄像头:
| 操作 | 您需要采取的措施 |
|---|---|
| 向左或向右移动 | 按住 Shift \+ 按 A 或 D |
| 向下或向上移动 | 按住 Shift \+ 按 Q 或 E |
| 向前或向后移动 | 按住 Shift \+ 按 W 或 S |
| 更改设备屏幕方向 | 按住 Shift + 移动鼠标 |
松开 Shift 以返回到模拟器中的互动模式。
使用“扩展控件”中的 Virtual Sensors 标签页,可以更精确地定位设备。
向场景添加增强图像
将图像加载到模拟器的模拟环境中,以测试增强图像。
使用Extended controls 中的 Camera 标签页添加或修改Scene images。 有两个图像位置,一个在墙上,一个在桌子上。
如需在场景中查看这些图像位置,请启动模拟器,然后将摄像头移动到餐厅区域,穿过摄像头起始位置后面的门。
问题排查提示
如果您的 ARCore 应用启动后,您看到“This device does not support AR”(此设备不支持 AR)消息,请检查系统映像的版本。确保您使用的是 API 级别 27 修订版本 4 或更高版本 。
如果您的 ARCore 应用在启动时无法打开摄像头,请确保 Camera Back 设置为 VirtualScene, 如上述配置步骤中所述。
如果您的 ARCore 应用无法打开,并显示错误消息“Failed to create AR session”(无法创建 AR 会话),请检查应用日志。如果您发现
java.lang.UnsatisfiedLinkError,并且消息包含/lib/arm/libarcore_c.so" is for EM_ARM (40) instead of EM_386 (3),则可能是您安装了错误版本的 面向 AR 的 Google Play 服务 apk。创建新的虚拟设备并安装 x86 版本。


