ble scanner что за программа

Android Bluetooth Low Energy (BLE) — готовим правильно, часть #1 (scanning)

Содержание

Часть #1 (scanning), вы здесь.

Могу точно сказать – это было сложней, чем представлял, мне пришлось приложить немало усилий для стабильной работы под Android. Я изучил много статей в свободном доступе, некоторые оказались ошибочными, многие были очень полезными и помогли в деле. В этой серии статей я хочу описать свои выводы, чтобы вы не тратили уйму времени на поиски как я.

Особенности работы BLE под Android

Google документация по BLE очень общая, в некоторых случаях нет важной информации или она устарела, примеры приложений не показывают, как правильно использовать BLE. Я обнаружил лишь несколько источников, как правильно сделать BLE. Презентация Stuart Kent дает замечательный материал для старта. Для некоторых продвинутых тем есть хорошая статья Nordic.

Производители делают изменения в Android BLE стеке или полностью заменяют на свою реализацию. И надо учитывать разницу поведения для разных устройств в приложении. То что прекрасно работает на одном телефоне, может не работать на других! В целом не все так плохо, например реализация Samsung сделана лучше собственной реализации от Google!

В Android есть несколько известных (и неизвестных) багов которые должны быть обработаны, особенно в версиях 4,5 и 6. Более поздние версии работают намного лучше, но тоже имеют определенные проблемы, такие как случайные сбои соединения с ошибкой 133. Подробнее об этом ниже.

Не претендую на то, что я решил все проблемы, но мне удалось выйти на «приемлемый» уровень. Начнем со сканирования.

Сканирование устройств

Перед подключением к устройству вам нужно его просканировать. Это делается при помощи класса BluetoothLeScanner :

… дополнительные данные, см. документацию по ScanResult здесь.

Настраиваем фильтр для сканирования

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

Сканирование устройств по UUID сервиса

Используется если вам необходимо найти устройства определенной категории, например мониторы артериального давления со стандартным сервисным UUID: 1810. При сканировании устройство может содержать в Advertisement data UUID сервис, который характеризует это устройство. На самом деле эти данные ненадежные, фактически сервисы могут не поддерживаться, или подделываться Advertisement data данные, в общем тут есть творческий момент.

Прим. переводчика: одно из моих устройств со специфичной прошивкой, вообще не содержало список UUID сервисов в Advertisement data, хотя все остальные прошивки этого устройства работали ожидаемо.

Пример сканирования службы с артериальным давлением:

Обратите внимание на короткий UUID (например 1810 ), он называется 16-bit UUID и является частью длинного 128-bit UUID (в данном случае 00001810-000000-1000-8000-000-00805f9b34fb ). Короткий UUID это BASE_PART длинного UUID, см. спецификацию здесь.

Сканирование устройств по имени

Поиск устройств использует точное совпадение имени устройства, обычно это применяется в двух случаях:

поиск конкретного устройства

Сканирование устройств по MAC-адресам.

Обычно применяется для переподключения к уже известным устройствам. Обычно мы не знаем MAC-адрес девайса, если не сканировали его раньше, иногда адрес печатается на коробке или на корпусе самого устройства, особенно это касается медицинских приборов. Существует другой способ повторного подключения, но в некоторых случаях придется еще раз сканировать устройство, например при очистке кеша Bluetooth.

Вероятно вы уже поняли, что можно комбинировать в фильтре UUID, имя и MAC-адрес устройства. Выглядит неплохо, но на практике я не применял такое. Хотя может быть вам это пригодится.

Настройка ScanSettings

ScanSettings объясняют Android как сканировать устройства. Там есть ряд настроек, которые можно задать, ниже полный пример:

ScanMode

Безусловно, это самый важный параметр. Определяет метод и время сканирования в Bluetooth стеке. Такая операция требует много энергии и необходим контроль над этим процессом, чтобы не разрядить батарею телефона быстро. Есть 4 режима работы, в соответствии с руководством Nordics и официальной документацией:

Callback Type

Эта настройка контролирует как будет вызываться callback со ScanResult в соответствии с заданными фильтрами, есть 3 варианта:

Match mode

Настройка того, как Android определяет «совпадения».

Number of matches

Параметр определяет сколько advertisement данных необходимо для совпадения.

Report delay

Важно: есть известный баг для Samsung S6 / Samsung S6 Edge, когда все результаты сканирования имеют один и тот же RSSI (уровень сигнала) при задержке больше нуля.

Кеширование Android Bluetooth стека

Очистка кеша

Bluetooth кеш, как и любой другой, не существует вечно, есть 3 ситуации, когда он очищается:

Выключение и включение системного переключателя Bluetooth

Очистка данных приложения (в ручном режиме в настройках телефона)

Это достаточно неудобный момент для разработчиков, потому что телефон часто перезагружается, пользователь может включать-выключать самолетный режим. Есть еще различия между производителями телефонов, например на некоторых телефонах Samsung, кеш не очищался при выключении Bluetooth.

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

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

Непрерывное сканирование?

Вообще хорошая практика – избегать непрерывного сканирования потому что, это очень энергоемкая операция, а пользователи любят, когда батарея их смартфона работает долго. Если вам действительно нужно постоянное сканирование, например при поиске BLE-маячков, выберите настройки сканирования с низким потреблением и ограничивайте время сканирования, например когда приложение находится только на переднем плане (foreground), либо сканируйте с перерывами.

Плохая новость в том, что Google в последнее время ограничивает (неофициально) непрерывное сканирование:

с Android 7 запуск и останов сканирования более 5 раз за 30 секунд временно отключает сканирование.

Непрерывное сканирование в фоне

Google значительно усложнил сканирование на переднем плане. Для фонового режима вы столкнетесь с еще большими трудностями! Новые версии Android имеют лимиты на работу служб в фоновом режиме, обычно после 10 минут работы, фоновый сервис прекращает свою работу принудительно. Посмотрите возможные решения этой проблемы:

Проверка разрешений (permissions)

Есть еще несколько важных моментов, прежде чем мы закончим статью. Для начала сканирования нужны системные разрешения (permissions):

Убедитесь, что все разрешения одобрены, или запросите их у пользователя. Разрешение ACCESS_COARSE_LOCATION Google считает «опасным» и для него требуется обязательное согласие пользователя.

Прим. переводчика, в моем проекте для корректной работы с BLE потребовалось еще 2 разрешения: ACCESS_FINE_LOCATION (для API ACCESS_BACKGROUND_LOCATION обсуждение на Stackoverflow.

В итоге полный список разрешений включая версию Android10:

Заключение

Мы научились запускать сканирование BLE устройств с учетом жизненного цикла Activity (Fragment / Service), использовать фильтры и различные настройки сканирования, также узнали все нужные разрешения (permissions) для удачного запуска сканирования и особенности работы Android-Bluetooth кеша. В следующей статье мы погрузимся глубже в процесс подключения и отключения к устройствам.

Источник

Обзор сервисов и характеристи‪к‬

LANARS LLC

Снимки экрана

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

Описание

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

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

Что нового

— Новые иконки
— Улучшения стабильности

Конфиденциальность приложения

Разработчик LANARS LLC указал, что в соответствии с политикой конфиденциальности приложения данные могут обрабатываться так, как описано ниже. Подробные сведения доступны в политике конфиденциальности разработчика.

Сбор данных не ведется

Разработчик не ведет сбор данных в этом приложении.

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

Информация

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

Источник

Bluetooth notifier, finder PRO

LANARS LLC

Снимки экрана

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

Описание

BLE Scanner is a scanner and communicator between your iPhone, iPad or Mac and any Bluetooth Low Energy device.

You can find all the devices nearby, see their properties and description, signal strength, all services and characteristics.

It is also possible to connect to any device and watch detailed information.

Что нового

— New icons
— Stability improvements

Конфиденциальность приложения

Разработчик LANARS LLC указал, что в соответствии с политикой конфиденциальности приложения данные могут обрабатываться так, как описано ниже. Подробные сведения доступны в политике конфиденциальности разработчика.

Data Not Collected

The developer does not collect any data from this app.

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

Информация

English, Arabic, Catalan, Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hebrew, Hindi, Hungarian, Indonesian, Italian, Japanese, Korean, Malay, Norwegian Bokmål, Polish, Portuguese, Romanian, Russian, Simplified Chinese, Slovak, Spanish, Swedish, Thai, Traditional Chinese, Turkish, Ukrainian, Vietnamese

Источник

Scanner Bluetooth 4+

Inigo Mato

Для iPad

Снимки экрана

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

Описание

#1 Bluetooth Scanner for BLE devices, Beacons, iBeacon and Eddystones

Bluetooth Scanner was developed with the intention to help Bluetooth community, including developers willing to create Bluetooth products and Apps.

Bluetooth Scanner is not only used by developers, but also users that need to find their lost bluetooth devices, like fitness trackers, smartwatches, beacons and other bluetooth devices.

Follow us on:
facebook: https://www.facebook.com/scannerbluetooth

Comments, questions or suggestions?
message us on facebook messenger: https://m.facebook.com/ScannerBluetooth

Конфиденциальность приложения

Разработчик Inigo Mato не сообщил Apple о своей политике конфиденциальности и используемых им способах обработки данных. Подробные сведения доступны в политике конфиденциальности разработчика.

Нет сведений

Разработчик будет обязан предоставить сведения о конфиденциальности при отправке следующего обновления приложения.

Источник

inCarDoc OBD2 ELM327 скане‪р‬ 4+

Диагностика автомобиля OBD2

PNN SOFT

Для iPhone

Снимки экрана (iPhone)

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

ble scanner что за программа. Смотреть фото ble scanner что за программа. Смотреть картинку ble scanner что за программа. Картинка про ble scanner что за программа. Фото ble scanner что за программа

Описание

Возможности inCarDoc OBD2:
Сканирование, диагностика, мониторинг и журнал: чтение динамических и сохраненных параметров из ЭБУ автомобилей поддерживающих стандарт OBD2. Чтение параметров нескольких ECU также поддерживается, но данные могут оказаться нестабильными.

Читает OBD2 параметры работы двигателя и автомобиля:
— скорость, обороты, температура, давление, лямбда и множество других поддерживаемых в вашем авто параметров. Возможно отображение как в виде графиков так и в виде стрелочных/цифровых шкал.
* Обратите внимание, что конкретный список доступных параметров зависит от марки/модели/года вашего авто.

Экономайзер:
Специальный режим для контроля и предоставления данных о расходе горючего. Позволяет отображать как параметры реального времени (мгновенный и средний расход) так и суммарные данные за поездку, за день и другую статистику.
* Обратите внимание, что режим доступен если в авто поддерживаются необходимые для расчета параметры (MAF или MAP+IAT+RPM). В некоторых случаях для правильного расчета необходимо указать Объем двигателя (в куб.см.) и Объемный КПД (в %, по умолчанию 80).

inCarDoc PRO версия

inCarDoc OBD2 PRO версия доступна во встроенных покупка бесплатной версии!
Функционал PRO версии inCarDoc OBD2 Сканера:

— Возможность записи параметров реального времени
— Чтение, отображение и запись нескольких параметров одновременно
— Запись параметров в фоновом режиме (для Kiwi3, Vgate bluetooth low energy адаптеров)
— Просмотр и отправка сохраненных трасс параметров
— Поддержка GPS для привязки параметров к трассе
— Отсылка данных на сервер www.incardoc.com (бета версия)
— Возможность просмотра детальной статистики о расходе топлива

Другие возможности:
• журнал: заправки, сервис, покупки, диагностика
• GPS: скорость, высота
• регистрация и выгрузка записей в сеть
• консольный режим: для продвинутых пользователей, прямая отправка OBD2 и ELM327 команд
• пользовательские настройки для работы с нестандартными параметрами и протоколами

Обратите внимание*
— Избегайте одновременного запуска нескольких программ чтения OBD, убедитесь что другие приложения не держат в активном состоянии подключение к OBD.
— Для работы программы требуется ELM327 Wi-Fi OBD2 кабель или Wireless OBD2 адаптер.
— Длительное использование GPS в фоновом режиме может значительно сократить время работы устройства.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *