在Android中手动配对蓝牙设备



我正在看这个http://developer.android.com/guide/topics/wireless/bluetooth.html QueryingPairedDevices

这是关于如何配对,连接到蓝牙设备的大量帮助。

我有一种情况,我有几个BT设备总是处于非发现模式。我知道这些设备的MAC和PIN。是否有一种方式在Android开发手动添加设备到配对列表,所以我可以使用连接作为客户端。我知道这个手册是为V3编写的。我想我需要在2.0上这样做;有人这样做过吗?

基本上我想连接的这些设备是节能模块,我使用预建的BT模块来监控日光,另一个湿度等。每3小时或中断时,一个电池运行数月。因此,关闭服务器上的分区可以节省大量的电力,并防止其他人试图连接和浪费电池。

不确定"手动"是什么意思:您是指GUI/用户交互中的"手动",还是"手动"作为"我在自己的应用程序代码中执行"?

一些建议:

如果你想让你的BT设备被发现,你可以这样做:

  1. 使您的BT设备可被发现
  2. 让Android搜索并找到设备,然后启动连接
  3. Android将要求PIN与设备配对;输入PIN码
  4. 一旦配对成功,Android将存储配对信息以备将来使用,因此您可以
  5. 让你的BT设备再次隐形。

从那时起,您的应用程序应该能够随时连接到BT设备,而无需进一步的配对操作。

如果上面说的不是你的选择,也许你想用另一种方式:

在当前的Android版本中,实现了不同的API例程,这些例程既没有记录也没有在正常的SDK中暴露。一种巧妙的解决方案可能是使用这些"隐藏"("@hide"…)api,要么通过反射,要么通过修改您的SDK安装。

但请注意,这始终是一个hack,它可能在特定设备上使用特定版本的Android,并且很可能在另一个设备和/或任何其他Android版本上破坏你的应用。

话虽如此,这里有一些参考:

如何访问"hidden"蓝牙API的示例。

然后,看看android.bluetooth的源代码。BluetoothDevice,例如这里

在这里,public boolean createBond(){...}可以做你想做的。

相关内容

  • 没有找到相关文章

最新更新