权限调整
This commit is contained in:
@@ -409,6 +409,8 @@ public class AddDeviceActivity_copy extends BaseActivity<AddDeviceLayoutBinding,
|
|||||||
hidePermissionDialog();
|
hidePermissionDialog();
|
||||||
if (requestCode == REQUEST_EVENT_CODE_10001) {
|
if (requestCode == REQUEST_EVENT_CODE_10001) {
|
||||||
scanQrcode();
|
scanQrcode();
|
||||||
|
}else if(requestCode == REQUEST_EVENT_CODE_10002){
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,14 @@
|
|||||||
package com.ckkj.water.permission;
|
package com.ckkj.water.permission;
|
||||||
|
|
||||||
import android.Manifest;
|
import android.Manifest;
|
||||||
|
import android.content.pm.PackageManager;
|
||||||
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
|
import androidx.core.content.ContextCompat;
|
||||||
|
|
||||||
import com.ckkj.water.ConstantUtil;
|
import com.ckkj.water.ConstantUtil;
|
||||||
import com.ckkj.water.R;
|
import com.ckkj.water.R;
|
||||||
@@ -32,6 +35,9 @@ import pub.devrel.easypermissions.EasyPermissions;
|
|||||||
*/
|
*/
|
||||||
public class PermissionActivity extends BaseActivity<PermissionLayoutBinding, MainPresenter>
|
public class PermissionActivity extends BaseActivity<PermissionLayoutBinding, MainPresenter>
|
||||||
implements MainContract.MainView, EasyPermissions.PermissionCallbacks {
|
implements MainContract.MainView, EasyPermissions.PermissionCallbacks {
|
||||||
|
private static final int REQUEST_BLUETOOTH_PERMISSION = 1002;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public MainPresenter createPresenter() {
|
public MainPresenter createPresenter() {
|
||||||
return new MainPresenter(new MainImpl());
|
return new MainPresenter(new MainImpl());
|
||||||
@@ -71,16 +77,50 @@ public class PermissionActivity extends BaseActivity<PermissionLayoutBinding, Ma
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case R.id.tv_commit:
|
case R.id.tv_commit:
|
||||||
String[] permission = {
|
// String[] permission = {
|
||||||
Manifest.permission.ACCESS_FINE_LOCATION
|
// Manifest.permission.ACCESS_FINE_LOCATION
|
||||||
};
|
// };
|
||||||
boolean hasPermission = hasRecordPermission(permission);
|
// boolean hasPermission = hasRecordPermission(permission);
|
||||||
if(!hasPermission){
|
// if(!hasPermission){
|
||||||
getMorePermissionRequst(permission,"权限申请","智溉管家需要您的授权获取位置权限,用于添加设备",REQUEST_EVENT_CODE_10001);
|
// getMorePermissionRequst(permission,"权限申请","智溉管家需要您的授权获取位置权限,用于添加设备",REQUEST_EVENT_CODE_10001);
|
||||||
}
|
// }
|
||||||
|
checkBluetoothPermissions();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查蓝牙权限
|
||||||
|
*/
|
||||||
|
private boolean checkBluetoothPermissions() {
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
|
||||||
|
|
||||||
|
String[] readPermission = new String[]{
|
||||||
|
Manifest.permission.BLUETOOTH_SCAN,
|
||||||
|
Manifest.permission.BLUETOOTH_CONNECT,
|
||||||
|
Manifest.permission.ACCESS_FINE_LOCATION
|
||||||
|
};
|
||||||
|
if (!hasRecordPermission(readPermission)) {
|
||||||
|
// 没有权限,只在ACTION_DOWN时去申请
|
||||||
|
getMorePermissionRequst(readPermission,"蓝牙扫描权限申请",
|
||||||
|
"智溉管家需要您的授权,获取蓝牙权限添加设备",REQUEST_EVENT_CODE_10003);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Android 12 以下需要位置权限才能扫描蓝牙
|
||||||
|
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
|
||||||
|
!= PackageManager.PERMISSION_GRANTED) {
|
||||||
|
|
||||||
|
requestPermissions(new String[]{
|
||||||
|
Manifest.permission.ACCESS_FINE_LOCATION
|
||||||
|
}, REQUEST_EVENT_CODE_10003);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showError(String message) {
|
public void showError(String message) {
|
||||||
|
|
||||||
@@ -128,6 +168,9 @@ public class PermissionActivity extends BaseActivity<PermissionLayoutBinding, Ma
|
|||||||
if (requestCode == REQUEST_EVENT_CODE_10001) {
|
if (requestCode == REQUEST_EVENT_CODE_10001) {
|
||||||
ToastUtil.showShort(mContext,"权限获取成功");
|
ToastUtil.showShort(mContext,"权限获取成功");
|
||||||
finish();
|
finish();
|
||||||
|
}else if(requestCode == REQUEST_EVENT_CODE_10003){
|
||||||
|
ToastUtil.showShort(mContext,"蓝牙权限获取成功");
|
||||||
|
finish();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user