Android 打开蓝牙调用mBluetoothAdapter.enable();,在Android4.3,Android4.4直接打开没有出现开启蓝牙允许提示框,但是在小米3 Android6.0,华为荣耀8 Android7.0,出现开启蓝牙允许提示框,怎么在小米3,华为荣耀8,自动打开,不出现开启蓝牙允许提示框。

解决方案 »

  1.   

    Android 打开蓝牙调用mBluetoothAdapter.enable();,在Android4.3,Android4.4直接打开没有出现开启蓝牙允许提示框,但是在小米3 Android6.0,华为荣耀8 Android7.0,出现开启蓝牙允许提示框,怎么在小米3,华为荣耀8,自动打开,不出现开启蓝牙允许提示框。
      

  2.   

    在6.0后,蓝牙这块增加一个动态权限;需要在程序中动态申请。<uses-permission-sdk-23 android:name="android.permission.ACCESS_COARSE_LOCATION"/>
      

  3.   

    增加了动态申请了    /*
           校验蓝牙权限
          */
        private void checkBluetoothPermission() {
            if (Build.VERSION.SDK_INT >= 23) {
                //校验是否已具有模糊定位权限
                if (ContextCompat.checkSelfPermission(this,
                        Manifest.permission.ACCESS_COARSE_LOCATION)
                        != PackageManager.PERMISSION_GRANTED) {
                    ActivityCompat.requestPermissions(this,
                            new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},
                            MY_PERMISSIONS_REQUEST_ACCESS_COARSE_LOCATION);
                } else {
                    //具有权限
                    bluetoothManager.bluetoothChatDeviceStart(this, handler);
                }
            } else {
                //系统不高于6.0直接执行
                bluetoothManager.bluetoothChatDeviceStart(this, handler);
            }
        }
      

  4.   

    除非改framework,你第三方的上层软件没有办法的 6.0以后不可能去掉