ScanCall回来没有进入Android Oreo

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ScanCall回来没有进入Android Oreo相关的知识,希望对你有一定的参考价值。

我无法使我的ble扫描仪工作。没有scanCalll Back正在发生。

以下是我的代码:MainActivity:

public class MainActivity extends AppCompatActivity  {

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        BluetoothUtil b = new BluetoothUtil();
        b.startScan();

    }


}

}

BluetoothUtil:

public class BluetoothUtil extends ScanCallback {

BluetoothAdapter badap = BluetoothAdapter.getDefaultAdapter();
ScanSettings.Builder builder = new ScanSettings.Builder();


public BluetoothUtil() {

    super();
    builder.setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY);
}

@Override
public void onScanResult(int callbackType, ScanResult result) {
    Log.v("test","Scanning Occurred");
    super.onScanResult(callbackType, result);
}

public void startScan() {
 if(badap !=null)
{
    ScanSettings.Builder builder = new ScanSettings.Builder();
    builder.setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY);
    if (BluetoothAdapter.getDefaultAdapter().getState() == BluetoothAdapter.STATE_ON) {
        BluetoothAdapter.getDefaultAdapter().getBluetoothLeScanner().startScan(new ArrayList<ScanFilter>(), builder.build(), this);
//            
BluetoothAdapter.getDefaultAdapter().getBluetoothLeScanner().startScan(this);
    }
}
}
}
答案

我的错。发布android 6你必须从app gui权限设置应用程序的权限。你必须启用位置和蓝牙。现在就工作了!

以上是关于ScanCall回来没有进入Android Oreo的主要内容,如果未能解决你的问题,请参考以下文章

JUC中的常用辅助类(CountDownLatchCyclicBarrierSemaphore)

JUC中的常用辅助类(CountDownLatchCyclicBarrierSemaphore)

JUC中的常用辅助类(CountDownLatchCyclicBarrierSemaphore)

STM32 一直进入串口接收中断

android 判断activity是不是被回收

Android实例-Delphi在运行时更改Android屏幕旋转(IOS也支持,但还没有写,下午我回来加上。不过我可没有苹果机,测试不了)