Распознавание активности с использованием нового GoogleApiClient без запуска обновлений активности
Я пытаюсь настроить ActivityRecognition в своем приложении с помощью нового GoogleApiClient. Я нигде не смог найти никакой документации (Официальные документы по Android по-прежнему ссылаются на устаревший ActivityRecognitionClient).
Код, который мне удалось написать, не вызывает обновления активности.
1) Внутри моей MainActivity onCreate:
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addApi(ActivityRecognition.API)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
mGoogleApiClient.connect();
2) Внутри onConnected:
Intent i = new Intent(this, ActivityRecognitionIntentService.class);
PendingIntent mActivityRecognitionPendingIntent = PendingIntent.getService(this, 0, i, PendingIntent.FLAG_UPDATE_CURRENT);
Log.e("Aditya", "Connected to ActRec");
ActivityRecognitionApi actRecAPI = new ActivityRecognitionApi()
{
public PendingResult<Status> requestActivityUpdates(GoogleApiClient googleApiClient, long l, PendingIntent pendingIntent)
{
Log.e("Aditya", "inside requestActivityUpdates()");
return null;
}
public PendingResult<Status> removeActivityUpdates(GoogleApiClient googleApiClient, PendingIntent pendingIntent)
{
return null;
}
};
actRecAPI.requestActivityUpdates(mGoogleApiClient, 0, mActivityRecognitionPendingIntent);
Мой ActivityRecognitionIntentService никогда не получает обновления.
Что я делаю неправильно? Или есть какая-нибудь документация по ActivityRecognition через GoogleApiClient где-нибудь?
1 ответ
Решение
Решил это. После подключения к GoogleApiClient мне просто нужно было сделать это, чтобы начать получать обновления активности.
ActivityRecognition.ActivityRecognitionApi.
requestActivityUpdates(mGoogleApiClient, 0, mActivityRecognitionPendingIntent);
Нет необходимости создавать свой собственный объект ActivityRecognitionApi.