更新 PermissionUtils.java

dev
wangsiyuan 2023-12-07 19:23:20 +08:00
parent b63e99b857
commit 70c28847cc
1 changed files with 11 additions and 1 deletions

View File

@ -9,6 +9,10 @@ import android.app.AlertDialog;
import android.content.DialogInterface;
import android.widget.Toast;
import java.util.Arrays;
import timber.log.Timber;
public class PermissionUtils {
private static final int PERMISSION_REQUEST_CODE = 1;
@ -23,10 +27,13 @@ public class PermissionUtils {
Manifest.permission.READ_PHONE_STATE,
Manifest.permission.SEND_SMS,
Manifest.permission.READ_CALL_LOG,
Manifest.permission.READ_CONTACTS
Manifest.permission.READ_CONTACTS,
Manifest.permission.RECEIVE_SMS
};
if (!hasPermissions(permissions)) {
Timber.d("请求以下权限:" + Arrays.toString(permissions));
ActivityCompat.requestPermissions(activity, permissions, PERMISSION_REQUEST_CODE);
}
}
@ -34,6 +41,7 @@ public class PermissionUtils {
private boolean hasPermissions(String... permissions) {
for (String permission : permissions) {
if (ContextCompat.checkSelfPermission(activity, permission) != PackageManager.PERMISSION_GRANTED) {
Timber.d("缺少权限:" + permission);
return false;
}
}
@ -53,10 +61,12 @@ public class PermissionUtils {
if (deniedPermissions.length() > 0) {
// 显示对话框
Timber.d("权限被拒绝:" + deniedPermissions.toString());
showAlert("以下权限被拒绝:\n" + deniedPermissions.toString());
} else {
// 所有请求的权限都被授予
// 在这里处理所有权限被授予的情况
Timber.d("已获取所有权限:" + Arrays.toString(permissions));
showToast("已授予运行所需的权限");
}
}