Android NDK 快速入门

设置您的开发环境

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

  • 使用 SDK 管理器安装 Android 原生开发套件 (NDK) 和 CMake,让 Android Studio 做好原生开发准备。如需了解详情,请参阅 NDK 入门指南

  • 您需要获取 ARCore SDK for Android。您可以执行以下任一项操作:

    • 下载 ARCore SDK for Android 并将其解压缩。

      或者

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

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

准备设备或模拟器

您可以在受支持的设备上或 Android 模拟器中运行 AR 应用。您必须先在模拟器上更新 Google Play 服务(适用于 AR),然后才能运行应用。如需了解详情,请参阅在 Android 模拟器中运行 AR 应用

打开示例项目

在 Android Studio 中,在 <ARCore SDK Folder>/samples/hello_ar_c 中打开 hello_ar_c 示例项目。

示例项目对特定版本的软件(例如 Gradle 和 Android SDK)具有构建依赖项。如果未安装所需的依赖项,Android Studio 会请求您授予在计算机上下载并安装这些依赖项的权限。

运行示例

确保您的 Android 设备已连接到开发机器,然后点击 Android Studio 中的 Run

Android Studio 会将您的项目构建为可调试的 APK,安装 APK,然后在您的设备上运行应用。如需了解详情,请参阅构建和运行应用

当您移动设备时,应用会自动检测平面并绘制菱形网格。点按网格可在表面上放置一个三维 ARCore 棋子。

使用即时展示位置

借助 Instant Placement API,用户无需等待 ARCore 检测 Surface 几何图形,即可在屏幕上放置 AR 对象。随着用户在环境中进一步移动,系统会实时优化对象放置。当 ARCore 在放置 AR 对象的区域检测到正确的姿势后,该对象会自动更新以使其姿势准确无误。

点按屏幕以放置对象。看到全息对象显示在屏幕上后,请务必继续移动设备,以便 ARCore 获取足够的周围环境数据,从而准确锚定虚拟对象。

即时展示位置

在图 1 中,即时展示位置已停用,并且 Surface 几何图形未定义。放置在桌球桌右侧地板上的物体(四个蓝色小圆点)看起来像是被推倒了,其姿势未定义。

在图 2 中,通过齿轮图标下的菜单启用了即时展示位置。

在图 3 中,启用“即时放置”后,系统会在场景中放置一个新对象。它以灰度(而非彩色)显示,表示尚未校正为准确的姿势。

在图 4 中,当检测到表面几何图形(由可跟踪网格线描述)时,新对象会变为彩色,并且其姿势准确无误。

使用深度

启用深度后,ARCore 会考虑场景中对象的几何图形和位置,并计算放置在场景中的对象相对于场景中其他对象的位置。它允许放置的对象被场景中的对象遮挡,并为您的应用增添真实感。

即时展示位置

在图 1 中,“深度”已停用。将一个物体放在桌球桌下。

在图 2 中,当设备在桌球桌周围移动时,对象似乎会跟随设备移动,而不会受到场景中其他对象的影响。

在图 3 中,“深度”已启用。

在图 4 中,随着设备在场景中移动,对象现在似乎被桌球桌遮挡了。

后续步骤