为什么要硬编码而不是像SO post这样做?什么应该是安全和不安全的uuid之间的区别?
对于以下代码所在的BluetoothService类,请注明link。
// Unique UUID for this application
private static final UUID MY_UUID_SECURE =
UUID.fromString("fa87c0d0-afac-11de-8a39-0800200c9a66");
private static final UUID MY_UUID_INSECURE =
UUID.fromString("8ce255c0-200a-11e0-ac64-0800200c9a66");
答案 0 :(得分:0)
您提供的链接可以回答如何查找设备的ID,accepted answer获取device id(IMEI,如果是GSM手机),则为设备唯一标识符。这不是UUID它可以转换为一个但不能解决问题Bluetooth Chat example application。了解蓝牙聊天使用静态UUID的原因的关键是理解Bluetooth Service Discover Protocol。 SDP中的UUID声明了可用的协议或服务,并且众所周知。如果使用随机UUID并且没有人分享其含义,则其他设备将不知道如何与该蓝牙服务交互。这大致类似于在URI中放置随机模式。例如,浏览器知道http
和https
(https
被理解为使用TLS)但不是foop
或barp
。并且,为了表示特定设备,蓝牙使用MAC Address,这是一个48位唯一编号。