适用于 Android 的地理空间快速入门

本 ARCore Geospatial API 快速入门将向您介绍如何在 Android Studio 中运行一个演示 Geospatial API 的示例应用。

如需获取使用 Geospatial API 开发自己的应用的指南,请参阅 Android Geospatial 开发者指南 (Kotlin/Java)Android NDK (C) 的 Geospatial 开发者指南

如需详细了解 Geospatial API,请参阅 ARCore Geospatial API 简介

如果您是第一次使用 ARCore 进行开发,请参阅使用入门

要求

设备支持

如需查看经认证可与 ARCore 配合使用的设备的完整列表,请参阅支持的设备。对于 Geospatial API,所需的关键硬件之一是符合 Geospatial API 规范的磁力计。某些磁力计不符合规格;不支持使用这些规格外的磁力计的设备。

软件

  • 支持的设备上安装的最新版面向 AR 的 Google Play 服务

  • Android Studio 3.0 或更高版本,以及 Android SDK Platform 7.0(API 级别 24)或更高版本

  • ARCore SDK for Android,您可以通过以下两种方式之一获得:

    • GitHub 下载并将其解压缩到您的机器上。

    • 使用以下命令克隆代码库:

      git clone https://github.com/google-ar/arcore-android-sdk.git

打开并设置示例应用

ARCore SDK for Android 附带的 geospatial_java 项目介绍了调用 Geospatial API 的代码。

  1. 在 Android Studio 中,从 File 菜单中点击 Open

  2. 进入 arcore-android-sdk 的项目文件夹。

  3. 打开 samples 文件夹,选择 geospatial_java 文件夹,然后点击 Open

设置 Google Cloud 项目

如需使用视觉定位系统 (VPS),您的应用需要与为 ARCore API 启用的 Google Cloud 项目关联。请参阅使用 Google Cloud 上的 ARCore API 来设置授权。您可以选择无密钥授权或 API 密钥授权。

运行示例应用

在 Android Studio 中,运行示例应用。

您应该能够看到相机视图以及描述设备当前地理空间姿势的调试信息。当您扫描周围的环境时,请注意,如果您所在的区域受 VPS 本地化支持,定位准确性置信度值可能会随着移动而发生变化。

当 ARCore 确信设备的位置和方向时,您可以使用地理空间姿势将锚点放置在当前位置。

如果 VPS 信息不可用,定位精确度可能过低。应用必须连接到互联网,并且 VPS 必须知道其位置。为获得最佳效果,请在白天在室外(而非室内)运行示例应用。

此外,如果您所在的区域不支持 VPS,或者 GPS 信号不足,您可能需要在应用中调整置信度阈值,才能放置锚点。

如要调整这些阈值:

  1. 在 Android Studio 中,打开 GeospatialActivity 并浏览到以下部分:

    // The thresholds that are required for horizontal and heading accuracies before entering into the
    // LOCALIZED state. Once the accuracies are equal or less than these values, the app will
    // allow the user to place anchors.
    private static final double LOCALIZING_HORIZONTAL_ACCURACY_THRESHOLD_METERS = 10;
    private static final double LOCALIZING_HEADING_ACCURACY_THRESHOLD_DEGREES = 15;
    
  2. 请根据需要调整这些值。值越高,准确度越低

    降低精度可让应用在放置锚点时增加更宽的纬度。如需了解详情,请参阅调整姿势精确度

后续步骤