Может ли устройство iOS7 выступать в качестве iBeacon?

Может ли устройство iOS7 выступать в качестве iBeacon и определять, когда другие устройства iOS7 входят в его диапазон? Этим другим устройствам iOS7 нужно включить Bluetooth?

6 ответов

Решение

Устройство iOS с BluetoothLE может действовать как iBeacon.

Посмотрите пример кода AirLocate по адресу https://developer.apple.com/downloads/index.action?name=WWDC%202013

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

Да, устройство iOS может выступать в качестве маяка от iPhone 4s и выше (требуется Bluetooth 4.0).

Вы публикуете маяк, передавая словарь из [CLBeaconRegion peripheralDataWithMeasuredPower:] в [CBPeripheralManager startAdvertising:],

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

Что касается фонового изображения, вы не можете публиковать маяк в фоновом режиме, для этого ваше приложение должно быть запущено на переднем плане. Сканирование возможно в фоновом режиме.

Да, устройство iOS7 может действовать как iBeacon. Вы можете сделать именно то, что вы предлагаете, если у вас есть приложение, установленное на всех телефонах, и вы также создаете веб-сервис. Это позволило бы телефону A видеть телефоны B и C, когда они находятся рядом:

  1. Ваше приложение на телефоне А действует как iBeacon, рекламируя свое присутствие.
  2. Телефоны B и C видят этот iBeacon, разбудив ваше приложение, чтобы позвонить вашему веб-сервису и сообщить, что они оба видят передачу по телефону А.
  3. Ваше приложение на телефоне A запрашивает эту веб-службу, которая возвращает список телефонов, которые видят Телефон A. В этом примере список включает телефоны B и C. Ваше приложение обновляет свой дисплей этим списком.

Всем телефонам потребуется Bluetooth LE, он должен быть включен и ваше приложение установлено. Им также потребуется подключение к Интернету для вызова веб-службы.

Если вы не настроены на использование iBeacons, этот проект использует Bluetooth LE для обмена массивами идентификаторов между соседними телефонами - SimpleShare

Вы можете установить идентификатор пользователя каждого телефона, поделиться им между телефонами через Bluetooth LE с помощью проекта SimpleShare (даже в фоновом режиме), а затем запросить веб-службу, чтобы узнать больше информации о пользователе с этим идентификатором.

Один момент, который не был четко сформулирован в предыдущих ответах, заключается в том, что для того, чтобы публикация работала (например, в ответном письме Дэвида "Телефон А"), приложение, которое начало публикацию, должно быть на переднем плане.

Из документации Apple:

Пока ваше приложение находится в фоновом режиме, локальное имя не объявляется, и все UUID службы размещаются в области переполнения.

Как уже упоминалось, устройство iOS 7 может выступать в качестве iBeacon, если это технология Bluetooth LE.

Для использования iBeacon вам потребуется iOS 7 или более поздняя версия, Bluetooth включен и совместимое устройство iOS:

  • iPhone 4s или позже
  • iPad (3-го поколения) или позже
  • iPad mini или более поздняя версия
  • iPod touch (5-го поколения) или новее.

http://support.apple.com/kb/HT6048

Другие вопросы по тегам