1.概述
在12.0的系统rom定制化开发中, 在6.0以前读写权限是默认授予的,app不需要申请权限 在10.0之前需要android.permission.WRITE_EXTERNAL_STORAGE和android.permission.READ_EXTERNAL_STORAGE
权限就可以了而在安卓11的时候继续强化对SD卡读写的管理,引入了MANAGE_EXTERNAL_STORAGE权限,而之前的WRITE_EXTERNAL_STORAGE已经失效了。
并且MANAGE_EXTERNAL_STORAGE权限只能跳转设置页面申请。
12.0需要这样申请权限
app申请权限
if (sdk_Int >= 30) { if (!Environment.isExternalStorageManager()) { Intent intent = new Intent(Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION); startActivity(intent); return; } writeAndReaderFile(); return; }
2.系统授予第三方app读写权限的核心代码部分
frameworks/base/core/java/android/app/AppOpsManager.java
3.系统授予第三方app读写权限的核心代码部分分析以及功能实现
3.1AppOpsManager.j
来源地址:https://blog.csdn.net/baidu_41666295/article/details/130866274