Синхронизация базы данных SQL Lite на устройстве Android и базе данных SQL Server

Мы пытаемся синхронизировать базы данных SQL Lite, размещенные на разных устройствах Android, и базу данных SQL Server, размещенную на центральном сервере. Мы исключили использование веб-сервиса из-за предварительного условия клиента. Может ли быть другой способ?

PS: Нам разрешено подключать устройства в конце дня к серверу, на котором может быть установлено приложение-приложение Windows или приложение форм Windows для процесса синхронизации.

благодаря

    Как бы вы подключили их к серверу «в конце дня»? Как правило, что бы вы делали в такой ситуации, написано пользовательское приложение на устройстве, которое синхронизировало данные всякий раз, когда это было возможно.

    Вы можете сделать это разными способами.

    Первый заключается в том, чтобы написать службу, которая сидит и проверяет, имеет ли она возможность подключаться к веб-серверу (например, вы могли бы просто использовать подключение к локальной сети и сделать предпочтение иметь строку, определяющую, какой сервер вы хотите синхронизировать To), а затем выполните синхронизацию таким образом.

    Эта услуга может контролироваться намерением. Вы также можете написать скрипт, который выдавал команды для adb, которые делали необходимые переходы между устройством (если он был подключен через USB), чтобы выполнить синхронизацию.

    Я бы подумал, что лучший способ сделать это может заключаться в создании «синхронизации» активности в вашем приложении. Это действие может иметь кнопку, которая при нажатии инициирует синхронизацию с удаленным клиентом через Интернет (что вы сказали, что имеете, но как вы собираетесь подключиться к нему?).

    Проверьте эту реализацию Microsoft Sync Framework Toolkit. Я не уверен, что он еще готов.

    Хотя открытые веб-сервисы не должны использоваться, но может быть запущен или реализован какой-либо HTTP-интерфейс / метод на сервере, который может быть вызван для устройства для передачи данных. Может быть, выделенное веб-приложение должно быть записано только для получения данных из Ваши устройства и это приложение позаботится о передаче содержимого на сервер sql.

    С другой альтернативой [, которая связана с устройством] вам необходимо перенести / экспортировать данные устройства в виде файла в некотором согласованном формате, который затем может быть использован приложением службы / формы Windows.