Показать метку на всех устройствах

307
08 января 2017, 15:53

Работаю с Google-картой, используя Xamarin. Мне нужно, чтобы метку (маркер), которую я поставил в своем приложении, увидели все устройства.

К примеру: я создал новую метку на карте и эта же метка отобразилась на другом устройстве.

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

Правильно ли я думаю? Может есть другие более легкие способы? Решил сначала спросить, прежде чем начать реализовывать.

Answer 1

Да, синхронизация через сервер - правильное решение. Для такой простой задачи (отображение у клиентов общей простой инфы с сервера) можно даже взять готовое решение типа Firebase. Вот даже какая-то либа под Xamarin есть:

Firebase.Xamarin

Общая идея такова:

  1. Клиент подписывается на получение всех элементов из выборки в БД.
  2. При изменении БД у клиента будет вызван метод, в который придёт изменённая инфа
  3. При добавлении клиентом инфы в удалённую БД она появится у всех остальных подписанных клиентов.

По факту вам надо лишь составить модель данных, отправить её и получать её же. Все методы для этого в либе есть и кода нужно минимум. А серверного кода не нужно вообще.

Стоит учесть, что в РФ в данный момент не очень ясно как будет FireBase работать, ибо гугл делал НЕмассовую расылку юзерам о прекращении работы с физ.лицами из-за нежелания возиться с НДС. Но вот лично у меня пока что всё работает и писем таких не было. В любом случае есть аналогичные сервисы, в т.ч. отечественные

Кажется, прямо сегодня Realm запилил аналог FireBase, который можно поднять на своём сервере. В итоге получается та же штука что и с Firebase, только на своём сервере и через привычный Realm.

https://realm.io/docs/get-started/installation/linux/

READ ALSO
MVC и MVP на примере php проектов

MVC и MVP на примере php проектов

Нашёл вот такое сравнение в картинках для этих двух шаблонов:

428
Почему shell_exec ничего не возвращает?

Почему shell_exec ничего не возвращает?

Цель такая - один скрипт может запускать/убивать другие скрипты-демоныДля этого я использую shell_exec(), сохраняю PID и потом управляю процессами...

459
Проверка наличия строк в файле

Проверка наличия строк в файле

Доброго времени сутокПодскажите пожалуйста

416
Magento. Не грузятся изображения и js-файлы

Magento. Не грузятся изображения и js-файлы

После установки на локальный сервер Openserver не грузятся изображения и яваскриптыНапример http://magento2

452