Мне нужны предложения о том, как обновить список избранных фильмов пользователя, который хранится локально в базе данных SQLite на его телефоне Android.В MainActivity есть отдельный фрагмент, где он может получить доступ к списку своих любимых фильмов и отсортировать его по имени, по дате выпуска, по добавлению и т. Д. Теперь я вроде как взломал себе контрольно-пропускной пункт, когда все фильмы в базе данных бэкэнда получилиобновленный, его список избранного остается нетронутым, и, конечно, этого следовало ожидать, потому что его данные хранятся локально.Это вызывает многочисленные проблемы, например, когда он добавляет фильм с неофициальной датой выпуска, а в серверной базе данных этот фильм обновляется с официальной датой выпуска, данные о выпуске фильма остаются такими же, как при добавлении, и никогда не изменяются.
Мой бэкэнд находится в firebase firestore, и я подумал о нескольких решениях, но все они могут потребовать многократного чтения в firestore в зависимости от размера списка избранного пользователя.
Два решения, о которых я подумал, которые я не очень люблю использовать, потому что они оба требуют большого количества чтений к бэкэнду.
- Кнопка панели инструментов синхронизации, которую пользователь нажимает вручную, которая обновляет все фильмы с новой датой выпуска в своем списке
- Автоматически выполнять операцию синхронизации один раз в неделю в коде
Каков наилучший способ обновления локальной базы данных SQLite при обновлении бэкэнда?
И я бы очень хотел сохранить его список избранных локально и не хранить его в бэкэнде.из-за разных причин, в частности, чтобы сэкономить на моем счете на пожарную базу.