android - 关闭蓝牙后 OnLeScan 继续触发
问题描述
这是理论问题。
其中一个客户设备(android 8 htc 10)OnLeScan
在设置中禁用蓝牙模块后继续触发回调。他只能在htc 10设备上重现它。
脚步
- 打开蓝牙启动应用程序
- 应用程序发现信标
- 关闭蓝牙
- 应用程序继续触发
OnLeScan
我知道这是不可能的(我无法在其他设备上重现它),但我遇到了这种情况。
现在我计划在蓝牙状态更改时禁用 ble 扫描,所以我认为这将帮助我解决这个问题......
但我仍然不明白为什么它是这样工作的。你有什么想法可能是错的吗?
解决方案
我认为应该编写一些代码来停止 leScan。
尝试更新诸如“blutooh_enabled”之类的布尔标志以监视蓝牙是否打开或关闭,然后编写一些代码,即
mBluetoothAdapter.stopLeScan(mLeScanCallback);
我想这会对你有所帮助。
推荐阅读
- http-status-code-404 - Hyperledger Sawtooth Marketplace Rest API 404 错误
- c# - 如何在我的 Visual Studio c# 扩展中使用当前项目异常对象
- windows - Windows Server 中的外语是否会影响 Windows 服务类?
- python - 尝试在 Jenkins 管道中运行 awscli 时权限被拒绝且解释器错误
- java - 通过活动传递相同的对象
- python - 在后台运行 Python 计时器而不停止我的代码
- java - Java - 将消息编码为字符串
- api - Laravel Passport:auth:api 未经授权返回?
- c++ - 避免调用默认、移动和复制构造函数
- python - 自下而上计算列表