Обратный вызов Android SyncAdapter

Я реализовал SyncAdapter, AccountManager и частный ContentProvider в соответствии с образцом проекта SimpleSyncAdapter в SDK. Все работает хорошо.

Теперь я хочу показать пользователю сообщение, когда с удаленного сервера были загружены новые строки, для которых установлен определенный флаг. Мне нужен обратный вызов от SyncAdapter после завершения синхронизации, чтобы я мог выполнить запрос и отобразить сообщение из действия. Я видел несколько вопросов в StackOverflow, обсуждая это, но ни один из них не дал хорошего ответа.

Как отслеживать прогресс от Android SyncAdapter? говорит, что SyncStatusObserver бесполезен. Пользователь mobibob предлагает использовать ResultReceiver для ответа пользовательскому интерфейсу из потока синхронизации.

Как узнать, когда синхронизация завершена? предлагает использовать намерение в SyncService.

Как сообщить о завершении синхронизации в Android SyncManager? предлагает использовать SyncResult. Пример кода, связанный с maxpower47, использует класс SyncResult для сообщения об исключениях, но не для фактического сообщения об успешном завершении синхронизации.

Я просто не знаю, какой вариант лучше, и не видел примеров проектов, в которых использовалось бы какое-либо из этих решений.

8
задан Community 23 May 2017 в 12:23
поделиться