Android蓝牙哪里可以获取UUID?
我想通过蓝牙连接3台设备 例如,我使用BluetoothChat。所以我如何理解我应该为这个设备使用不同的UUID。我一直在尝试通过这样的UUID=766c82f0-e1b4-11df-85ca-0800200c9a66进行连接,这是我从Web UUID生成器获得的。但它根本不起作用 如果我使用UUID=00001101-0000-1000-8000-00805F9B34FB,我已成功连接(到1个设备)Android蓝牙哪里可以获取UUID?,android,bluetooth,uuid,Android,Bluetooth,Uuid,我想通过蓝牙连接3台设备 例如,我使用BluetoothChat。所以我如何理解我应该为这个设备使用不同的UUID。我一直在尝试通过这样的UUID=766c82f0-e1b4-11df-85ca-0800200c9a66进行连接,这是我从Web UUID生成器获得的。但它根本不起作用 如果我使用UUID=00001101-0000-1000-8000-00805F9B34FB,我已成功连接(到1个设备) 我在哪里可以得到UUID 您必须对尝试连接的设备执行服务发现,获取它返回的UUID(该UUI
我在哪里可以得到UUID 您必须对尝试连接的设备执行服务发现,获取它返回的UUID(该UUID将对应于设备上运行并接受连接的服务)然后连接到它。UUid用于唯一标识应用程序。每个应用程序都有一个唯一的UUid。因此,为每个设备使用相同的UUid为了与目标设备连接,您需要知道您连接的是什么。列出您的设备目标会更有帮助 UUID可以从该链接获得 在这里,您需要了解每个目标设备中使用的蓝牙配置文件。您提到“UUID=00001101-0000-1000-8000-00805F9B34FB”是有效的 这是因为您的设备具有SPP蓝牙配置文件。SPP代表串行端口配置文件 您还可以查找Bluetoothdevice.getuuids
想象一下,你有一个或多个服务。每个服务都有自己的UUID。 UUID=000011101-0000-1000-8000-00805F9B34FB是SPP的专用设备。如果未设置SPP UUID,某些设备(例如蓝牙串行板)将无法工作。 但对于Android设备(如智能手机)之间的点对点连接,您可以使用自己生成的UUID。 设备必须设置相同的UUID才能相互找到并连接。 UUID格式:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,其中x=[0,…,9]|[A,…,F]。 好主意是将xxxxxxxx-xxxx-xxxx-xxxx-设置为生成的唯一id。 第二部分XXXXXXXXXX可以设置为您的服务器MAC地址,但不带“:”。
在客户端,u可以根据已知生成的唯一id(嵌入到应用程序中)和服务器MAC地址构造UUID,而不使用“:”。您可以在蓝牙设备发现过程中获取服务器MAC地址。如果您使用linux或MAC,请在终端中输入“uuidgen”此命令(不带引号),您将获得一个唯一的UUID,在android项目中使用它。您必须获取蓝牙UUID才能建立与设备的连接 您可以使用反射调用方法
getUuids()
:
try {
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
Method getUuidsMethod = BluetoothAdapter.class.getDeclaredMethod("getUuids", null);
ParcelUuid[] uuids = (ParcelUuid[]) getUuidsMethod.invoke(adapter, null);
if(uuids != null) {
for (ParcelUuid uuid : uuids) {
Log.d(TAG, "UUID: " + uuid.getUuid().toString());
}
}else{
Log.d(TAG, "Uuids not found, be sure to enable Bluetooth!");
}
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
不要忘记添加权限:
<uses-permission android:name="android.permission.BLUETOOTH"/>
我觉得这很有帮助。请给出一个UUID的例子。我似乎不明白
UUID: 0000110f-0000-1000-8000-00805f9b12fb
UUID: 0000111d-0000-1000-8000-00805f9b12fb
UUID: 0000111a-0000-1000-8000-00805f9b12fb