Android APP读写外置SD卡无权限 java.io.IOException: Permission denied

在物联网应用里,app需要对挂载SD卡读写文件,从 Android 4.4(KitKat)版本开始,Google 引入了一项名为 "Storage Access Framework" 的新功能,该功能限制了应用对外部存储的直接读写权限,要不然就是只有系统APP才可有权限,所以我们需要对系统进行修改,修改后适配测试已经测试了Android 7.1、Android 8.1,可以进行文件的读写。

清单文件配置

复制代码
 <uses-permission
        android:name="android.permission.WRITE_EXTERNAL_STORAGE"
        tools:node="replace" />
    <uses-permission  android:name="android.permission.WRITE_MEDIA_STORAGE"/>   <!--系统添加跳过外插SD卡权限-->
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
1、 找到系统文件的的路径文件:/frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java
2、将原有判断注释掉直接增加 grant = GRANT_INSTALL; 这里也可以增加判断包名或者其他权限判断再返回GRANT_INSTALL;

翻译

搜索

复制

相关推荐
hai_android41 分钟前
Android 嵌套滑动冲突:内部拦截 vs 外部拦截实战
android·android studio·android jetpack
木子欢儿2 小时前
Zabbix 7.4 Alpine 版 Docker Compose 部署
android·运维·docker·容器·zabbix
素师良码3 小时前
第9篇:Android驱动踩坑实录:DSI RX FIFO前置脏0、数据错位复盘
android
夜雪一千4 小时前
如何在MySQL中实现字段级加密
android·数据库·mysql
夜雪一千4 小时前
MySQL 如何存储经纬度坐标:选型、建表、空间查询实战
android·mysql·adb
JMchen4 小时前
集成第三方 C/C++ 库到 Android NDK 项目:OpenCV 与 FFmpeg 实战指南
android·opencv·cmake
有毒的教程5 小时前
Dev-C++ 使用扩展库两种方式:DevPak一键安装 / 手动配置(重点)
android·c++·adb
mmsx6 小时前
Android 测绘数值基础:测量单位系统与七四参数、高程拟合
android
郑州光合科技余经理6 小时前
出海外卖平台:支付对接为什么要和下单收款分开
android·java·开发语言·前端·后端·php·ai编程
夜雪一千6 小时前
MySQL 如何提高查询速度:从索引、SQL、表结构到实战调优
android·sql·mysql