В этом документе объясняется, как начать разработку с использованием Awareness API для Android. Awareness API входит в состав сервисов Google Play .
Для использования Awareness API вам понадобится учётная запись 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 в рамках Awareness API: