10 ноября 2012 г.

Nexus 7 и Bluetooth Low Energy (Bluetooth 4.0)

В официальной спецификации от производителя не указано какие именно версии протокола Bluetooth поддерживает планшет, но благодаря обзорам и анализу драйверов эта информация стала доступна. Модуль AzureWave AW-NH665 построен на базе BCM4330 который умеет Bluetooth 4.0+HS. С аппаратной поддержкой определились.

Программная поддержка вероятно реализуется через broadcom-ble. Благо в комплекте есть несколько примеров проектов. Пробным проектом был выбран BleFindMeServer. Проект уже готовый и в доработке не нуждается, остаётся только собрать apk из исходников, установить и запустить.

Только установка завершается с ошибкой:
$ adb install BleFindMeServer.apk 
1213 KB/s (82744 bytes in 0.066s)
 pkg: /data/local/tmp/BleFindMeServer.apk
Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]

Установщик не находит необходимую библиотеку com.broadcom.ble, которая уже должна быть в системе. Обходной путь, найденный в темах, посвящённых такой же проблеме, результат не дал, а только отсрочил проблему: программа падает с исключением:
FATAL EXCEPTION: main
java.lang.NoSuchMethodError: android.bluetooth.BluetoothDevice.getDeviceType
  at com.broadcom.bt.le.api.BleAdapter.getDeviceType(BleAdapter.java:112)

Я надеюсь что со временем выйдет обновление для ОС с необходимой библиотекой. А пока Bluetooth Low Energy на устройствах с Android остаётся лишь хотелкой.

Комментариев нет:

Отправить комментарий