Как я могу синхронизировать данные между Android-устройством и веб-сервером? - PullRequest
0 голосов
/ 10 февраля 2012

Мой проект настроен следующим образом

На стороне сервера

У меня есть веб-сервер с PHP, база данных MySQL apache

На стороне устройства Android

У меня естьsqlite database

Я хочу синхронизировать данные между этими двумя базами данных на стороне устройства и на стороне сервера при любом обновлении на любой стороне базы данных.У андроида есть пакет для этого?Или мне нужно позаботиться об этом самостоятельно, используя php-скрипты и API-интерфейс HttpClient для Android?

Ответы [ 2 ]

3 голосов
/ 19 марта 2012

Если вы напишите это самостоятельно, вот некоторые из моментов, о которых следует помнить

  • Правильная аутентификация между устройством и сервером синхронизации

  • Протокол синхронизации между устройством и сервером.Обычно он проходит в 3 этапа: аутентификация, обмен данными, обмен статусами (какие операции работали, а какие - нет)

  • Выберите формат полезной нагрузки.Я предлагаю XML на основе SyncML в сочетании с форматом на основе JSON для представления фактических данных.Поэтому SyncML для протокола и JSON для фактических данных, которыми обмениваются

  • Отслеживание изменений данных как на клиенте, так и на сервере.Вы можете вести список изменений идентификаторов, которые меняются и выбираются во время сеанса синхронизации.Кроме того, очистите журнал изменений, поскольку объекты успешно синхронизированы

  • Необходимо иметь способ связи с сервером к устройству для запуска сеанса синхронизации при изменении данных на сервере.Вы можете использовать C2DM или написать свою собственную постоянную коммуникацию на основе TCP.Подход tcp очень простой

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

  • И последний, но не менее важный, способобнаруживать и обрабатывать конфликты

Надеюсь, это послужит хорошей отправной точкой

0 голосов
/ 10 февраля 2012

Для вышеуказанной цели вам необходимо создать web services в PHP.Вы можете вызвать эти web services со стороны Android для синхронизации.

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