Подтвердить что ты не робот

Чипсеты/устройства, поддерживающие периферийный режим Android 5 BLE

** Обзор известных устройств: Nexus 6, Nexus 9, Moto E 4G LTE, LG G4, Galaxy S6, Samsung Galaxy S5 (модель SM-G900M), Nexus 5X, Sony Xperia Z5 Compact, Samsung Galaxy Tab S2 **

** Также см. https://altbeacon.github.io/android-beacon-library/beacon-transmitter-devices.html **

Одной из новых возможностей выпуска Android 5 является поддержка периферийного режима Bluetooth Low Energy. Несмотря на то, что он работает независимо от используемого устройства, он, похоже, зависит от набора микросхем (см. Функцию isMultiAdvertisementSupported() в BluetoothAdapter.java).

Он работает для Nexus 5, но не для Nexus 7 (называемого bug in BLE периферийной поддержкой Android-L примера, но он может никогда не работать, потому что его чипсета?). Также https://code.google.com/p/android-developer-preview/issues/detail?id=589 не дает убедительных утверждений.

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

Для меня очень непонятно, какие чипсеты/устройства, которые в конечном итоге получат Android 5, будут поддерживать периферийный режим BLE. Любой, кто может дать мне какие-либо идеи по этому поводу? Какие чипсеты будут поддерживать периферийный режим BLE? В частности, как многие из наших клиентов имеют Nexus 7 (2013), будет ли поддерживаться Nexus 7?

Изменить 19-2-2015: С декабря 2014 года он больше не поддерживается для Nexus 5, только у Nexus 6 и 9, похоже, есть поддержка BLE Peripheral Mode/Advertising. Надеемся, что количество устройств, поддерживающих это, значительно увеличится в ближайшем будущем.

Дополнительная информация и обсуждение здесь: https://code.google.com/p/android-developer-preview/issues/detail?id=1570

Изменить 6-3-2015: Добавлен обзор для быстрой справки

Изменить 17-2-2016: Добавлены некоторые устройства, которые я проверил самостоятельно, но не вошли ни в один из других списков

4b9b3361

Ответ 1

Android 5.0.X позволит вам использовать новый API для BLE. Этот новый API поставляется с новой функцией, о которой вы упомянули в своем вопросе: возможность рекламы с вашего собственного устройства Android, используя его в режиме периферийного устройства. Однако недостатком этой новой функции является то, что она зависит от оборудования. Например, перед запуском любого BLE вам необходимо:

Сначала: проверьте, поддерживается ли BLE, что вы можете сделать, добавив эту строку в манифест: <uses-feature android:name="android.hardware.bluetooth_le" android:required:"true"/>

Во-вторых: вам нужно проверить, поддерживает ли ваш набор микросхем, используя следующие методы:

bluetoothAdapter.isMultipleAdvertisementSupported();
bluetoothAdapter.isOffloadedFilteringSupported();
bluetoothAdapter.isOffloadedScanBatchingSupported();

Также обратите внимание, что для обоих указанных выше методов документация API четко заявляет, что:

"Возвращаем true, если поддержка нескольких объявлений поддерживается чипсетом"

"true, если чипсет поддерживает фильтрацию на кристалле"

"true, если чипсет поддерживает пакетное сканирование на кристалле"

Это, как говорится, приводит нас к вопросу:

"Какие аппаратные устройства будут поддерживать эту функцию?"

Хорошо, ответ на этот вопрос немного сложнее, поскольку это не является обязательной функцией для аппаратного обеспечения/протокола Bluetooth, и, вероятно, это будет отличаться от производства к производству. Но пока единственными устройствами, официально поддерживающими технологию, без серьезных проблем, являются Nexus 6 и Nexus 9, поскольку их оборудование уже поставляется с поддержкой. Лучшее, что вы можете сделать, не полагается только на технологию на данный момент и попытаться изучить другие возможные решения, если они есть.