Обнаружение скрытого устройства Bluetooth с известным идентификатором - PullRequest
3 голосов
/ 07 января 2011

У меня есть MAC-идентификатор целевого устройства Bluetooth, и я хотел бы узнать, находится ли он в зоне действия.Как я могу установить соединение с целевым устройством, если у меня есть его идентификатор и он находится в скрытом режиме?

Для этого я использую bluecove (java).

1 Ответ

5 голосов
/ 09 января 2011

Я не уверен, что вы подразумеваете под "скрытым режимом". Вы можете подключиться к устройству, которое невозможно обнаружить, но вы не можете подключиться к устройству, которое невозможно подключить.

Как правило, при использовании JSR-82 (или Bluecove, реализации JSR-82) необходим объект RemoteDevice, чтобы открыть соединение. Единственный способ получить RemoteDevice - через поиск устройства. Похоже, вы не можете выполнить поиск устройства в вашем случае, так как устройство «скрыто».

В Bluecove вы заметите, что RemoteDevice имеет защищенный конструктор, который принимает строку адреса Bluetooth. Вы можете создать подкласс RemoteDevice, который просто делает этот конструктор общедоступным. Например:

public class MyRemoteDevice extends javax.Bluetooth.RemoteDevice {
  public MyRemoteDevice(String addr) {
    super(addr);
  }
}

Затем вы можете создать экземпляр MyRemoteDevice, передав ему известный MAC-адрес, и использовать его для открытия соединения.

...