如何提示Android用户开启权限
发布网友
发布时间:2022-04-22 22:03
我来回答
共1个回答
热心网友
时间:2022-05-02 22:16
//检查系统是否开启了地理位置权限;
//注意:此时的Manifest的导入包路径import android.Manifest;
if (ContextCompat.checkSelfPermission(mContext, Manifest.permission.ACCESS_COARSE_LOCATION)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION}, 1);
}
执行完requestPermissions方法后,Activity会自动回调一个onRequestPermissionsResult方法://requestPermissions方法执行后的回调方法
/*
* requestCode:相当于一个标志,
* permissions:需要传进的permission,不能为空
* grantResults:用户进行操作之后,或同意或拒绝回调的传进的两个参数;
* */
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
//这里实现用户操作,或同意或拒绝的逻辑
/*grantResults会传进android.content.pm.PackageManager.PERMISSION_GRANTED 或 android.content.pm.PackageManager.PERMISSION_DENIED两个常,前者代表用户同意程序获取系统权限,后者代表用户拒绝程序获取系统权限*/
}