البدء
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يوضّح هذا المستند كيفية بدء تطوير التطبيقات باستخدام Awareness API على
Android. واجهة برمجة التطبيقات Awareness API هي جزء من خدمات Google Play.
لاستخدام Awareness API، يجب أن يكون لديك حساب Google.
إذا كان لديك حساب، يعني هذا أنّك قد انتهيت من عملية إعداد حسابك. قد تحتاج أيضًا إلى استخدام
حساب Google منفصل لأغراض الاختبار.
قبل البدء
الحصول على مفتاح واجهة برمجة التطبيقات
إذا لم يسبق لك تفعيل Awareness API والحصول على مفتاح Google API،
اتّبِع الخطوات الواردة في الاشتراك ومفاتيح واجهة برمجة التطبيقات
لإجراء ذلك.
في ملف build.gradle
على مستوى المشروع، أدرِج مستودع Maven من Google
في كلّ من القسمَين buildscript
وallprojects
:
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
في تطبيقك. لإجراء ذلك، أضِف علامة <meta-data>
مع
android:name="com.google.android.awareness.API_KEY"
. بالنسبة إلى android:value
،
أدخِل مفتاح واجهة برمجة التطبيقات الخاص بك لميزة "الوعي بالعلامة التجارية"، مع إحاطته بعلامتَي اقتباس.
<manifest>
<application>
<meta-data
android:name="com.google.android.awareness.API_KEY"
android:value="API_KEY"/>
</application>
</manifest>
أضِف الأذونات اللازمة إلى ملف AndroidManifest.xml
في تطبيقك. تختلف
الأذونات المطلوبة حسب طرق واجهة برمجة التطبيقات وأنواع الأسوار التي يستخدمها
تطبيقك.
مثال على مكالمة
يوضّح المثال التالي لاستدعاء واجهة برمجة التطبيقات
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:
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 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)."]]