当前位置: 首页 > 知识库问答 >
问题:

如何从ble设备获取正确的(解码)制造商广告数据?

杨凌
2023-03-14

我是android新手,所以,基本上我正在开发一个应用程序,它可以从ble设备获取数据,以便对其进行进一步的操作。我到目前为止所做的:-

我扫描了设备,得到了它们的rssi和macaddress,但当我试图在回调方法中获取scanRecord时,为了访问制造商数据,我得到了如下sparseArray:-

{89=[-128,42, 75, -112, 75, -34, 0, 0, 0, 0, 0, -81, 22]}

但是我想要的是这样,

[59,00,80,BC,26,01,00,FF,FF,00,00,04,00,00,00]

共有1个答案

钦良弼
2023-03-14

实际上是通过以下步骤解决的:-

我通过传递制造商ID来获取制造商数据

getScanRecord(). get制造商规格数据(制造商ID)

它返回字节数组,然后我通过编写自己的函数将其转换为十六进制字符串,仅此而已

 类似资料:
  • 在BLE制造商数据中,当从字节转换为字符串时,我得到如下数据: JLG BLE ��������ÿSPH90234380,100084 ,������������������. 即使是从字节到十六进制再到十六进制到字符串的转换,也只能像这样打印。 十六进制格式: 0201608084A4C4720424C45020A0A0FFF5307043734353393600000015FF53075048

  • 我正在开发一个与硬件设备连接的BLE(蓝牙LE)应用程序。我能够发现并连接到设备,从设备读取数据,将数据写入设备。 我在苹果的BLE文档中找不到的是,当你靠近一台设备时,当应用程序关闭时,如何获得通知。 我知道如何注册到特征通知,但此通知仅在应用程序位于后台时发生。 我知道可以在应用程序关闭时检测蓝牙,并发送通知,但我想在设备发现具有的特定BLE时收到通知。 iBeacon正在将BLE与UUID、

  • 在获得血压服务的所有特征(uuid:00002a35-0000-1000-8000-00805f9b34fb)后,我无法获得这些值(血压测量机的收缩、舒张和脉搏),而且我也不了解所有这些特征和描述符的意义。所以请大家帮我解决这个问题。

  • 如何在objective C或swift中获取设备的MAC地址。有没有办法从“标识符”字段获取MAC地址。

  • 如何从设备读取RAW数据?

  • 我拥有一个极地H10胸带,它以蓝牙低能量运行,并提供心率和心率变化。 我想用Android应用程序读取这些值。由于官方BLE教程中的帮助,我能够连接到设备。现在的问题是从设备中读取心率和心率变异性值。每次设备上有新值可用时,我都要读取该值(并且至少每秒都有新值)。 我找到了以下代码: 假设我与设备有连接,我如何使用它来提取心率和r-r间隔(节拍到节拍间隔)?如果有人能举个简短的例子,我会很高兴。此