2015-05-25 2 views
1

У меня есть HTC Desire 816, а его версия для Android - 5.0.2. Я хочу попробовать кодирование о BLE peripheral режиме. Я использую следующий код:Bluetooth-периферийный режим С HTC Desire 816

BluetoothManager btManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE); 
     BluetoothAdapter btAdapter = btManager.getAdapter(); 
btAdapter.isMultipleAdvertisementSupported(); 

Он всегда возвращает null объект.

Поддерживает ли HTC BLE peripheral режим?

спасибо.

ответ

0

Что касается BLE периферического/рекламной поддержки:

В HTC Desire 816 был выпущен в феврале 2014 года с Android 4.4. Месяцы спустя, в ноябре 2014 года, Google пояснил, что единственными устройствами, поддерживающими периферийный/рекламный режим BLE в этот момент, были Nexus 6 и Nexus 9 (in this thread).

Поэтому я пришел к выводу, что Desire 816 не поддерживает этот режим, хотя его уровень API для Android. Но с отсутствием такого устройства я не могу проверить это самостоятельно.

Что касается вашего кода:

Я сравнил свой код к моей собственной реализации BLE рекламы. С моей точки зрения, этот код должен успешно работать. В любом случае я был смущен, что isMultipleAdvertisementSupported() не возвращает логическое значение. Взглянув в Android Docs, я увидел, что этот метод возвращает только истинные значения. Таким образом, поскольку он возвращает null для вас, это будет еще одним доказательством того, что ваше устройство не поддерживает режим периферийной рекламы/рекламы BLE.

Надеюсь, что это поможет :)

Смежные вопросы