问题标签 [characteristics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1291 浏览

android - onCharacteristicWrite 如何知道 Android 中的成功状态?

我正在为 Android 开发 BLE,我有一个关于onCharacteristicWrite.

我知道onCharacteristicWrite将值写入远程 BLE 设备时将被调用并返回状态。

onCharacteristicWrite返回状态为0after时Gatt.writeCharacteristic,表示写入成功。

问题:

怎么onCharacteristicWrite知道退货状态0??远程 BLE 设备会向 Android 发送 ACK 吗?

0 投票
1 回答
1808 浏览

android - 低功耗蓝牙:gattCharacteristic.getDescriptor() 返回 null

我在获取特征描述符时遇到问题,它总是返回 null。我的代码有一大块:

...

我在带有 Android 5.1 的 Nexus 6 和带有 OS 2.0(如 Android 4.3)的诺基亚 X2 DS 上尝试了这个,并且有类似的错误。

等待答案)感谢您的关注!

0 投票
1 回答
1540 浏览

android - 更改UUID后Android蓝牙未发现特征

我正在使用 Android 5.0.1 Lollipop 并开发低功耗蓝牙服务器-客户端通信。我有三星 Galaxy s4。我的定制服务有三个特点。我将特征属性之一设为只写和加密写入。然后我将其更改为非加密写入。写操作不再适用于这个特性。我知道我必须从设置中重新启动蓝牙适配器并取消配对设备,但它根本不再工作。然后我更改了特征的 UUID。它发现旧 UUID 的特征。我不明白。如何从蓝牙适配器中删除与某一特定设备相关的所有蓝牙数据?

编辑:我用 iPhone 设备检查了它。iPhone 使用新 UUID 发现该特性,而 Android 发现它是旧 UUID。

0 投票
1 回答
1025 浏览

bluetooth - 使用 Dbus API for bluez 5.31 写入特征值在内核 4.1 中失败

我无法在新的 4.1 内核上写入通过 dbus 公开的特性的属性值。

在升级到内核 4.1 之前,相同的应用程序可以通过 dbus 将属性值写入特征,而不会出现任何问题。

以下是从 bluetoothd 收集的日志 -

org.freedesktop.DBus.Error.AccessDenied:拒绝发送消息,1 个匹配规则;type="method_call", sender=":1.24" (uid=0 pid=4112 comm="bluez-5.31/src/bluetoothd -ndE") interface="org.bluez.GattCharacteristic1" member="WriteValue" 错误名称= “(未设置)”request_reply="0"destination=":1.25"(uid=0 pid=4114 comm="./test")

有什么建议么?提前致谢。

0 投票
1 回答
5555 浏览

android - 在 Android BLE 中使用自定义 UUID 时遇到问题

我在使用自己生成的 UUID(不使用蓝牙 SIG 保留的 16 位 UUID)在 Android BLE 中进行通信时遇到问题。

目标设备有两个 - 一个作为外围设备(Samsung Galaxy Note 4/android 5.1.1),另一个作为中央设备(Samsung Galaxy S5/android 5.0.1)。我将自己的服务的 UUID 和特性的 UUID 放在外围设备端。在中央,它找不到特色,只有服务。

它似乎是由于不使用这些特征 UUID之一而是使用自定义生成的 UUID 引起的。下面是我自己生成的 UUID。

服务,发现很好,但有特色,没有。你有什么主意吗?

0 投票
1 回答
435 浏览

android - Android 在读取另一个特性时必须等待

我有一个应用程序可以成功读取不同的蓝牙特性。它有效,但前提是我在阅读不同特征之间等待一段时间。这个时间在 70 到 200 毫秒之间变化,我觉得这很烦人。有没有其他人遇到过这个问题?或者有人知道解决这个问题的方法吗?

0 投票
1 回答
650 浏览

bluetooth-lowenergy - Polar H7 未解决的服务和特性(它们有什么用?)

我正在开发一个使用 Polar H7 心率监测器的应用程序。我最初在发现它的服务时遇到了一些麻烦,因为我会得到一个大对象,而十六进制代码对我来说没有任何意义。

现在我已经解决了几乎所有的服务和特性,但还有一些我还没有弄清楚。

这是一个包含服务/characteristicUuid 及其名称/功能的简化对象:

我找不到最后一个 serviceUuid 的任何文档,它是characteristicUuid 的。我不知道我错过了什么,所以我不知道它对我的项目是否重要。

0 投票
1 回答
2025 浏览

bluetooth - 带有 Android 棉花糖的 Nexus 5x 中的蓝牙低功耗 writeCharacteristic 返回 false

我的应用程序在三星 S6 和 Nexus 5 以及 Nexus 7 上运行良好,Android 5,但是,它不能在 Nexus 5x 上运行 Android 6。


布尔成功 = mBluetoothGatt.writeCharacteristic(特征);


我的应用程序将多次发送此命令以设置或从硬件获取数据,但是,在发送一个或两个命令后它可能会返回 false。(第一个命令将返回 true)

Android Marshmallow 是否会改变 BLE 中的某些内容?

0 投票
1 回答
900 浏览

bluetooth-lowenergy - Gatttool “Characteristic Write Request failed:” 如何减少读/写的失败超时?

我正在使用 bluez-4.101 从我的板上读取和写入特性。使用 gatttool。

有时我得到特性写入请求失败:或读取失败。

这些错误的频率大约是 2/10,我可以做些什么来充分证明,如果是正常的,我想减少失败前的超时时间。

0 投票
1 回答
6298 浏览

android - 尝试写入特征时的Android BLE NullPointerException

我是 Android 应用程序开发的新手,这是我第一次尝试让 Android 设备与 BLE 设备(它将与微控制器通信)对话。目标是发送一个值,在这种情况下,字符串“green”或“blue”转换为字节,以告诉微控制器打开 LED。

由于我不精通蓝牙,我一直在网上寻找各种资源来帮助将一些代码放在一起。现在,当我到达连接到设备的位置并尝试发送信号时,我收到以下错误代码:

java.lang.NullPointerException:尝试在 com.example.andres.battle_bots.DeviceControlActivity.makeChange(DeviceControlActivity.java:366) 的空对象引用上调用虚拟方法“boolean android.bluetooth.BluetoothGattCharacteristic.setValue(byte[])”在 com.example.andres.battle_bots.DeviceControlActivity.access$800(DeviceControlActivity.java:52) 在 com.example.andres.battle_bots.DeviceControlActivity$3.onClick(DeviceControlActivity.java:151)

我不太确定我错过了什么,因为我在使用它们之前实例化了我正在使用的变量并且仍然抛出异常。我有可能误解了我正在适应的代码。到目前为止,我有 2 个活动,DeviceScanActivity,它扫描设备并连接,以及 DeviceControlActivity,这是发生主要设备交互和错误发生的地方。这是代码:

任何帮助是极大的赞赏。你肯定会让我的生活更轻松,并且可能会帮助其他开始使用 Android/蓝牙开发的人。谢谢!