安卓向SD卡存储数据时java.io.FileNotFoundException:(Permission denied)
2017-10-25 15:23
651 查看
最近在上Android课学习时,需要向SD卡中新建一个data.txt文件
但现实无法向外围设备(SD卡)存储数据。
在AndroidManifest.xml也加了以下权限配置信息
但是并没有用
在Activity代码中如上图加入这些代码就可以了。
点允许(allow)就行了
但现实无法向外围设备(SD卡)存储数据。
在AndroidManifest.xml也加了以下权限配置信息
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
但是并没有用
java.io.FileNotFoundException: /storage/emulated/0/data.txt (Permission denied)
经过查询,发现在Android6.0 就是API 23之后。APP需要动态获取权限。 需要用代码获取权限,这也是为了用户数据更加安全。
在Activity代码中如上图加入这些代码就可以了。
public static final int EXTERNAL_STORAGE_REQ_CODE = 10 ; int permission = ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE); if (permission != PackageManager.PERMISSION_GRANTED) { // 请求权限 ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, EXTERNAL_STORAGE_REQ_CODE); }
动态申请权限:
点允许(allow)就行了
相关文章推荐
- 安卓Android文件上传Demo报错 java.io.FileNotFoundException: /external/images/media/16: open failed: ENOENT (N
- android 写sd卡权限问题 java.io.FileNotFoundException:open failed: EACCES (Permission denied)
- 解决:java.io.FileNotFoundException: null/null
- hadoop 问题 copyFromLocal: java.io.FileNotFoundException: Parent path is not a directory: /user/admini
- class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: cla
- Log4J配置后, log4j:ERROR setFile(null,true) call failed. 报错:java.io.FileNotFoundException: /log/mytest2.log (系统找不到指定的路径。)
- tomcat下载文件时,URL含有文字参数与空格参数出错(java.io.FileNotFoundException错误) 解决方法(转)
- java.io.FileNotFoundException
- java.io.FileNotFoundException: /sdcard/fav.txt (Permission denied)
- java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/action-servlet.xml]
- keytool错误: java.io.FileNotFoundException: android.key (Permission denied)
- java.io.FileNotFoundException: /mnt/sdcard/test1.jpg (Permission denied)
- android异常:java.io.FileNotFoundException:Permission Denied
- 使用HttpURLConnection下载文件时出现 java.io.FileNotFoundException彻底解决办法
- [原]在Oracle SOASUITE 10g 调用ESB 报“java.io.FileNotFoundException: /u01/esb/product/10.1.3.1/j2ee/home/../Context.properties”问题的解决办法
- android环境配置(Error generating final archive: java.io.FileNotFoundException: D:\Android\Hello\bin\res)
- XMl Publisher Reports Fail with java.io.FileNotFoundException on Temp Directory After Cloning
- java.io.FileNotFoundException: ……(拒绝访问。)
- android4.0中HttpURLConnection抛异常java.io.FileNotFoundException
- java.io.FileNotFoundException: class path resource [META-INF/xfire/services.xml] cannot be opened because it does not exist