Я не уверен, что вы подразумеваете под "скрытым режимом". Вы можете подключиться к устройству, которое невозможно обнаружить, но вы не можете подключиться к устройству, которое невозможно подключить.
Как правило, при использовании 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-адрес, и использовать его для открытия соединения.