检测具有已知ID的隐藏蓝牙设备
我有目标蓝牙设备MAC-ID,想看看它是否在范围内。 如果我拥有它的ID并且它处于隐藏模式,我如何建立与目标设备的连接?
我正在使用bluecove(java)。
我不确定你的“隐藏模式”是什么意思。 您可以连接到不可发现的设备,但无法连接到无法连接的设备。
通常,使用JSR-82(或Bluecove,JSR-82实现),您需要具有RemoteDevice
对象才能打开连接。 获取RemoteDevice
的唯一方法是通过设备搜索。 看起来你不能在你的情况下进行设备搜索,因为设备是“隐藏的”。
在Bluecove中,您会注意到RemoteDevice
有一个受保护的构造函数,它接受一个蓝牙地址字符串。 您可以创建RemoteDevice
的子类,只需将该构造函数RemoteDevice
public。 例如:
公共类MyRemoteDevice扩展javax.Bluetooth.RemoteDevice { public MyRemoteDevice(String addr){ 超级(addr);将 } }
然后,您可以创建MyRemoteDevice
的实例,将其传递给已知的MAC地址,并使用它来打开连接。