Смущает синхронизация нескольких таблиц с адаптером синхронизации и поставщиком контента

Я смущен тем, какой способ лучше всего синхронизировать несколько таблиц в моем приложении.

У меня есть один поставщик контента и намереваюсь иметь несколько таблиц (события, пользователи и т. Д.). У меня также есть сервер отдыха, с которым должно взаимодействовать приложение. Мне интересно, что лучше всего обрабатывать несколько соединений (put, get, post и delete) для каждой из таблиц. У них также есть отношения, как один пользователь может присутствовать на мероприятии, но также быть владельцем события. Поэтому, если я создал пользователя и принадлежащее ему событие, я могу либо загрузить пользователя, получить информацию с сервера о пользователе, загрузить мероприятие с информацией о пользователе, вернуть эту информацию, а затем обновить С новой информацией о событии.

Каков наилучший способ решить эти проблемы? Должен ли я создать метод (http://example.com/sync), который агрегирует все данные, которые должны быть синхронизированы? Или я должен просто придерживаться, иногда ~ 15-20 запросов?

Я бы порекомендовал вам смотреть видеозапись приложений Google I / O 2010 – Android REST . Это фантастическое введение в некоторые из концепций и рекомендуемых шаблонов для написания приложений для проектирования хорошо проектируемых приложений.

Я лично нашел ответы на большинство моих вопросов.

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

Evernote решил аналогичную проблему с их проприетарным протоколом EDAM. Стоит посмотреть.

Evernote EDAM

Все зависит от количества данных, которые вы хотите синхронизировать.

Если это только текстовые данные, а не много, вы должны синхронизировать их все сразу. Я бы рекомендовал кодировать все это json, закрепить его и отправить на сервер (где вы будете разархивировать, разбирать и сохранять). Json легко и легко компилируется на андрои, а также анализирует практически любой сервер.

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