地理空间 API 和云锚点等 ARCore 功能使用 Google Cloud 上托管的 ARCore API。使用这些功能时,应用会使用凭据来访问 ARCore API 服务。
本快速入门介绍了如何设置应用,以便其可以与 Google Cloud 上托管的 ARCore API 服务进行通信。
创建新的 Google Cloud 项目或使用现有项目
如果您有现有项目,请选择该项目。
如果您还没有 Google Cloud 项目,请创建一个。
启用 ARCore API
如需使用 ARCore API,您必须在项目中启用该 API。
设置授权方法
Android 应用可以使用两种不同的授权方法与 ARCore API 通信:无密钥授权 (OAuth 2.0)(推荐方法)和 API 密钥授权:
- 无密钥授权会结合使用应用的软件包名称和签名密钥的指纹来授权您的应用。
- API 密钥是一个用于标识 Google Cloud 项目的字符串。人们普遍认为 API 密钥是不安全的,因为客户端通常可以访问 API 密钥。考虑使用无密钥授权与 ARCore API 进行通信。
无钥匙
如需使用无密钥身份验证授权您的应用,请创建 OAuth 2.0 客户端 ID。
确定签名密钥指纹
OAuth 2.0 客户端 ID 使用应用的签名密钥指纹来标识应用。
如何获取调试签名指纹
运行或调试项目时,Android SDK 工具会自动使用生成的调试证书为您的应用签名。
- 在 Android Studio 中,打开 Gradle 工具窗格。
- 依次选择 project-name > Tasks > android。
- 运行 signingReport 任务。

- 复制 debug 变体的 SHA-1 指纹。
如何从密钥库中获取签名指纹
如果您有密钥库文件,请使用 keytool 实用程序确定指纹。
keytool -list -v -alias your-key-name -keystore path-to-production-keystore然后,keytool 实用程序会将指纹输出到终端。例如:
Certificate fingerprint: SHA1: DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09
如何从 Play 应用签名功能中获取应用的签名密钥
使用 Play 应用签名时,Google 会管理您应用的签名密钥,并使用该密钥为您的 APK 签名。 此密钥应用于签名指纹。
- 在 Google Play 管理中心的“应用签名”页面中,滚动到应用签名密钥证书。
- 使用 SHA-1 证书指纹。
创建 OAuth 2.0 客户端 ID
针对上一步中的每个适用的签名密钥,在 Google Cloud 项目的凭据中创建一个 OAuth 2.0 客户端 ID。
在 Google Cloud 中,打开“凭据”页面。
点击创建凭据,然后从菜单中选择 OAuth 客户端 ID。
按如下方式填写必填字段:
- 应用类型:选择 Android。
- 软件包名称:使用 AndroidManifest.xml 中声明的软件包名称。
- SHA-1 证书指纹:使用在之前的步骤中获得的指纹。
按创建。
包含必需的库
- 在应用的依赖项中添加
com.google.android.gms:play-services-auth:16+。 如果您使用代码缩减,请将其添加到应用的
build.gradle文件中:buildTypes { release { ... proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } }将以下内容添加到应用的
proguard-rules.pro文件中:-keep class com.google.android.gms.common.** { *; } -keep class com.google.android.gms.location.** { *; } -keep class com.google.android.gms.auth.** { *; } -keep class com.google.android.gms.tasks.** { *; }
您的应用现已配置为使用无密钥身份验证。
API 密钥
- 在 Google Cloud 中,打开“凭据”页面。
凭据 - 选择创建凭据,然后从菜单中选择 API 密钥。
“已创建的 API 密钥”对话框会显示新创建的密钥的字符串。 在 Android Studio 中,将新 API 密钥添加到您的项目。在应用的
AndroidManifest.xml中,将 API 密钥包含在<application>元素中的<meta-data>元素中:<meta-data android:name="com.google.android.ar.API_KEY" android:value="API_KEY"/>- 请查看有关 API 密钥限制的文档,以保护您的 API 密钥。
您的应用现已配置为使用 API 密钥。
后续步骤
配置授权后,请查看以下使用该授权的 ARCore 功能: