我正在看这个http://developer.android.com/guide/topics/wireless/bluetooth.html QueryingPairedDevices
这是关于如何配对,连接到蓝牙设备的大量帮助。
我有一种情况,我有几个BT设备总是处于非发现模式。我知道这些设备的MAC和PIN。是否有一种方式在Android开发手动添加设备到配对列表,所以我可以使用连接作为客户端。我知道这个手册是为V3编写的。我想我需要在2.0上这样做;有人这样做过吗?
基本上我想连接的这些设备是节能模块,我使用预建的BT模块来监控日光,另一个湿度等。每3小时或中断时,一个电池运行数月。因此,关闭服务器上的分区可以节省大量的电力,并防止其他人试图连接和浪费电池。
不确定"手动"是什么意思:您是指GUI/用户交互中的"手动",还是"手动"作为"我在自己的应用程序代码中执行"?
一些建议:
如果你想让你的BT设备被发现,你可以这样做:
- 使您的BT设备可被发现
- 让Android搜索并找到设备,然后启动连接
- Android将要求PIN与设备配对;输入PIN码
- 一旦配对成功,Android将存储配对信息以备将来使用,因此您可以 让你的BT设备再次隐形。
从那时起,您的应用程序应该能够随时连接到BT设备,而无需进一步的配对操作。
如果上面说的不是你的选择,也许你想用另一种方式:
在当前的Android版本中,实现了不同的API例程,这些例程既没有记录也没有在正常的SDK中暴露。一种巧妙的解决方案可能是使用这些"隐藏"("@hide"…)api,要么通过反射,要么通过修改您的SDK安装。
但请注意,这始终是一个hack,它可能在特定设备上使用特定版本的Android,并且很可能在另一个设备和/或任何其他Android版本上破坏你的应用。
话虽如此,这里有一些参考:
如何访问"hidden"蓝牙API的示例。
然后,看看android.bluetooth的源代码。BluetoothDevice,例如这里
在这里,public boolean createBond(){...}
可以做你想做的。