0

由于蓝牙是一种广播协议,有没有办法在无法发现的情况下监听广播?这个想法是为了避免使设备可被发现,而只是监听广播,检查设备以获取特定的设备名称,然后连接到该设备的 MAC 地址(随后是握手、验证等)。

具体来说,我有一个使用 AT 命令集(此处为用户手册)的蓝牙设备,我希望我的 Android 设备在进入范围时自动连接到它。但是,我想要一个不需要我的 Android 始终可见的解决方案,因为我希望 Android 大多数时间都不会在范围内。

是否有可以从我的第一台设备发送的低级蓝牙命令,并使用不需要配对、连接或可发现性的 Android SDK 进行监听?可能是 ACL 请求之类的东西?

(此外,我不让我的设备可被发现的原因主要是电力,还有一些用户隐私的原因。设备可发现性的电池消耗有多重要?几乎没有?重要吗?)

4

2 回答 2

0

它称为蓝牙 PAGE 命令。虽然不确定您将如何从您的设备使用它,但它允许蓝牙设备(实际上)向其配置的主设备宣布其存在。您必须查看 Android 对 PAGE 的响应,以了解它的支持程度。

于 2011-05-02T19:18:29.650 回答
0

如果 Android 正在连接设备,那么 Android永远不需要被发现。除非我误会了……(Android 上的收音机只需要通电而不是“可连接”或“可发现”)

Android 可以经常尝试连接(发送 PAGE),以查看远程设备是否已回到范围内。然后,即使远程设备也不需要被发现,只需“可连接”——假设您的 Android 程序记住了远程设备的设备地址。

或者您可以让远程设备每隔一段时间尝试重新连接 Android 设备(假设远程设备支持建立连接)。您需要让 Android 上的程序成为服务器/侦听器,并且 Android 蓝牙处于“可连接”模式。

于 2011-05-04T15:10:12.387 回答