【发布时间】:2011-07-06 16:24:48
【问题描述】:
我正在编写一个通过 rfcomm 与外部附件对话的程序。 我的问题是我不知道识别设备的正确方法是什么。 我现在的做法是这样的:
Set<BluetoothDevice> pairedDevices = mBluetoothAdapter
.getBondedDevices();
for (BluetoothDevice device : pairedDevices) {
if (device.getName().equals(MY_DEVICE_NAME)) {
this.myDevice = device;
break;
}
}
然而,这种方法依赖于设备的名称,在我看来这很脏而且很糟糕 :) 有一个更好的方法吗? 我尝试查看BluetoothDevice 的所有方法,但似乎没有任何帮助 - 名称真的是最好的方法吗? 我看到在某些地方人们说我应该使用 UUID,但它用于在我拥有它后打开设备的套接字:
_socket = myDevice.createRfcommSocketToServiceRecord(MY_UUID);
有没有更好的方法?
【问题讨论】:
标签: java android bluetooth uuid rfcomm