Android : BluetoothAdapter.LeScanCallback

介绍

Android 4.3(API 18)及以上

android.bluetooth.BluetoothAdapter.LeScanCallback

调用BluetoothAdapter.startLeScan(LeScanCallback)BluetoothAdapter.startLeScan(UUID[], LeScanCallback)的回调接口,用于传送 BLE 蓝牙的查找结果。

抽象方法:

public void onLeScan(BluetoothDevice device, int rssi, byte[] scanRecord)

注意事项

onLeScan 方法在Android 5.0以下及Android 5.0及以上所运行的线程不同。

private BluetoothAdapter.LeScanCallback leScanCallback = new BluetoothAdapter.LeScanCallback() {
    @Override
    public void onLeScan(final BluetoothDevice device, int rssi, byte[] scanRecord) {
        if (Looper.myLooper() == Looper.getMainLooper()) {
            // Android 5.0 及以上
            connect(device);
        } else {
            // Android 5.0 以下
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    connect(device);
                }
            });
        }
    }
};
09-24 19:10:11.117381 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at android.bluetooth.BluetoothAdapter.isDiscovering(BluetoothAdapter.java:2277) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.stopScanning(Unknown Source:2) 09-24 19:10:11.117409 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:10:12.124722 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.syncBluetoothState(Unknown Source:2) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.getBluetoothState(Unknown Source:1) 09-24 19:10:12.124849 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:10:12.234655 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.syncBluetoothState(Unknown Source:12) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.getBluetoothState(Unknown Source:1) 09-24 19:10:12.234931 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:10:12.235290 11108 11108 D WS_BT_WirelessLocalBluetoothAdapter: getScanMode() mode is 21 09-24 19:10:12.240659 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at android.bluetooth.BluetoothAdapter.getScanMode(BluetoothAdapter.java:1968) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.getScanMode(SourceFile:2) 09-24 19:10:12.240722 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:10:12.242206 11108 11108 D WS_BT_WirelessLocalBluetoothAdapter: getScanMode() reset mode 09-24 19:10:12.246090 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at android.bluetooth.BluetoothAdapter.setScanMode(BluetoothAdapter.java:2015) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.setScanMode(SourceFile:1) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.getScanMode(SourceFile:2) 09-24 19:10:12.246131 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:10:12.319210 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at android.bluetooth.BluetoothAdapter.setScanMode(BluetoothAdapter.java:2015) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.setScanMode(SourceFile:1) 09-24 19:10:12.319314 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:10:12.476679 11108 11108 E BluetoothAdapter: java.lang.RuntimeException: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getStateInternal(BluetoothAdapter.java:1533) at android.bluetooth.BluetoothAdapter.getState(BluetoothAdapter.java:1551) at android.bluetooth.BluetoothAdapter.getBondedDevices(BluetoothAdapter.java:2996) at com.android.settingslib.bluetooth.LocalBluetoothAdapter.getBondedDevices(Unknown Source:2) 09-24 19:10:12.476806 11108 11108 D BluetoothAdapter: 207235373: getState(). Returning OFF 09-24 19:13:39.640412 1756 1941 E BluetoothAdapter: getControllerActivityEnergyInfoCallback: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy.lambda$onError$2(BluetoothAdapter.java:1096) at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0) at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy.onError(BluetoothAdapter.java:1096) at android.bluetooth.BluetoothAdapter.requestControllerActivityEnergyInfo(BluetoothAdapter.java:2941) 09-24 19:15:29.976410 14121 14121 E BluetoothAdapter: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter.getProfile(BluetoothAdapter.java:4363) at android.bluetooth.BluetoothAdapter.lambda$getProfileProxy$0(BluetoothAdapter.java:3741) at android.bluetooth.BluetoothAdapter.$r8$lambda$hVDf6ETlKaEPiQ6OcMRJtNWsJSg(Unknown Source:0) at android.bluetooth.BluetoothAdapter$$ExternalSyntheticLambda1.run(D8$$SyntheticClass:0) 09-24 19:21:13.450400 1756 1941 E BluetoothAdapter: getControllerActivityEnergyInfoCallback: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy.lambda$onError$2(BluetoothAdapter.java:1096) at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0) at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy.onError(BluetoothAdapter.java:1096) at android.bluetooth.BluetoothAdapter.requestControllerActivityEnergyInfo(BluetoothAdapter.java:2941) 09-24 19:26:23.199716 1756 1941 E BluetoothAdapter: getControllerActivityEnergyInfoCallback: android.os.DeadObjectException at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy.lambda$onError$2(BluetoothAdapter.java:1096) at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0) at android.bluetooth.BluetoothAdapter$OnBluetoothActivityEnergyInfoProxy.onError(BluetoothAdapter.java:1096) at android.bluetooth.BluetoothAdapter.requestControllerActivityEnergyInfo(BluetoothAdapter.java:2941) 分析问题处在哪里
最新发布
10-12
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值