Я использую адаптер синхронизации в своем приложении. Приложение должно выполнять синхронизацию каждые 3 часа. Это можно сделать с помощью ContentResolver.addPeriodicSync
. Но до этого с каждым запросом на синхронизацию мне нужно отправлять токен доступа пользователя. Срок действия токена составляет 2 часа. Таким образом, перед любым запросом на синхронизацию необходимо иметь действительный токен доступа. Если срок действия токена доступа истек, для пользователя необходимо обновить новый токен.
Одно из решений, которое я придумал, - установить повторяющийся будильник с помощью AlarmManager
. При срабатывании сигнализации запускается IntentService
. и обновляет токен доступа для пользователя. После получения нового токена запрос на синхронизацию будет отправлен на SyncAdapter
с использованием ContentResolver.requestSync
. Я не уверен, что это хороший способ сделать или какой-либо другой эффективный подход доступен.
onPerformSync
адаптера синхронизации. - person Nitish   schedule 27.10.2014