微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

蓝牙 LE startscan 不显示某些 API 级别的扫描结果

如何解决蓝牙 LE startscan 不显示某些 API 级别的扫描结果

我终于在 Android Studio 上设置了一些扫描并运行了代码,但它在我的手机上不起作用(API 级别 21)。我尝试使用另一部 API 级别为 28 的手机,但它仍然没有显示任何扫描结果。最后,我使用了 API 级别 30 的手机,并且成功了。

我拥有的代码来自 this 文章,但即使我测试了作者的源代码 code,我也得到了相同的结果:在 API 级别 21、29 和 30 上都不起作用.

代码适用于 API 级别 21 及更高级别。那么这是手机蓝牙设置中的问题吗?我真的很困惑,因为至少源代码应该让它与 API 21+ 一起工作。

在未显示扫描结果的两部手机上,我测试了其他商业 BLE 应用程序,并且都在 API 28 手机上运行,​​但在我的 API 21 手机上几乎没有。少数可以在我的 API 21 手机上运行的是高生产级别的应用程序,例如 Dabble.io 和 ArduinoBlue。

也许对于较旧的 android 版本,除了通常的操作之外,可能还有一些额外的调整要做:bleScanner.startScan()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。