Я создаю приложение для Android, которое включает в себя данные о листинге продукта. Эти продукты будут составлять от 500 до 1000 единиц и развиваться со временем, с изменениями от серверного сервера.Как синхронизировать данные сервера в приложении Android?
Чтобы избежать сбора этих больших данных с сервера каждый раз, чтобы отображать список, необходимо сохранить локальную базу данных и отобразить путем запроса из базы данных.
Для сохранения данных я изучил следующие способы.
- Native SQLite (синхронизация с помощью синхронизации рамки адаптера)
- Realm (не мог понять, как синхронизировать)
- Couchbase облегченный (имеет собственный шлюз синхронизации)
Но все же не мог» t прийти к какому-либо выводу для наилучшего возможного подхода.
Поскольку данные большие, и нам нужно иметь автономный доступ к данным через приложение, синхронизация данных становится очень важной. Я все еще изучаю эти вещи.
Может кто-нибудь, пожалуйста, направит меня в правильном направлении, чтобы спроектировать хранение данных и синхронизацию данных, когда есть некоторые изменения в бэкэнд?
EDIT:
Хотя существуют разные точки зрения или несколько способов для проектирования синхронизации данных в приложение для Android, хочу понять несколько вещей:
Варианты хранения
а. Хранение в базе данных sqlite или NoSQL, таких как Realm, CouchDB Lite?Параметры синхронизации
a. Для синхронизации нужно ли иметь структуру sqlite db, чтобы она была такой же, как и db сервера?
b. Можно ли комбинировать Realm с адаптером Sync или у Realm есть другие возможности синхронизации?Проект базы данных
a. Поскольку каждый элемент продукта имеет дополнительную информацию для отображения при нажатии на них, необходимо указать данные о товаре с другим вызовом API или всеми этими деталями, которые будут включены в первоначальный вызов API? каков подход к дизайну?
Посмотрите на этот смежный вопрос. Все, что вам нужно, есть. Пожалуйста, прочитайте все ответы: http://stackoverflow.com/questions/10829371/sync-data-between-android-app-and-webserver?rq=1 – narko