功能需要,尝试在本地sd卡上创建文件和文件夹的时候,报错,程序崩溃。

一般情况下,是忘记给予sd卡的读写权限。但是这里面权限已经给了,还是报错。

在网上搜索关于这方面的问题,发现有网友给出解答:

4.4之后,不能随便在sd卡上面创建文件或者文件夹了,

只能在Android/data/你的包名/,

这个路径下创建或者修改,当然,Android/data/你的包名/,这个路径你也是创建不了的,

调用下this.getExternalFilesDir(null)系统会默认给你创建,

然后就可以在Android/data/你的包名/下作读写操作了。

这里面的4.4之后不一定都存在这个问题。说法有点片面。

不过假如app需要分发到应用市场的话,还是需要考虑这方面的。

下面是获取文件路径的几种方式:

        System.out.println(Environment.getExternalStorageDirectory().getPath());        System.out.println(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES));        System.out.println(getExternalCacheDir().toString()); //这个地方不会报错了        System.out.println(getExternalFilesDir(null).toString());  //这个地方不会报错了

  Android SD卡创建文件和文件夹失败_第1张图片

后面两个才是需要的。

更多相关文章

  1. 【Android】“存储”之普通文件存储(内部存储空间)
  2. Android通过加载其他应用的Dex文件破解关键数据
  3. android中javah生成jni头文件报错问题
  4. 双击运行Android模拟器、创建SDcard、AVD、安装APK文件、上传文
  5. Android 文件操作心得体会
  6. 海康威视视频监控demo 源码+库文件
  7. Android studio 添加assets文件夹
  8. android R 文件生成不了

随机推荐

  1. html页面传值问题已解决
  2. 关于各种js框架的选择
  3. 使用jquery和ajax更新选项列表
  4. 阻止a标签跳转,且将a的get提交方式转化为p
  5. 将字符串数组发布到.net-core mvc
  6. 使用Rails 3.2和AJAX(非flash上传解决方
  7. 如何在鼠标滚轮上滚动水平滚动?
  8. jQuery编程基础精华02(属性、表单过滤器,元
  9. Google 新物联网平台初体验—Android(安
  10. jQuery - 从一个列表项中查找活动类,并将