使用startScan(onFoundBLEDevice、onBLEScanError)执行BLE扫描时。首先,发送到onFoundBLEDevice的参数是单个设备还是一个设备列表?如果答案是“单个设备”,当执行扫描时本地附近有一个以上的BLE设备时会发生什么?
其次,由于我的目标是从我自己的智能手机(与我的智能手表配对并连接的智能手机)中检索电池电量,我如何才能分辨出通过扫描找到的哪些设备是连接的设备?或者我甚至需要执行扫描?是否有其他方法可以检索设备对象,从而获得电池服务0x180F和电池电量特性0x2a19?换句话说,我想确保我检索到的电池电量是我手机的电量,而不是坐在我旁边的朋友的电量。
更新:我的智能手机是三星Galaxy S3,运行安卓4.3,我的智能手表是三星Gear S2,运行Tizen 2.3.1。我使用的是Tizen蓝牙API。
发布于 2018-03-22 15:04:06
每次发现设备时,都会调用BluetoothLEScanCallback (在本例中为onFoundBLEDevice)。(对于附近的3台设备,-> 3呼叫)
当我的设备通过“Samsung gear”应用程序与手机连接时,我已经扫描了附近的设备。不,无法将通过Gear Manager连接的特定移动设备与其他设备区分开来。因此,您在此过程中找不到已连接的设备。(除非您正在开发供个人使用的应用程序,否则您可以对移动设备的UUID进行硬编码)
三星为此提供了“附件”SDK。
Samsung Accessory SDK
您使用附件SDK交换的任何数据都会通过Samsung Gear向您提供特定“已连接”设备的信息。请查看附件SDK部分中的API参考、编程指南和Android端示例应用程序以及Tizen端示例应用程序。
https://stackoverflow.com/questions/49286994
复制相似问题