В этом документе объясняется, как начать разработку с Awareness API на Android. Awareness API является частью сервисов Google Play .
Для использования API Awareness вам понадобится учетная запись Google . Если у вас уже есть учетная запись, то все готово. Вам также может понадобиться отдельная учетная запись Google для целей тестирования.
Прежде чем начать
Получить ключ API
Если вы еще не включили API Awareness и не получили ключ API Google, следуйте инструкциям в разделе Регистрация и ключи API, чтобы сделать это.
Настройте свое приложение
В файле
build.gradle
уровня проекта включите репозиторий Maven от Google в разделыbuildscript
иallprojects
:buildscript { repositories { google() } } allprojects { repositories { google() } }
Добавьте зависимости для API Awareness в файл Gradle уровня приложения вашего модуля, который обычно называется
app/build.gradle
:dependencies { implementation 'com.google.android.gms:play-services-awareness:19.1.0' }
Добавьте свой ключ API Awareness в файл
AndroidManifest.xml
вашего приложения. Для этого добавьте тег<meta-data>
сandroid:name="com.google.android.awareness.API_KEY"
. Дляandroid:value
вставьте свой собственный ключ API Awareness, заключенный в кавычки.<manifest> <application> <meta-data android:name="com.google.android.awareness.API_KEY" android:value="API_KEY"/> </application> </manifest>
Добавьте необходимые разрешения в файл
AndroidManifest.xml
вашего приложения. Требуемые разрешения различаются в зависимости от методов API и типов ограждений, которые использует ваше приложение.
Пример вызова
Следующий пример вызова getDetectedActivity()
демонстрирует, как использовать модель сервисов Google Play без установления соединения с API Awareness:
// 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");
}
})
Следующие шаги
Узнайте больше о различных API в рамках API осведомленности: