2016-11-11 4 views
0

У меня есть приложение iOS в Swift, которое включает небольшую группу игроков, найденных через Game Center, скажем, всего 4. Один из игроков является лидером, и они должны знать, находится ли каждый из игроков поблизости или нет поблизости, скажем, в пределах 10 метров, но это гибко. В идеале ни один из четырех не должен иметь приложение на переднем плане, и любой игрок может быть где угодно в любое время, но я хочу знать довольно быстро, если кто-то рядом.Как узнать, находится ли игровой игрок поблизости?

Итак, вопрос в том, что такое хорошая техника, чтобы определить, находится ли поблизости игрок? Я могу думать о нескольких возможностях, таких как регионы диспетчера местоположений, соединениях Bluetooth и т. Д., Но это кажется сложным. Есть идеи?

ответ

0

Я провел некоторое исследование об этом для аналогичного приложения несколько лет назад.

Определение местоположения с помощью диспетчера для передачи и сравнить координаты игроков на сервере кажется, самый простой вариант, но у него есть серьезный ряд недостатков:

  • Использование функции GPS и сети устройства IOS потребляют много энергии батареи. Поэтому очень неэффективно постоянно проводить опрос и передавать местоположение пользователя.
  • Для неприкосновенности частной жизни Apple очень скептически относится к приложениям, которым необходимо постоянно отслеживать местоположение пользователя, даже если приложение закрыто. Вам нужно будет сделать хорошее дело, иначе вы можете быть отвергнуты.
  • Опять же, по соображениям конфиденциальности передача позиции пользователя является рискованной, поэтому вы надеетесь, что у вас будет очень хорошая сетевая безопасность.
  • Функции GPS на некоторых устройствах iOS и обстоятельствах могут быть неточными. Требование радиуса 10 метров может быть слишком маленьким.

По этой причине я бы порекомендовал вам изучить, можно ли реализовать идею игры, которую вы хотите реализовать, через Apple's iBeacon technology. iBeacons являются одноранговыми и более точными с близкого расстояния, что звучит так, как будто вы за ним. :)

+0

После небольшого чтения я вижу, что приложение iPhone может быть передатчиком iBeacon, ранее я думал, что маяк должен быть автономным устройством. Таким образом, лидер, чье приложение работает, может быть маяком, который просыпает других близлежащих игроков и запускает их приложение. Это может сработать для меня, спасибо .. – lepton

+0

Да! Устройства iOS сами могут быть iBeacon-хостами. Специальное оборудование - это если вы хотите где-то поставить постоянную точку доступа. Круто! Рад, что смог помочь! Если это все, не могли бы вы пометить это, как принято? :) – TiM

Смежные вопросы