检测具有已知ID的隐藏蓝牙设备

Kar*_*eid 3 java bluecove

我有目标蓝牙设备MAC-ID,想看看它是否在范围内.如果我拥有它的ID并且它处于隐藏模式,我如何建立与目标设备的连接?

我正在使用bluecove(java).

pwc*_*pwc 5

我不确定你的"隐藏模式"是什么意思.您可以连接到不可发现的设备,但无法连接到无法连接的设备.

通常,使用JSR-82(或Bluecove,JSR-82实现),您需要有一个RemoteDevice对象才能打开连接.获得a的唯一方法RemoteDevice是通过设备搜索.看起来你不能在你的情况下进行设备搜索,因为设备是"隐藏的".

在Bluecove中,您会注意到RemoteDevice有一个带有蓝牙地址字符串的受保护构造函数.您可以创建一个子类RemoteDevice,只是使该构造函数公开.例如:

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

然后,您可以创建一个实例MyRemoteDevice,将其传递给已知的MAC地址,并使用它来打开连接.