蓝牙开发:有时bluetoothadapter无法找到设备

时间:2015-07-13 03:32:41

标签: android

我在BLE工作,我的问题就出现了。

当我使用方法bluetoothAdapter.startLeScan(回调)时,我的bluetoothadapter有时找不到设备。

当适配器无法找到设备时,我只需重新启动bluetoothadapter(意思是:关闭bluetoothadapter然后再打开)。

然后回调将返回设备而不是null。

我对BLE开发有很多了解,但似乎没有人发现这个问题。

这是我的回调:

private BluetoothAdapter.LeScanCallback mLeScanCallback = new BluetoothAdapter.LeScanCallback() {
    @Override
    public void onLeScan(final BluetoothDevice device, int rssi,byte[] scanRecord) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                synchronized (m_LeDevices) {
                    if (m_device_mac != null && m_device_mac.equals(device.getAddress().replace(":", ""))) {
                        mHandler.postDelayed(new Runnable() {
                            @Override
                            public void run() {
                                forwardToMain();
                            }
                        }, DELAY_FORWARD_TIME);                         
                    }                       
                }
            }
        });
    }

};

0 个答案:

没有答案