首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式检测对BLE连接参数的更改

以编程方式检测对BLE连接参数的更改
EN

Stack Overflow用户
提问于 2017-11-29 18:45:52
回答 1查看 1.1K关注 0票数 1

我想用某种方式在Android中以编程方式读取连接参数。

从API 21开始,安卓的BluetoothGatt类提供了这三种模式来设置连接参数。

CONNECTION_PRIORITY_BALANCED连接参数更新-使用蓝牙SIG推荐的连接参数。 CONNECTION_PRIORITY_HIGH连接参数更新-请求高优先级、低延迟的连接。 CONNECTION_PRIORITY_LOW_POWER连接参数更新-要求低功耗,降低数据速率连接参数.

详细讨论了herehere

由于所有这些都没有给出我想要的连接间隔,所以尝试从外围设备的一侧执行连接更新。幸运的是,这似乎奏效了。发送连接更新后,我可以在Logcat中看到:

代码语言:javascript
复制
D/BluetoothGattServer: onConnectionUpdated() - Device=XX:XX:XX:XX:XX:XX interval=1596 latency=0 timeout=512 status=0
D/BluetoothGatt: onConnectionUpdated() - Device=XX:XX:XX:XX:XX:XX interval=1596 latency=0 timeout=512 status=0

我不在乎Android设备所选择的间隔,只要它在1000到2000毫秒之间。虽然很容易在日志中看到这种更改,但我还没有找到一种通过编程读取区间值的方法。我想确保这个更新发生,这样我就不会浪费我的外围设备的电池寿命。

EN

回答 1

Stack Overflow用户

发布于 2017-11-29 19:25:19

不是的。但是,如果您可以从外围端检测到更新,那么您可以向中心发送带有新参数的通知。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47559668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档