android BluetoothAdapter蓝牙BLE扫描总结
做室内定位的程序员应该都知道,在Android 5.0之后,google推出了蓝牙扫描新接口,我们在实测中发现出一些问题,现在给大家列出,以供参考:
1.android 4.3.1(Build.VERSION_CODES.JELLY_BEAN_MR2)增加的startLeScan(callback)方法,官方在5.0之后不建议使用,实测此方法,4.3至目前6.0版本还是很稳定的,毫秒级无限返回蓝牙数据,很稳定,就是很耗电;
2.android5.0(Build.VERSION_CODES.LOLLIPOP)谷歌建议使用BluetoothAdapter.getBluetoothLeScanner().startScan(mScanCallback),实测效果不尽人意,大哥总是带头让人测试api,好歹自己测测嘛,这个接口很不稳定,前几十秒扫描非常稳定,快速返回很多个BLE装置后(大概持续1-2分钟),然后蓝牙自动静默,回调方法无任何数据返回,我们几百台BLE设备实测。
①:另外实测中大部分市面上的android4.3系统之上的手机,小米低配系列和华为低配系列会出现扫描几分钟甚至几十秒之后,手机蓝牙底层崩溃,logcat报出底层蓝牙模块报错,只能重启才有效,不过最近MIUI6之后,发现例红米1s蓝牙扫描可以无限支持蓝牙扫描接口,说明是系统ROM的问题;
②:三星系列手机,note是最差的,接收到BLE蓝牙信号很不稳定,可能出现较远出的BLE装置信号突然很高的情况;S4,S5扫描正常。
③:魅族蓝牙是最差的,两款魅族手机,我不清楚型号了,应该是中配版的,实测扫描开启几秒后,logcat报出底层蓝牙崩溃,无法返回任何信息。
④:接口反馈最正常的肯定是Google android实验室榜样机Nexus系列,也仅限于1中老接口
最后建议大家:API有风险,修改需谨慎,哪怕是我Google大帝,也有偷懒的时候
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!