Подтвердить что ты не робот

Случай использования Android SyncAdapter

Что мы делаем в настоящее время?
У нас есть структурированные текстовые данные на сервере, который открывается через веб-службы (RESTful). Мое приложение регулярно проверяет этот сервер (AlarmManagerService) для извлечения данных и сохранения их в локальной базе данных (sqlite). Кроме того, для аутентификации пользователь предварительно аутентифицируется и авторизуется.

Вопросы:

  • В SDK есть класс SyncAdapter/AccountManager, и мне было интересно, может ли он быть полезен в моем приложении для достижения синхронизации, упомянутой выше?

  • Если да, какая инфраструктура необходима для поддержки синхронизации с помощью этого адаптера? Ссылки на статьи и т.д., Которые дают информацию об использовании этого адаптера и другую информацию, оценены.

4b9b3361

Ответ 1

Да SyncAdapter/AccountManager полезен для вашего использования. Аутентификатор (который вызывает AccountManager за сценой) может обрабатывать аутентификацию для вашего приложения. SyncAdapter может обрабатывать периодические синхронизации с сервера на локальный хранилище данных. Вам не придется выполнять его самостоятельно, используя AlarmManager. Для примера кода, использующего SampleSycnAdapter/Authenticator, см. SampleSyncAdapter в android devguide.

Сервер backstream REST будет работать с SyncAdapter просто отлично, без особых изменений. Единственные отличия были бы у вашего клиента, например, вместо того, чтобы вызывать методы извлечения данных на сервере в AlarmManager, вместо этого вы вызываете их в onPerformSync() вашего класса, который расширяет SyncAdapter. Образец кода, упомянутый выше, сделает его более понятным. Надеюсь, что это поможет.