У меня есть приложение, которое отображает некоторые элементы, загруженные из веб-службы (например, Fruits). Эти предметы редко меняются. Вы также можете показать наличие этих предметов (например, для яблок, 10 кг доступно в магазине A сегодня, 20 кг завтра, ...)Синхронизация Android между устройствами
Пользователь может добавить в закладки некоторые из этих элементов на своем телефоне. Мне нужно, чтобы пользователь мог добавлять закладки в некоторые из этих элементов и синхронизировать свои закладки между устройствами (я добавляю яблоки на свой телефон, я ожидаю увидеть закладки яблоки в своем планшете в следующий раз, когда открою приложение).
Более или менее, я получил около 40 предметов, не более. И каждая информация о доступности составит около 200 записей.
Какой метод вы использовали бы для реализации?
Моя идея до сих пор:
- Я строй SQLite базы данных (с ContentProvider) фруктов и Незанятностьно
- синхронизировать эту БД каждый 2/3 дня (то есть достаточно, нет необходимости делать это чаще)
- Я использую BackupAgent синхронизировать весь DB файл
Как вы думаете, база данных является излишеством? Ожидается, что приложение всегда будет работать с сетевым подключением (иначе мы его не допустим).
Мой другой вариант был бы:
- элементы нагрузки и доступность при запуске приложения
- закладки хранятся в SharedPreferences
- Я использую BackupAgent синхронизировать только SharedPreferences
Это кажется менее сложным и более эффективным для части синхронизации. Тем не менее, я считаю, что это не совсем чистый способ сделать это и менее надежным в будущем.
Почему бы не просто сохранить флаг любых новых закладок и просто отправить новые на сервер. то при синхронизации отправлено последнее сообщение или что-то такое, что вы только вернули, у вас нет – tyczj
Сервер только для чтения. Закладки не централизованы. Я не могу это изменить. –