开始使用
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
本文档介绍了如何开始在 Android 上使用 Awareness API 进行开发。Awareness API 是 Google Play 服务的一部分。
如需使用 Awareness API,您需要拥有一个 Google 账号。如果您已经拥有一个账号,则无需进行任何操作。为了进行测试,您可能还需要一个单独的 Google 账号。
准备工作
获取 API 密钥
如果您尚未启用 Awareness API 并获取 Google API 密钥,请按照注册和 API 密钥中的步骤操作。
在项目级 build.gradle
文件中,同时在 buildscript
和 allprojects
两个部分中添加 Google 的 Maven 代码库:
buildscript {
repositories {
google()
}
}
allprojects {
repositories {
google()
}
}
将 Awareness API 的依赖项添加到模块的应用级 Gradle 文件(通常为 app/build.gradle
)中:
dependencies {
implementation 'com.google.android.gms:play-services-awareness:19.1.0'
}
将您的 Awareness API 密钥添加到应用的 AndroidManifest.xml
文件中。为此,请添加包含 android:name="com.google.android.awareness.API_KEY"
的 <meta-data>
代码。对于 android:value
,请插入您自己的 Awareness API 密钥,并用英文引号括起来。
<manifest>
<application>
<meta-data
android:name="com.google.android.awareness.API_KEY"
android:value="API_KEY"/>
</application>
</manifest>
向应用的 AndroidManifest.xml
文件添加必要的权限。所需权限因应用使用的 API 方法和栅栏类型而异。
调用示例
以下对 getDetectedActivity()
的调用示例展示了如何将无连接 Google Play 服务模型与 Awareness API 搭配使用:
// Each type of contextual information in the snapshot API has a corresponding "get" method.
// For instance, this is how to get the user's current Activity.
Awareness.getSnapshotClient(this).getDetectedActivity()
.addOnSuccessListener(new OnSuccessListener<DetectedActivityResponse>() {
@Override
public void onSuccess(DetectedActivityResponse dar) {
ActivityRecognitionResult arr = dar.getActivityRecognitionResult();
// getMostProbableActivity() is good enough for basic Activity detection.
// To work within a threshold of confidence,
// use ActivityRecognitionResult.getProbableActivities() to get a list of
// potential current activities, and check the confidence of each one.
DetectedActivity probableActivity = arr.getMostProbableActivity();
int confidence = probableActivity.getConfidence();
String activityStr = probableActivity.toString();
mLogFragment.getLogView().println("Activity: " + activityStr
+ ", Confidence: " + confidence + "/100");
}
})
后续步骤
详细了解 Awareness API 中的不同 API:
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-31。
[null,null,["最后更新时间 (UTC):2025-08-31。"],[[["\u003cp\u003eThis documentation provides a guide on how to start developing with the Awareness API on Android, which is part of Google Play services and requires a Google Account.\u003c/p\u003e\n"],["\u003cp\u003eBefore starting, developers need to obtain an API key, configure their app by adding necessary dependencies and permissions in the \u003ccode\u003ebuild.gradle\u003c/code\u003e and \u003ccode\u003eAndroidManifest.xml\u003c/code\u003e files, respectively, and include their API key in the manifest.\u003c/p\u003e\n"],["\u003cp\u003eAn example call demonstrates using the connectionless Google Play services model with the Awareness API, specifically showing how to get the user's current activity using the \u003ccode\u003egetDetectedActivity()\u003c/code\u003e method.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can further explore the Awareness API through the Snapshot API and Fence API guides and references for more advanced functionalities.\u003c/p\u003e\n"]]],["To begin using the Awareness API, obtain a Google API key and configure your Android app. This involves adding Google's Maven repository to your project's `build.gradle` file and including the Awareness API dependency in your module's `build.gradle`. Insert your API key into `AndroidManifest.xml` and add necessary permissions, depending on the API methods used. The `getDetectedActivity()` example shows how to retrieve the user's current activity.\n"],null,["# Get started\n\nThis document explains how to start to develop with the Awareness API on\nAndroid. The Awareness API is part of [Google Play services](/android/guides/overview).\n\nTo use the Awareness API, you need a [Google Account](//www.google.com/accounts/NewAccount).\nIf you already have an account, then you're all set. You might also want a\nseparate Google Account for testing purposes.\n\nBefore you begin\n----------------\n\n### Obtain an API key\n\nIf you haven't already enabled the Awareness API and obtained a Google API key,\nfollow the steps in [Signup and API keys](/awareness/android-api/get-a-key)\nto do so.\n\n### Configure your app\n\n1. In your project-level `build.gradle` file, include Google's Maven repository\n in both your `buildscript` and `allprojects` sections:\n\n buildscript {\n repositories {\n google()\n }\n }\n\n allprojects {\n repositories {\n google()\n }\n }\n\n2. Add the dependencies for the Awareness API to your module's app-level\n Gradle file, which is usually `app/build.gradle`:\n\n dependencies {\n implementation 'com.google.android.gms:play-services-awareness:19.1.0'\n }\n\n3. Add your Awareness API Key to your app's `AndroidManifest.xml` file. To do\n so, add a `\u003cmeta-data\u003e` tag with\n `android:name=\"com.google.android.awareness.API_KEY\"`. For `android:value`,\n insert your own Awareness API Key, surrounded by quotation marks.\n\n ```xml\n \u003cmanifest\u003e\n \u003capplication\u003e\n \u003cmeta-data\n android:name=\"com.google.android.awareness.API_KEY\"\n android:value=\"\u003cvar translate=\"no\"\u003eAPI_KEY\u003c/var\u003e\"/\u003e\n \u003c/application\u003e\n \u003c/manifest\u003e\n ```\n4. Add the necessary permissions to your app's `AndroidManifest.xml` file. The\n required permissions vary, depending on the API methods and fence types that\n your app uses.\n\nExample call\n------------\n\nThe following example call to\n[`getDetectedActivity()`](/android/reference/com/google/android/gms/awareness/SnapshotClient#getDetectedActivity())\ndemonstrates how to use the connectionless Google Play services model with the\nAwareness API: \n\n // Each type of contextual information in the snapshot API has a corresponding \"get\" method.\n // For instance, this is how to get the user's current Activity.\n Awareness.getSnapshotClient(this).getDetectedActivity()\n .addOnSuccessListener(new OnSuccessListener\u003cDetectedActivityResponse\u003e() {\n @Override\n public void onSuccess(DetectedActivityResponse dar) {\n ActivityRecognitionResult arr = dar.getActivityRecognitionResult();\n // getMostProbableActivity() is good enough for basic Activity detection.\n // To work within a threshold of confidence,\n // use ActivityRecognitionResult.getProbableActivities() to get a list of\n // potential current activities, and check the confidence of each one.\n DetectedActivity probableActivity = arr.getMostProbableActivity();\n\n int confidence = probableActivity.getConfidence();\n String activityStr = probableActivity.toString();\n mLogFragment.getLogView().println(\"Activity: \" + activityStr\n + \", Confidence: \" + confidence + \"/100\");\n }\n })\n\nNext steps\n----------\n\nLearn more about the different APIs within the Awareness API:\n\n- [Snapshot API guide](/awareness/android-api/snapshot-api-overview) and [Snapshot API reference](/android/reference/com/google/android/gms/awareness/snapshot/package-summary).\n- [Fence API guide](/awareness/android-api/fence-api-overview) and [Fence API\n reference](/android/reference/com/google/android/gms/awareness/fence/package-summary)."]]