Android 4.0系统在sdcard不能创建目录
2014-01-14 11:25
295 查看
在项目移植过程中发现了一个离奇的问题,以前的项目是2.3的。后来移植到4.0上面发现sdcard不能创建目录权限全部都加了。
研究了一会发现目录出现多层是不能创建 例如:(/mnt/sdcard/test/hh) 只有一层目录是正常创建例如(/mnt/sdcard/test)
解决问题的方法:首先解析路径放入数组中然后遍历创建文件夹
private void makeRootDirectory(String filePath) {
File file = null;
String newPath=null;
String[] path=filePath.split("/");
for(int i=0;i<path.length;i++){
if(newPath==null){
newPath=path[i];
}else{
newPath=newPath+"/"+path[i];
}
file = new File(newPath);
if (!file.exists()) {
file.mkdir();
}
}
}
记得加权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
研究了一会发现目录出现多层是不能创建 例如:(/mnt/sdcard/test/hh) 只有一层目录是正常创建例如(/mnt/sdcard/test)
解决问题的方法:首先解析路径放入数组中然后遍历创建文件夹
private void makeRootDirectory(String filePath) {
File file = null;
String newPath=null;
String[] path=filePath.split("/");
for(int i=0;i<path.length;i++){
if(newPath==null){
newPath=path[i];
}else{
newPath=newPath+"/"+path[i];
}
file = new File(newPath);
if (!file.exists()) {
file.mkdir();
}
}
}
记得加权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
相关文章推荐
- Android 4.0系统在sdcard不能创建目录
- Android在SDCard创建目录_卸载应用同时删除工程创建的文件
- Android获取SDcard目录及创建文件夹的方法
- Android获取SDcard目录及创建文件夹;
- 安卓手机或者平板文件系统中出现自动创建 SDCARD/JOY 目录的解决办法
- Android在SDCard创建目录_卸载应用同时删除工程创建的文件
- Android系统预制可卸载应用、预制文件到系统目录或SDCard目录
- Android 虚拟机sdcard不能创建文件
- Android 读取sdcard指定目录文件
- android 数据库技术 | 文件系统,SDCARD访问,CONTENT PROVIDER,SQLITE ,CURSOR操作,CURSOR适配器,SQLITEHELPER,数据库设计模式
- 【Android游戏开发之十】(优化处理)详细剖析Android Traceview效率检视工具,分析程序运行速度!并讲解两种创建SDcard方式!
- Android中在sdcard上创建文件夹
- (优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式! .
- Android 系统信息获取(CPU,RAM,ROM,Battery,SD-card,版本等)
- 关于通过DDMS向Android系统的模拟器的sdcard中导入mp3文件的问题
- android 在SdCard上创建数据库
- Android中数据存储--采用SQLite存储数据及在SDCard中创建数据库
- android 开发不能创建目录
- android sdcard存储方案(基于fuse文件系统):之二
- Android 获取SDCard中某个目录下图片