android 12 U盘 /mnt/media_rw 下读取文件异常 没有权限

简介: android 12 U盘 /mnt/media_rw 下读取文件异常 没有权限

现象

storage下可读取,但/mnt/media_rw不可读取

/mnt/media_rw/A009-1B4F/rk3568_s-ota-20230704.zip (Permission Denied)

解决方法

把/mnt/media_rw/ 替换为 /storage


1.在解析ota升级包时,将 /mnt/media_rw/ 替换为 /storage


if (Build.VERSION.SDK_INT >= 30) {
            if (mImageFilePath.startsWith("/data/media")) {
                tempPath = mImageFilePath.replace("/data/media", "/storage/emulated");
            } else if (mImageFilePath.startsWith("/mnt/media_rw")) {
                tempPath = mImageFilePath.replace("/mnt/media_rw", "/storage");
            }
 
        }

 

2.真正执行升级逻辑时,将 /storage 再替换回  /mnt/media_rw/


        if (Build.VERSION.SDK_INT >= 30) { // Build.VERSION_CODES.R
            Log.d(TAG, "installPackage SDK version >= Build.VERSION_CODES.R,should convert update file path.");
            if (parsedUpdate.mUrl.startsWith("file:///storage/emulated/0")) {
                convertPath = parsedUpdate.mUrl.replace("/storage/emulated/0", "/data/media/0");
                Log.d(TAG, "startsWith(\"file:///storage/emulated/0\")");
            } else if (parsedUpdate.mUrl.startsWith("file:///storage")) {
                convertPath = parsedUpdate.mUrl.replace("/storage", "/mnt/media_rw");
                Log.d(TAG, "startsWith(\"file://storage\")");
            }
            Log.d(TAG, "installPackage update " + parsedUpdate.mUrl + " to " + convertPath);
        }


目录
相关文章
|
3天前
|
Android开发
jack-server导致 Android 编译 出现异常
jack-server导致 Android 编译 出现异常
14 6
|
4天前
|
Android开发
Android studio 2021.3.1不生成iml文件
Android studio 2021.3.1不生成iml文件
18 5
|
4天前
|
Java Shell Android开发
android 权限申请
android 权限申请
18 5
|
4天前
|
XML API 数据库
Android权限
Android权限 【5月更文挑战第3天】
12 0
|
4天前
|
Android开发
Android stdio 无法新建或打开AIDL文件(解决方法)
Android stdio 无法新建或打开AIDL文件(解决方法)
12 0
|
4天前
|
Android开发
android string.xml文件中的整型和string型代替
android string.xml文件中的整型和string型代替
|
4天前
|
Android开发
android捕获全局异常,并对异常做出处理
android捕获全局异常,并对异常做出处理
17 4
|
4天前
|
Java Android开发
Android OTG U盘无法显示在系统文件管理的修改
Android OTG U盘无法显示在系统文件管理的修改
11 0
|
4天前
|
Android开发 开发者
Android打开开发者权限
Android打开开发者权限
16 0
|
4天前
|
Android开发
Android 9.0中sdcard 的权限和挂载问题
Android 9.0中sdcard 的权限和挂载问题
12 0