为什么"" BluetoothAdapter:startLeScan():null""在Android中进行BLE扫描时发生了什么?

时间:2015-05-21 03:52:06

标签: android bluetooth-lowenergy

我正在开发Android for BLE。我的BLE设备将播放不同的名称,因此我需要继续重新扫描Android。

我创建一个Runnable来停止并开始扫描,如下所示。当我致电mHandler.post(monitorDevice);时,它会启动Runnable

final Runnable monitorDevice = new Runnable() {
    @Override
    public void run() {
        scanLeDevice(false);
        scanLeDevice(true);
        mHandler.postDelayed(this,3000);
    }
};

scanLeDevice的代码如下:

public void scanLeDevice(final boolean enable) {
                // TODO Auto-generated method stub
                if(enable){
                    mScanning = true;
                    mBluetoothAdapter.startLeScan(mLeScanCallback);

                }else {
                    mScanning = false;
                    mBluetoothAdapter.stopLeScan(mLeScanCallback);
                }
            }

我可以在开始时看到日志中的扫描结果。但是大约10~15分钟后,logcat显示以下日志,我看不到任何扫描结果。

startLeScan(): null
D/BluetoothLeScanner﹕ onClientRegistered() - status=0 clientIf=5

有人有这个问题吗?在此先感谢!!!

0 个答案:

没有答案