手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >android 外部存储创建文件夹总是返回false的问题
android 外部存储创建文件夹总是返回false的问题
摘要:项目需要在外部存储中新建立文件夹,部分代码如下:if(Environment.getExternalStorageState().equal...

项目需要在外部存储中新建立文件夹,部分代码如下:

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){

Filefile=newFile(Environment.getExternalStorageDirectory(),"Demo");//路径是/mnt/sdcard

booleanisCreate=file.mkdir();

Log.d("TAG",”isCreate="+isCreate);

}

manifest.xml中声明了权限如下:

在adbshell中查看所有文件:

D:workspaceZZTDemo>adbshell

error:morethanonedevice/emulatorD:workspaceZZTDemo>adbshell

root@android:/#cdsdcard

root@android:/sdcard#ls-al

drwxrwxr-xsystemsdcard_rw2016-08-2404:14.BD_SAPI_CACHE

drwxrwxr-xsystemsdcard_rw2016-12-0501:29.DataStorage

drwxrwxr-xsystemsdcard_rw2016-10-2410:23.UTSystemConfig

d---------rootroot2016-12-0600:37.android_secure

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Alarms

drwxrwxr-xsystemsdcard_rw2011-01-0212:05Android

drwxrwxr-xsystemsdcard_rw2016-12-0501:29BaiduAsbe76b54f

drwxrwxr-xsystemsdcard_rw2016-12-0509:01CloudDrive

drwxrwxr-xsystemsdcard_rw2011-01-0210:36DCIM

drwxrwxr-xsystemsdcard_rw2016-08-2404:18Download

-rwxrwxr-xsystemsdcard_rw2822552014-08-2515:46EMserialportV2.0.apk

-rwxrwxr-xsystemsdcard_rw7917412014-08-1815:08Exhibition.apk

drwxrwxr-xsystemsdcard_rw2011-01-0210:35LOST.DIR

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Movies

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Music

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Notifications

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Pictures

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Podcasts

drwxrwxr-xsystemsdcard_rw2011-01-0210:36Ringtones

drwxrwxr-xsystemsdcard_rw2016-09-1416:19SystemVolumeInformation

-rwxrwxr-xsystemsdcard_rw17133772016-10-1920:14app-debug.apk

drwxrwxr-xsystemsdcard_rw2016-08-2404:14backups

drwxrwxr-xsystemsdcard_rw2016-08-2404:19baidu

drwxrwxr-xsystemsdcard_rw2016-07-2808:49bluetooth

-rwxrwxr-xsystemsdcard_rw02016-08-2404:14com.baidu.appsearch.log

-rwxrwxr-xsystemsdcard_rw02016-12-0600:37com.baidu.appsearch.log.lck

-rwxrwxr-xsystemsdcard_rw70435112016-09-1420:17data.txt

-rwxrwxr-xsystemsdcard_rw114152016-09-1418:49data2.txt

drwxrwxr-xsystemsdcard_rw2011-01-0210:38external_sdcard

drwxrwxr-xsystemsdcard_rw2016-12-0508:34zzt

可以看到文件夹并未创建,打印的Log中显示mkdir()返回值一直是false。

使用context.getExternalFilesDir(null)创建文件夹也会返回false。

回复讨论(解决方案)

这个问题,首先,你需要确定你的外部存储是否只有一个,其次,你输出一下file的路径信息,最后你修改下mddirs();使用这个方法尝试一下

设备只有一个外部存储;

输出外置存储和file的信息如下:

12-0607:25:27.3901873-1873/?D/SYS:Environment.getExternalStorageState()=mounted

12-0607:25:27.3901873-1873/?D/SYS:file.getAbsolutePath()=/mnt/sdcard/Demo.txt

mkdir和mkdirs创建根目录下的单层和多层都试过了,都无法创建

手机是否为6.0以上系统,是的话需要手动请求权限;另外,新建文件夹请用mkdirs()。

不是6.0系统,是个4.2.2的平板

帖子终结吧,我发现问题了,权限设置里面我写成了。。谢谢各位帮忙啦。

权限打错了字,为什么不报错么..

【android 外部存储创建文件夹总是返回false的问题】相关文章:

解决android 下载时文件名中文和空格问题

Android新浪微博下拉刷新(最新消息显示在最上面)

android自动更新软件版本

分享Android平板电脑上开发应用程序不能全屏显示的问题解决

Android开发之XML文件解析的使用

Android应用开发UI控件ImageSwitcher的使用

Android 中动态加载.jar的实现步骤

android ListView自动滚动方法

Android颜色编辑器的制作中遇到的问题分析

Android-如何将RGB彩色图转换为灰度图方法介绍

精品推荐
分类导航