J'utilise l'observable suivant pour appeler api de retrofit puis enregistrez la réponse dans le fichier de cache:rxJava, Actualiser les données api périodiquement
@Override public Observable<StoryCollectionEntity> storyEntityList(final int page) {
return this.restApi.storyCollection(id, page)
.doOnNext(saveStoryCollectionToCacheAction)
.onErrorResumeNext(CloudNewsDataStore.this.mNewsCache.getStories(page));
}
Cela fonctionne comme prévu. Ma question est la suivante: comment puis-je faire que cet observateur retourne réponse api périodiquement?
disons, l'utilisateur veut actualiser les données toutes les 5 minutes
Eh bien, vous voudrez peut-être pas aussi rafraîchissant les données toutes les 5 minutes = drain de la batterie et donc la perte d'utilisateurs. Vous voulez synchroniser intelligemment, utilisez un SyncAdapter. Android OS a des optimisations lourdes pour la synchronisation des données en utilisant un SyncAdapter et il n'est pas trop difficile de configurer –