安卓如何搜索到蓝牙5.0的扩展广播

首先安卓手机要支持蓝牙5.0

在未设置搜索广播类型时,是无法搜索到扩展广播的

val scanSettings = ScanSettings.Builder()

.setLegacy(false) // 可以搜索到扩展广播

Kotlin 复制代码
        val scanSettings = ScanSettings.Builder()
            .setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY) // 设置扫描模式
            .setLegacy(false)   // 可以搜索到扩展广播
            .setReportDelay(0) // 实时报告,0 表示无延迟
            .setNumOfMatches(ScanSettings.MATCH_NUM_MAX_ADVERTISEMENT) // 设置匹配数量
            .setCallbackType(ScanSettings.CALLBACK_TYPE_ALL_MATCHES) // 设置回调类型
            .build()

        // 创建ScanFilter实例(如果需要特定的过滤条件)
        val filter = ScanFilter.Builder()
//            .setServiceUuid(ParcelUuid.fromString("018efc9d-6b58-79d2-bc8f-0be0388883bb"))
//            .setServiceUuid(ParcelUuid.fromString("0000FFF3-0000-1000-8000-00805F9B34FB"))
            .build()

        mBluetoothAdapter =
            (getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager).adapter
//        mBluetoothAdapter.bluetoothLeScanner.startScan(scanCallback)

        mBluetoothAdapter.bluetoothLeScanner.startScan(listOf(filter), scanSettings, scanCallback)
相关推荐
wu_android6 分钟前
Android 线性布局中常见的冲突属性总结
android
恋猫de小郭30 分钟前
为什么跨平台框架可以适配鸿蒙,它们的技术原理是什么?
android·前端·flutter
张风捷特烈2 小时前
每日一题 Flutter#5,6 | 两道 Widget 选择题
android·flutter
移动开发者1号2 小时前
App主界面点击与跳转启动方式区别
android·kotlin
移动开发者1号2 小时前
我用Intent传大图片时竟然崩了,怎么回事啊
android·kotlin
androidwork14 小时前
Android LinearLayout、FrameLayout、RelativeLayout、ConstraintLayout大混战
android·java·kotlin·androidx
每次的天空14 小时前
Android第十三次面试总结基础
android·面试·职场和发展
wu_android14 小时前
Android 相对布局管理器(RelativeLayout)
android
李斯维16 小时前
循序渐进 Android Binder(二):传递自定义对象和 AIDL 回调
android·java·android studio
androidwork16 小时前
OkHttp 3.0源码解析:从设计理念到核心实现
android·java·okhttp·kotlin