junkchen / BleLib

BleLib是Android低功耗蓝牙4.0及以上开发的辅助库,一行代码解决Ble初始化、扫描、连接、特性读写、设置通知等操作。
Apache License 2.0
245 stars 73 forks source link

我发现一个bug,不知道是怎么回事! #3

Open colorhacker opened 8 years ago

colorhacker commented 8 years ago
private final BluetoothAdapter.LeScanCallback mScanCallback = new BluetoothAdapter.LeScanCallback() {
    @Override
    public void onLeScan(BluetoothDevice device, int rssi, byte[] scanRecord) {
        if (mScanLeDeviceList.contains(device)) return;
        mScanLeDeviceList.add(device);
        if (mOnLeScanListener != null) {
            mOnLeScanListener.onLeScan(device, rssi, scanRecord);
        }
        broadcastUpdate(ACTION_BLUETOOTH_DEVICE, device);
    }
};

当我扫描设备的时候,我设备发送广播非常快,差不多200ms一次,然后扫描停止的时候程序就崩溃了。

FATAL EXCEPTION: main Process: com.application.android.box, PID: 10950 java.lang.NullPointerException: Attempt to invoke interface method 'boolean java.util.List.contains(java.lang.Object)' on a null object reference at com.application.android.box.blelib.BleService$2.onLeScan(BleService.java:464)

这是错误消息!

junkchen commented 8 years ago

你是不是自己改过,我搜索从未出现过这样的情况

colorhacker commented 8 years ago

没有改过的,我测试十几次有两三次会挂掉!我再继续测试,在看看什么具体问题然后再反馈。