Android手机和支持蓝牙的硬件设备之间的蓝牙通信
问题描述:
我试图做一个应用程序,从其他设备接收一些二进制数据,这是而不是运行Android。 Android手机不应该将任何数据传输到此设备。因此,我的问题:Android手机和支持蓝牙的硬件设备之间的蓝牙通信
- 手机应该作为建立RCOMM通道的服务器?
- 只要我知道设备的MAC地址,是否可以连接手机和本设备而不削减?如果是这样,怎么样?
是的,我已阅读http://developer.android.com/guide/topics/connectivity/bluetooth.html所以没有必要只回答该链接。 :)
在此先感谢!
答
1) 电话应该充当接收机。
我发现棘手的部分是使用正确的UUID。
如果连接两部手机,你应该产生的,一切都正常工作,但你的硬件,你可以不是轻易改变UUID。 看看这些reserved UUIDs。
对于串行端口配置文件(SPP)通信,使用UUID 00001101-0000-1000-8000-00805F9B34FB
。
2) 你可以可以连接到设备,如果你已经知道MAC地址,你甚至不需要使用蓝牙发现。
要获取设备使用MAC地址呼叫getRemoteDevice(String)
然后createRfcommSocketToServiceRecord(UUID)
得到BlueToothSocket
。
另请参阅checkBluetoothAddress(String)
以验证MAC地址。