Я новичок в использовании Bluecove API
, и кажется, что после долгих исследований я все еще не могу найти способ проверить, уже ли RemoteDevice
подключен к работающей машине или нет.
Прежде всего, мне удалось успешно запустить сканирование, однако мне кажется странным, что Bluecove
не предлагает способ поиска только устройств, которые находятся в режиме обнаружения, поэтому необходимо проверить, сопряжены они или нет...
Чтобы быть более точным, я «перевожу» проект, который я разработал на С#, используя InTheHand.dll
для управления Bluetooth. Эта сборка великолепна и помогла мне достичь того, чего я хотел: сканировать устройства в режиме обнаружения и в диапазоне, инициировать процесс сопряжения, обрабатывать данные через Bluetooth streams
. Мне нужно сделать то же самое с Bluecove.
Почему так сложно найти ответы? В документации почти ничего не говорится о сопряжении, хотя мне удалось соединить устройство, которое, как я знал, не было сопряжено через RemoteDevice.authenticate()
.
Во всяком случае, чтобы подвести итог:
- Как запустить сканирование только устройств в режиме обнаружения?
- Как узнать, было ли уже сопряжено устройство или нет?
Примечание: использование как RemoteDevice.isAuthenticated()
, так и RemoteDeviceHelper.implIsAuthenticated(remoteDevice)
всегда возвращает false
независимо от статуса пары.
Примечание 2. Кроме того, просмотрев RemoteDeviceHelper.java
from http://bluecove.googlecode.com/svn/trunk/bluecove/src/main/java/com/intel/bluetooth/RemoteDeviceHelper.java , для boolean paired
существует частная собственность.
Кажется, ни один общедоступный метод не будет использовать его...
Еще более странно и отчаянно неприятно то, что в режиме отладчика, глядя на конкретный RemoteDevice
, я вижу значение этого свойства. Это действительно ложно, если устройство не сопряжено, и верно, если устройство сопряжено! Почему API не может сообщить мне об этом?
Что я должен делать ? Спасибо за помощь !