小工具知识网

当前位置: 首页 > 行业知识 > Android 13以上版本读写SD卡权限适配

行业知识

Android 13以上版本读写SD卡权限适配

2026-11-08 04:25:09 来源:互联网转载

如题,最近工作上处理的问题,把解决方案简单逻列出来,供有需要的朋友参考之

解决方案:

1、配置权限

              

2、动态申请权限

//相关核心代码,PermissionUtils工具类 private static final String[] RECORDING_PERMISSION_ABOVE_33 = {            Manifest.permission.CAMERA,            Manifest.permission.RECORD_AUDIO,            Manifest.permission.READ_EXTERNAL_STORAGE,            Manifest.permission.WRITE_EXTERNAL_STORAGE    };    //Android 13以后的版本,包括13    private static final String[] RECORDING_PERMISSION_UNDER_33 = {            Manifest.permission.CAMERA,            Manifest.permission.RECORD_AUDIO,            Manifest.permission.READ_MEDIA_VIDEO,            Manifest.permission.READ_MEDIA_IMAGES,            Manifest.permission.READ_MEDIA_AUDIO,    };    public static String[] getRecordingPermission() {        return android.os.Build.VERSION.SDK_INT      * 检查权限     *     * @param permissions 权限数组     * @param context     Context     * @return true 已经拥有所有check的权限 false存在一个或多个未获得的权限     */    public static boolean checkPermissionsGroup(Context context, String[] permissions) {        for (String permission : permissions) {            if (!checkPermission(context, permission)) {                return false;            }        }        return true;    }    public static void requestPermissions(Activity activity, String[] permissions, int requestCode) {        // 先检查是否已经授权        if (!checkPermissionsGroup(activity, permissions)) {            ActivityCompat.requestPermissions(activity, permissions, requestCode);        }    }

index.php/tags-602.html" >使用示例

 String[] permissions = PermissionUtils.getRecordingPermission();  if (!checkResult) {            PermissionUtils.requestPermissions(this, permissions, PERMISSION_REQUEST_CODE);   } else {   //正常的业务处理逻辑   }

上一篇:怎么利用服务器搭建gm游戏?

下一篇:fifteen用英语怎么造句?