首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android 6.0.1中的Gatt缓存

Android 6.0.1中的Gatt缓存
EN

Stack Overflow用户
提问于 2016-11-10 00:04:16
回答 2查看 2K关注 0票数 4

我继承了一个Android应用程序,它可以读取特征,然后关闭连接。对于Android Gatt版本4和5,Gatt缓存服务和特征,并在后续连接上使用缓存。这对我的应用程序是有好处的,尽管我知道它会引起其他问题。

最近在MOTO Play上使用Android 6.0.1进行的测试表明,Gatt没有使用缓存,并在每个连接上请求服务和特征。我的应用程序仍然可以工作,但它需要时间和电力,这是不好的。

在谷歌搜索之后,我不清楚Gatt缓存是在配对/绑定之后启用的,还是在连接之后启用的。我的应用程序无法配对或绑定。

EN

回答 2

Stack Overflow用户

发布于 2016-11-13 06:39:54

它与配对/绑定或连接都没有任何关系。一旦你在连接后执行发现,Android就会缓存服务和特征。

根据我的经验,我发现一些设备总是执行发现,而其他不执行GATT缓存的设备节省了相当多的时间。外围设备改变其服务或特性是不常见的,因此缓存始终是一种好方法。然而,不幸的是,你无法通过Android API来管理它,这完全取决于Android和设备的BLE堆栈固件。

票数 0
EN

Stack Overflow用户

发布于 2016-11-19 19:18:24

根据该规范,如果设备未被绑定(并且其具有服务改变的特性),则可以不高速缓存GATT。所以新的行为是正确的。只需使用绑定,它将使用缓存。

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

https://stackoverflow.com/questions/40511225

复制
相关文章

相似问题

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