Синхронизация Android перенесена даже после успешного завершения
У меня периодически запускается адаптер синхронизации для загрузки / выгрузки данных на сервер.
Несмотря на успешное завершение синхронизации, диспетчер синхронизации Android непрерывно меняет расписание синхронизации, даже если на самом деле не было выполнено никакой работы, поскольку не было ничего нового для синхронизации.
Изучение объекта SyncResult:
SyncResult.toDebugString()
возвращает пустую строкуSyncResult.madeSomeProgress()
возвращает false, если ничего не изменилось, или true, если мы внесли некоторые изменения (как и следовало ожидать)SyncResult.hasError()
возвращает ложь
Это довольно стандартная реализация Sync Service / Adapter, поэтому поведение довольно странное. Удаление всего кода из onPerformSync приводит к успешной синхронизации.
Кажется, что во время процесса синхронизации что-то происходит, из-за чего диспетчер синхронизации считает, что синхронизация не удалась, даже если результат говорит об обратном, может ли кто-нибудь посоветовать какие-либо дополнительные проверки или решение для этого?