Лучшая методика выполнения задач для ежедневного обновления базы данных - PullRequest
0 голосов
/ 03 мая 2018

Мое приложение должно ежедневно обновлять локальную базу данных, оно выполняет вызовы в общедоступный репозиторий, запрашивая последние добавленные / измененные элементы или элементы, добавленные / измененные с момента последнего обновления базы данных на устройстве. Есть несколько методов, таких как использование: AlarmManager, jobDispatcher, JobScheduler, SynchAdapter, у каждого API есть свои плюсы и минусы: низкое использование процессора (хорошо), оно будит приложение (не идеально), может быть отменено ОС для освобождения ресурсов (Не хорошо).

Как лучше всего обновлять ежедневно, с некоторыми условиями:

-Обновление должно выполняться, даже если приложение закрыто.

-Обновление должно выполняться в течение времени (от 00:00 до 05:00).

-Можно обновить, если устройство подключено через Wi-Fi.

-Заряд батареи выше 50%.

- Не нужно будить устройство.

1 Ответ

0 голосов
/ 03 мая 2018

Использовать Android-Job библиотека предоставлена ​​evernote. Его легко использовать. Используется либо JobScheduler, GcmNetworkManager, либо AlarmManager. Его работы возвращаются к Сэндвичу с мороженым. В зависимости от ваших требований эта библиотека решает, какой API подходит для вашей работы.

Эта библиотека имеет некоторые дополнительные функции, например, вы можете указать требуемое сетевое соединение, состояние зарядки, периодическое выполнение.

Проверьте это сообщение в блоге тоже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...