Клиент BlueCove не распознает службу PyBlueZ - PullRequest
1 голос
/ 22 марта 2012

У меня на рабочем столе Ubuntu работает bluetooth-сервер, написанный на PyBlueZ. Этот сервер рекламирует определенный сервис через UUID. Я тщательно протестировал этот сервер с помощью клиента, который я также написал с помощью PyBlueZ.

Сейчас я пытаюсь реализовать клиент Java с использованием BlueCove. Мой клиент BlueCove может успешно найти мой рабочий стол (я проверил, напечатав «удобное для пользователя имя»). Однако, когда я выполняю поиск услуг на своем рабочем столе по объявленному UUID, никакие службы не обнаруживаются. Я не получаю сообщение об ошибке или что-либо еще, я просто не получаю никаких обратных вызовов для обнаруженных служб.

Есть ли что-нибудь необычное, что может происходить при соединении этих двух систем? Идентификаторы UUID идентичны, хотя я заметил, что формат PyBlueZ запрашивает тире «-» в UUID, тогда как BlueCove ожидает одну непрерывную строку шестнадцатеричных цифр. Я предполагаю, что это чисто презентационный вопрос.

Наконец, в несвязанном вопросе есть ли сообщества BlueCove? Я столкнулся с крайней нехваткой ресурсов, чтобы найти ответы на мои вопросы о BlueCove ...

1 Ответ

2 голосов
/ 22 марта 2012

Ошибка, которую я сделал, заключалась в том, что я не осознавал, что searchServices () был асинхронным методом, который требовал столько же времени, сколько и поиск устройства.Я не спал (), чтобы дать ему возможность найти сервисы.

Теперь, когда я даю searchServices () время для завершения, он по крайней мере вызывает обратный вызов serviceDiscovered.

...