Xamarin Android: срок действия SyncAdapter истекает во время разговора
В iOS фоновая выборка имеет ограничение некоторого периода времени во время вызова фоновой выборки. Но в Android, будет ли SyncAdapter иметь ограничение по времени выполнения или будет продолжаться синхронизация до его завершения.
1 ответ
По умолчанию это 30 минут.
Синхронизация может быть отменена в любое время фреймворком. Например, синхронизация, которая не была инициирована пользователем и длится более 30 минут, будет считаться тайм-аутом и отменена.
SyncAdapters запускаются в фоновом потоке и при выполнении ваших OnPerformSync
Вы должны предоставить любые ограничения передачи синхронизации (время и / или размер данных).
Тем не менее, ОС может позвонить Interrupted
на нити, так что вам нужно следить за нитью Interrupted
собственности или переопределить OnSyncCanceled
методы (оба, если вы имеете дело с несколькими учетными записями) для обработки запроса ОС. Таким образом, вам необходимо очистить сетевые подключения, сохранить состояние синхронизации и т. Д. И вернуться из OnPerformSync
в противном случае операционная система может (и будет) убивать ваш процесс.