【问题标题】:Bluetooth scanning for devices蓝牙扫描设备
【发布时间】:2016-09-16 21:07:13
【问题描述】:

我的代码有问题:

private ScanCallback mLeScanCallback = new ScanCallback(){
    //Callback when a BLE advertisement has been found.
    @Override
    public void onScanResult(int callbackType, final android.bluetooth.le.ScanResult result) {
        super.onScanResult(callbackType, result);

       new Thread(){
           @Override
           public void run() {
               final BluetoothDevice device = result.getDevice();

               runOnUiThread(new Runnable() {
                   @Override
                   public void run() {
                       if (device != null){
                           mDevices.add(device);
                       }
                   }
               });
           }
       }.start();

    }

    //Callback when batch results are delivered.
    @Override
    public void onBatchScanResults(List<android.bluetooth.le.ScanResult> results) {
        super.onBatchScanResults(results);
    }

    //Callback when scan could not be started.
    @Override
    public void onScanFailed(int errorCode) {
        super.onScanFailed(errorCode);
    }

目前我正在使用此代码来获取扫描结果。这是基于:https://github.com/RedBearLab/Android/blob/master/Examples/Chat/src/com/redbear/chat/Main.java#L138

基于的应用程序的 API 级别较低,而我的应用程序的 API 级别较高。所以我把它改成了 on startScan() 方法。

老实说,我被卡住了,因为当我运行应用程序时,我没有收到任何错误。我检查了 mDevices 数组是否为空,它是。这意味着代码不会将设备添加到数组中,或者我的应用程序没有专门找到任何设备。

任何帮助将不胜感激。

激活扫描代码

private void scanDevice(){
    new Thread() {
        @Override
        public void run(){
            BTScanner.startScan(mLeScanCallback);

            try {
                Thread.sleep(SCAN_PERIOD);
            } catch (InterruptedException e){
                e.printStackTrace();
            }

            BTScanner.stopScan(mLeScanCallback);
        }


    }.start();
}

【问题讨论】:

    标签: android bluetooth bluetooth-lowenergy android-bluetooth


    【解决方案1】:

    发现问题。它与获取扫描结果的 ACCESS_COARSE_LOCATION 或 ACCESS_FINE_LOCATION 的权限有关。

    【讨论】:

    • 我已经添加了权限,但我没有得到设备名称
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-26
    • 1970-01-01
    • 1970-01-01
    • 2019-06-08
    • 2016-06-26
    相关资源
    最近更新 更多