IBeacon SDK на Android

ibeacon sdk

Возможные варианты использования и бизнес-модель для радиомаяка, что позволяет местоположению в зависимости от взаимодействия с пользователем, даже внутри здания в настоящее время горячо обсуждаемые. В-магазине рекламы и скидки, мобильные платежи, навигация, общественный транспорт, локализация в общественных зданиях и музеях и домашней автоматизации являются только кончики айсберга. И, конечно же, вездесущий сбор данных – Теперь новые и с точной информацией о местоположении. Прежде чем узнать больше о технологии IBeacon, мы также упомянуть IBeacon SDK в статье.

Что такое реклама?

Протокол IBeacon, разработанный Apple, основанный на Bluetooth Low Energy поддерживается целым рядом устройств. В статье объясняется iBeacons и Bluetooth Low Energy и использует пример разработки приложения для Android для определения местоположения зависит списки покупок, чтобы показать расположение в зависимости от взаимодействия приложения с iBeacons. Реализация основана на MOKOSmart IBeacon SDK.

IBeacon, блютуз 4.0, BLE, УМНЫЙ. Знают?

Основная технология IBeacon является Bluetooth. Bluetooth с низким энергопотреблением (BLE), который часто называют маркетинговой этикетке Bluetooth смарт, была включена в версии 4.0 стандарта Bluetooth. BLE не имеет обратной совместимости с предыдущими версиями под названием Bluetooth Классический. блютуз 4.0 указывает, что стандартные-совместимые устройства должны реализовать один или оба варианта, то есть. Low Energy или Классический.

BLE реализована практически на всех текущих смартфонов, таких как iPhone 4+ и Samsung Galaxy 3+. IPhone может функционировать как в качестве приемника сигналов IBeacon и – в отличие от Android – есть маяк сам. Android включает BLE водителей от версии API 18, то есть. Android 4.3. между прочим, текущие компьютеры также BLE-способные. В системе Windows, тем не мение, водители только на борту из ОС Windows 8 и примерно с середины 2011, BLE была доступна на компьютерах Apple,.

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

Интересно в связи с iBeacons является датчиком

Тэг от Texas Instruments, который в дополнение к своей функции в качестве IBeacon также может измерять температуру, влажность, давление, и ускорение. Тег датчика также поставляется с гироскопом, магнитометр, и две аппаратные кнопки. Идеальное устройство для дистанционного управления презентаций во время передачи и отображения влажности и температуры рук говорящего. Я думаю, что мой следующий песочница проект будет этап испуг-O-MAT. Вы можете найти подробный список устройств, на официальном сайте Bluetooth.

ГАТТ готов

Модель связи, используемые устройства для обмена данными называется ГАТТОМ – Generic Attribute профиля. ГАТТ определяет роли клиента и сервера. Клиент запрашивает данные с сервера через службу. А пары услуг группы несколько атомный ключ / значения, которые называются характеристики. Обе услуги и характеристики определяются с помощью UUID, и могут также содержать дополнительные описания. Услуги и их характеристики каталогизированы в виде профилей; спецификация определяет целый ряд из них из области здравоохранения, спорт и фитнес, – в нашем случае интересного – близость зондирования. Отдельные профили и их услуги и характеристики можно найти на портале для разработчиков Bluetooth в рамках ГАТТ Технических характеристик.

GATT IBeacon SDK

Добраться до маяка

Так что же iBeacons? IBeacon очень простая технология (и торговая марка компании Apple, которая позволяет расположение в зависимости от взаимодействия с приложениями. Маяк посылает сигнал, который может быть получен с BLE-совместимыми устройствами и обработан с помощью приложений, установленных на нем сигнал содержит идентификацию маяка и силу приема. iBeacons сами, следовательно – вопреки неточные заявления в прессе – не в состоянии обеспечить содержание или отслеживать поведение клиентов. Это ответственность принимающих приложений и поэтому разработчики.

IBeacon IRL

Большие развертывания iBeacons в Германии, вероятно, будут долго ждать, но есть некоторые примеры из США и Нидерландов. Например, МЛБ оснастила 28 стадионы с iBeacons и использует их, между прочим, для проверки модулей в приложении MLB “На стадионе”.

Витрина была реализована в Доме Рубенса в Антверпене, который предлагает справочную информацию, таких как рентгеновские лучи картин и геокешинг игры для посетителей.

Яркий пример с точкой зрения размера исходит от самого Apple,. Над 250 Магазины Apple были оснащены iBeacons. В сочетании с приложением Apple Store, расположение в зависимости от сообщения отправляются покупателям, которые находятся в магазине. тем не мение, возможные взаимодействия в настоящее время, как представляется, весьма ограничены: Первые обзоры сообщают только два различных (и довольно общий) сообщения, которые они получили бы. Специальные предложения и конкретная информация об отдельных продуктах поблизости не предлагались.

функциональность

IBeacon SDK не использует отдельный BLE профиль, а скорее рекламные пакеты Bluetooth, то есть. широковещательные пакеты, которые используются для обнаружения устройств Bluetooth. Если вы заинтересованы в точной структуре пакета, Вы можете прочитать, например, на блоге Адама Барского в.

Такой пакет посылается через регулярные промежутки времени, которые могут быть настроены с помощью ГАТТ. Он содержит UUID радиомаяка, который, как правило, предварительно настроен изготовителем. Так что все маяки MOKOSmart отправить тот же UUID. Основные и второстепенные идентификаторы также используются для идентификации отдельных маяков. Основные идентификаторы могут представлять, например, филиал магазина или ресторана в франшизы цепи, незначительные идентификаторы одной полке или таблицы.

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

IBeacon SDK предлагает две концепции для взаимодействия приложения с этой информацией: начиная и мониторинга региона. Когда в пределах, расстояние до маяка определяется. Из-за неточности упоминалось выше, это происходит только в три этапа. “немедленный” это расстояние в несколько сантиметров, “Около” находится в нескольких метрах и “далеко” это расстояние свыше десяти метров. Ранжирование возможно только, если получающее приложение является активным.

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

“Большинство маяки” означает, что существует более одного производителя iBeacons на рынке. по факту, есть немало: MOKOSmart, Kontakt.io, лед, Estimote, и Gimbal. В дополнение к оборудованию, эти производители также предлагают обслуживание и облачные решения IBeacon SDK для управления маяков. В аквариумисты среди нас можно настроить IBeacon передатчиков себя с относительно небольшим усилием, используя Raspberry Pi или Arduino.

Мигание список

Предположим следующую ситуацию для примера реализации: Разработчик в супермаркете в субботу утром. Голодные дети ждут дома, и во второй половине дня есть выпекать продажа в школе. Только тогда выходные действительно начать. Так веские причины торопиться. к несчастью, список покупок давно и не приспособлен к раскладке супермаркета. Если в супермаркете были оборудованы iBeacons в различных отделах, Список покупок приложение может выделить соответствующие записи и значительно снизить уровень стресса (конечно полностью вымышленный) разработчик.

Поскольку наше приложение для связи с Bluetooth, мы первые требуют BLUETOOTH и BLUETOOTH_ADMIN разрешения в манифесте Android. Для того, чтобы иметь возможность пользоваться услугой, предлагаемой API Estimote взаимодействовать с iBeacons, мы должны также сделать его известным и поместить загруженный API в нашем ЛИЭСЕ каталоге /.

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

В своей деятельности находится на Создать метод, мы создаем Beacon менеджер из MOKOSmart для нашего приложения. Мы используем перехватчик для области мониторинга, сделав текущий регион, известный наш адаптер и определение интервала для сканирования радиомаяка. В примере, мы определяем, что одна вторая должна быть отсканированы, а затем 250 мс следует подождать. Эти значения выбраны относительно агрессивно, чтобы получить быстрые результаты в тестах. В реальности, трудный баланс между отзывчивостью против. Для удовлетворения от батареи. В этом прототипе, мы также заполнить наш список покупок с фиктивными значениями. Мы начинаем или мониторинг остановки в режиме он () Запуск или OnStop () Способ основной деятельности.

ITEMLIST

Адаптер выполнен в виде производной android.widget.Array адаптера и переопределяет ГЭТ View () метод, которая вызывается для каждой строки будет отображаться. Название пункта написано в первой строке обзора, определенной в макете, во втором заданном районе.

Как можно видеть в листинге 1, введенная область передается адаптеру в по Вступил области () Обратный вызов из MonitoringListener, который присваивается нашей BeaconManager: Элемент списка Adapter. сегрегация (область). При вызове GetView (), это проверяет, соответствует ли область записи в строке текущего региона. Если дело обстоит именно так, это цвет фон линии. Дополнительно или альтернативно, можно также поместить данные для текущей зоны в начале сортировки списка.

Код приложения ясно; он не принимает много реализаций усилия, чтобы принимать сигналы IBeacon и обрабатывать их в приложении. Понятия IBeacon начиная и мониторинга отображаются в MOKOSmart IBeacon SDK, так что они могут быть использованы интуитивно. Полный исходный код приложения можно найти на GitHub.

Выводы и перспективы

Мы видели, что взаимодействие с iBeacons с помощью MOKOSmart IBeacon SDK легко сделать. Поэтому я не ожидаю серьезных препятствий в технологии реализации, а в развертывании маяков и настройки мощности передачи. Эти параметры оказывают непосредственное влияние на отзывчивость приложения при изменении местоположения. В любом слючае, уравновешивание должно быть трудно.

Для особо интересны, например. В. в области домашней автоматизации, Я считаю, что сочетание iBeacons с датчиками, как в категории датчика от Texas Instruments, упомянутой выше. Estimote также запустит мобильные маяки с датчиками движения и температуры на рынке с Estimote Наклейки. Первые предварительные просмотры разработчика должны были быть доставлены в конце октября 2014, но никакие комплекты не были отгружены к концу 2014.

Это еще предстоит выяснить, является ли область применения «Крытый переход» может быть сопоставлен робастно с этой технологией. Из-за чувствительности сигнала Bluetooth к факторам помех, сильное освещение с IBeacon сигналами соответствующей области и расчетами положения с помощью триангуляции с планами номеров будет необходимо. Соответствующие решения предлагаются MOKOSmart (Крытый навигации IBeacon SDK) и многие другие производители, такие как LabWerk, но автор не знает о каких-либо практических докладах.

С развитием приложения взаимодействия с iBeacons, аспекты безопасности и защиты данных, также должны быть приняты во внимание. Из-за простоты сигнала, IBeacon подвержен подделке, который не следует забывать в процессе разработки. Такие данные, как текущее местоположение и профиль движения, которые могут быть собраны на основе поведения пользователей также имеют высокую потребность в защите.

МОКОСМАРТ iBeacon SDK

Ibeacon SDK решение