Android>7.0获得外部存储设备路径建议不要使用Environment.getExternalStorageDirectory()

原因:FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted)
权限全部添加依然报错,主要因为安卓系统的权限要求非常严格
建议改成:

ContextWrapper cw = new ContextWrapper(getApplicationContext());
File directory = cw.getExternalFilesDir(Environment.DIRECTORY_MUSIC);
File file = new File(directory, "something" + ".MP3");

getExternalFilesDir()要传入一个String类型的type,该参数定义在Environment类中如下:

public static String DIRECTORY_MUSIC = "Music";
public static String DIRECTORY_ALARMS = "Alarms";
public static String DIRECTORY_NOTIFICATIONS = "Notifications";
public static String DIRECTORY_PICTURES = "Pictures";
public static String DIRECTORY_MOVIES = "Movies";
public static String DIRECTORY_DOWNLOADS = "Download";
public static String DIRECTORY_DCIM = "DCIM";
public static String DIRECTORY_DOCUMENTS = "Documents";

完美解决

FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted)的坑相关推荐

  1. Android:访问存储失败.FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted)

    Android:访问存储失败.FileNotFoundException open failed: XXXXXXX EPERM (Operation not permitted) 设备/引擎:Mac( ...

  2. Android 11 中文件存储(FileNotFoundException open failed: EPERM (Operation not permitted))

    使用之前的方式进行文件存储会得到如下错误 FileNotFoundException open failed: EPERM (Operation not permitted) 就是无法获取文件路径了 ...

  3. Error: EPERM: operation not permitted, unlink 'D:\Sources\**\node_modules\fsevents\node_modules\abbr

    原因 编辑器或IDE打开了vue项目,我的是idea打开了 vue 解决办法 关闭IDE或编辑器,删除node_modules文件目录,然后重新执行npm install命令 注意windows系统需 ...

  4. npm install 提示权限不足 Error: EPERM: operation not permitted, unlink XXX

    问题描述 使用npm install出现 npm install 提示权限不足 Error: EPERM: operation not permitted, unlink XXX提示 原因 这里原因有 ...

  5. 安装Pod时提示ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod...

    环境:OSX EI 10.11.1 昨天切换gem源后,招待pod安装没有任何问题,也可以正常用$ gem sources --add https://ruby.taobao.org/ --remov ...

  6. npm ERR! { Error: EPERM: operation not permitted, mkdir 'C:\Program Files\nodejs\node_cache\_locks'

    vue项目安装json-server报错npm ERR!  { Error: EPERM: operation not permitted, mkdir 'C:\Program Files\nodej ...

  7. npm安装报错Error: EPERM: operation not permitted解决方案

    电脑重装系统后重新配置环境安装node后,npm命令安装报错 Error: EPERM: operation not permitted npm ERR! code EPERM npm ERR! sy ...

  8. yarn install 遇到的错误消息 - Error EPERM operation not permitted, open .yarnrc

    我在某个 Angular 项目文件下执行 npm install 命令时,遇到如下错误: Error: EPERM: operation not permitted, open C:\Users\i0 ...

  9. npm install 报错(npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法

    npm install 报错(npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法 参考文章: (1)npm install ...

最新文章

  1. python函数编程求三个数的最小公倍数_Python求三个数的最小公倍数
  2. Swift语言与Objective-C语言混合编程
  3. Javascript 获取页面高度(多种浏览器)【转】
  4. Visual Studio 2015 update 3各版本下载地址
  5. 微信小程序云开发教程-互联网软件的运作模式
  6. linux中/etc/fstab文件删除或修改了,导致系统无法启动
  7. rustdesk:远控工具说明
  8. 恶意代码分析相关工具漏洞挖掘相关工具
  9. ios逆向工具 theos tweak多文件使用方法
  10. 虚拟主机3种方式nginx/apache+跨域知识点整理
  11. verilog版的1602+ps2
  12. 计算机休眠后无法唤醒出现蓝屏,电脑休眠后无法唤醒怎么办【解决方法】
  13. H5网易注册页面实战
  14. BZOJ2277 [Poi2011]Strongbox 【数论】
  15. 游戏私服的配置与防御选择
  16. DWG文件怎么打开?如何编辑DWG文件?
  17. 拿下宝马中国量产订单的四维图新,如何在自动驾驶地图领域内外兼修?...
  18. 华为云DAYU使用Spark组件开发的学习使用心得
  19. 复古拼贴_创建数码照片拼贴的最佳免费应用
  20. 中心极限定理和泊松分布的条件

热门文章

  1. 数据格式:大端模式(Big-endian)和小端模式(Little-endian)
  2. java中关于输出三角形图案类型题目的思路
  3. 如何启动mysql?
  4. spark开发及调优
  5. Java同步之synchronized
  6. java秒表程序_运用Java编写 秒表程序
  7. vue-cli项目局域网访问
  8. settextstyle
  9. 苹果保修期多久_苹果和安卓数据线怎么选?一根数据线质保三年,小米生态链做到了...
  10. Java实现图片上传到服务器