**

以下所有操作的前提是: android 系统已经root

**

最近在将文件拷贝到U盘时总是 写入失败(Permission denied)

程序清单中已经加入了权限

并且动态申请了权限

private static String[] PERMISSIONS_REQ = {

Manifest.permission.READ_EXTERNAL_STORAGE,

Manifest.permission.WRITE_EXTERNAL_STORAGE

};

private static final int REQUEST_CODE_PERMISSION = 1;

int write_permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);

int read_permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.READ_EXTERNAL_STORAGE);

if ( write_permission != PackageManager.PERMISSION_GRANTED ||

read_permission != PackageManager.PERMISSION_GRANTED ) {

ActivityCompat.requestPermissions(activity, PERMISSIONS_REQ, REQUEST_CODE_PERMISSION);

}

有人说要修改 system\etc\permissions\platform.xml (安装RE文件管理器,即可修改(必须root))中的

修改为

重启之后还是报错

在纠结之后 …

最后发现 程序识别到的U盘目录是 /storage/28BA-794A (28BA-794A 是我的U盘名字)

但是系统中还有一个相同名字的U盘 那就是/mnt/media_rw/28BA-794A

修改目录为/mnt/media_rw/ 后,文件成功写入到U盘中

下面提供一种查找 /mnt/media_rw/ 目录下U盘的方式

try{

StorageManager storageManager = (StorageManager) m_context.getSystemService(Context.STORAGE_SERVICE);

Class storeManagerClazz = Class.forName("android.os.storage.StorageManager");

Method getVolumesMethod = storeManagerClazz.getMethod("getVolumes");

List> volumeInfos = (List>)getVolumesMethod.invoke(storageManager);

Class volumeInfoClazz = Class.forName("android.os.storage.VolumeInfo");

Field udiskPath = volumeInfoClazz.getDeclaredField("internalPath");

Method getFsUuidMethod = volumeInfoClazz.getMethod("getFsUuid");

if(volumeInfos != null){

for(Object volumeInfo:volumeInfos){

String uuid = (String)getFsUuidMethod.invoke(volumeInfo);

if(uuid != null){

String sUdiskPath = (String)udiskPath.get(volumeInfo); // 结果是 /mnt/media_rw/28BA-794A

return sUdiskPath;

}

}

}

}catch(Exception e){

Log.e(TAG," check udisk error = " + e.getMessage());

}

最后,通过反复验证

要操作U盘等外设

系统要具有root权限

修改system\etc\permissions\platform.xml

修改之后需要重启系统

就是操作的目录要正确

Android已申请动态权限报错,Android 读取或者写入U盘时,报错:Permission denied相关推荐

  1. android 9 申请动态权限android.permission.WRITE_EXTERNAL_STORAGE 允许后应用闪退

    问题描述:如题,在调试android 9 高通msm8953平台时,客户反馈应用在允许Manifest.permission.WRITE_EXTERNAL_STORAGE权限后,应用闪退. 从log分 ...

  2. android插件做动态权限,Mui本地打包笔记(四)Android自定义插件的配置(以动态申请权限为例)...

    通过自定义插件方式实现Android平台的动态申请权限功能 在上一章中完成了在Mui中调用Android原生的动态权限请求功能(Android动态申请权限的问题).虽然说完成了功能,但是在使用上并不是 ...

  3. android 6.0动态权限问题

    最近,我发现手机的6.0权限在小米手机上存在问题,我在网上搜了很多的代码,都没有解决这个问题,所以这里记录一下自己的android 6.0权限的解决代码,如果有问题,大家可以在网上自己在找找代码去解决 ...

  4. Android 6.0动态权限申请

    Android 6.0动态权限申请 特别感谢: https://www.jianshu.com/p/2fe4fb3e8ce0 本文是在该文的基础上添加了类似自己的读后感才完成的. 我并不希望成为白求恩 ...

  5. [Android] Android 6.0 动态权限申请看完就会写

    Android 6.0 动态权限申请看完就会写 文章目录 Android 6.0 动态权限申请看完就会写 1. 起 2. 权限 3. 四个方法 4. 使用 5. 总结 1. 起 Android 的动态 ...

  6. android 6.0权限库,Android 6.0动态权限适配

    前言 最近项目发现比较多的问题是关于Android 6.0的问题,APP安装之后,在Android 6.0之后的系统,点击直接奔溃打不开,这是为什么昵?这就是Android 6.0以上的系统引入运行时 ...

  7. Android 7.0动态权限大总结

    本文讲的是Android 7.0动态权限大总结,应公司项目需求,做了下Android 7.0适配.对于我们程序员,适配7.0主要就是对手机本地文件的Uri做转换处理.注意红色字体,意思也就是说对于ht ...

  8. tp6 接口上传文件/图片报错 fopen(/www/wwwroot/***/public/storage/**failed to open stream: Permission denied

    tp6 接口上传文件/图片报错 fopen(/www/wwwroot/***/public/storage/**failed to open stream: Permission denied 这是因 ...

  9. android studio 写文件,在Android Studio中从我自己的类读取和写入文本文件

    我一直在试图创建一个名为TextFileReaderWriter的类我想使用getters和setters来读取和写入文本文件,以便我可以调用类,并通过简单地使用setfileContents(som ...

最新文章

  1. J Cheminform.|基于子结构的神经机器翻译用于逆合成预测
  2. Windows Server 2008 多元密码策略之ADSIEDIT
  3. msbuild 语法_用于删除文件的MSBuild Task语法
  4. 交换机和路由器上流量限制
  5. wpf cefsharp html源码,CefSharp For WPF基本使用
  6. [J2ME]RSSOwlMidlet(RSS无线阅读器)设计说明
  7. 弹出层中都可以用的复制功能
  8. 官方版sublime Text3汉化和激活注册码
  9. springBoot过滤器去除请求参数前后空格
  10. Pycharm下载包慢的问题
  11. java关联vss 80020009_Eclipse结合VSS方法
  12. 2.4.1 ALU-串行加法器和并行加法器
  13. 程序员有哪些职业发展方向呢?Linux运维
  14. 数据分析学习记录(四)--在origin中实现单因素方差分析和非参数检验
  15. poj1018 java_海奥华预言txt_海奥华预言_海奥华预言txt下载
  16. Linux——MySQL-MMM
  17. 如何学好图像处理——从小白到大神?
  18. 系统重温Pandas笔记:(五)变形
  19. 有将视频横屏改为竖屏的方法吗?
  20. PYTHON h5py库包安装及读写

热门文章

  1. 自由动力论坛一枝花,全靠汇道童鞋来当家
  2. 如何及时还原被删除的活动目录对象
  3. Pycharm无法导入包的问题 Unresolved reference
  4. 前端性能优化之 gzip+cache-control
  5. 与David Blevins聊Java EE的未来
  6. D-News|英特尔首推融合现实,亚马逊云服务市场占比超3成
  7. centos中安装nginx
  8. vector与list的区别
  9. 写个自己:学C++有感
  10. django orm_Django ORM简介