Android应用程序写外置SD卡问题(急!!!!) 本帖最后由 mooncmy 于 2012-10-26 14:41:47 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你看那个extsd文件夹有可写的权限吗? 使用LL命令查看外置sd卡extsd的属性如下:d---rwxr-x system media_rw 使用LL命令查看内置sd卡sdcard的属性如下:d---rwxr-x system sdcard_rw 請問你的路徑或是寫法?我這邊測試是ok的File file = new("/mnt/ext_sdcard/test.txt"); (new File("/extsd/tachograph2/")).mkdirs(); 或者(new File("/mnt/extsd/tachograph2/")).mkdirs(); 我是在平板上测的,这个两个方法都不行,返回值都为false。 你是在eclipse的file exloper看到你的資料夾是extsd?因為你的資料夾目錄跟我的不太一樣勒? 這是我平板上的 mnt 目錄狀態drwxr-xr-x root system 2012-10-22 10:03 asecd---rwxr-x system sdcard_rw 1970-01-01 08:00 ext_sdcardd--------- system system 2012-10-22 10:03 ext_usbdrwxr-xr-x root system 2012-10-22 10:03 obbdrwxrwxr-x root sdcard_rw 2012-10-24 17:25 sdcarddrwx------ root root 2012-10-22 10:03 secure還有你請問你的 android 4.0.3的版本是多少?我是 rev 3我參考了此篇http://www.chainfire.eu/articles/113/Is_Google_blocking_apps_writing_to_SD_cards_/這篇大概4月的時候的事情可能是那時候的sdk有問題? eclipse的file exloper能看到extsd目录 \frameworks\base\data\etc\platform.xml修改了这个文件也貌似不行 不会吧,除非你一直用的android:sharedUserId="android.uid.system"?system用户不能访问sd card把他去掉 我用chmod 777 extsd 也改变不了目录的属性,奇怪啊 d---rwxr-x system sdcard_rwsystem跟普通用户都没有写的权限。 内置是可以写的,只是外置不能写内置 :d---rwxr-x system sdcard_rw外置 :d---rwxr-x system media_rw 内置 :d---rwxr-x system sdcard_rw---只有sdcard_rw组采用w的权限,你的应用是在哪个进程下? 将机器里面的/system/etc/permissions/platform.xml文件的 <permission name="android.permission.WRITE_EXTERNAL_STORAGE" > <group gid="media_rw" /> <group gid="sdcard_rw" /> </permission>试下! 把 <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE"/>去掉因为这个权限需要系统权限,而有了系统权限后又不能读写外置SD卡。 加上 <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE"/> 解决了没 我也碰到这个问题,android4.4.2 解决方案:1.在RE管理器的system\etc\permissions路径下找到platformer.xml2.用文本编辑器打开,在<group gid="sdcard_rw">下添加<group gid="media_rw">(好像有两处要添加)3.重启设备,搞定 如何有效的检查输入法状态并关闭输入法 自己做音乐播放器,如何获得音乐文件内部的专辑图片? 点与扇形区碰撞检测 Android阻止调用拨号程序 来电界面上的问题 各位前辈,想实现这样的效果 GridView 刷新 SimpleAdapter中的数据,异常! andorid 图片如何涂鸦 并且可以放大 缩小 移动 android开机后弹出AlertDialog按钮无默认焦点 新人求助,水平方向的LinearLayout在使用addview的时候展示出来的效果会出问题,求解 如何动态改变 Fragment 的样式 ? android 播放视频的疑问
d---rwxr-x system media_rw
d---rwxr-x system sdcard_rw
我這邊測試是ok的File file = new("/mnt/ext_sdcard/test.txt");
或者(new File("/mnt/extsd/tachograph2/")).mkdirs(); 我是在平板上测的,这个两个方法都不行,返回值都为false。
因為你的資料夾目錄跟我的不太一樣勒?
drwxr-xr-x root system 2012-10-22 10:03 asec
d---rwxr-x system sdcard_rw 1970-01-01 08:00 ext_sdcard
d--------- system system 2012-10-22 10:03 ext_usb
drwxr-xr-x root system 2012-10-22 10:03 obb
drwxrwxr-x root sdcard_rw 2012-10-24 17:25 sdcard
drwx------ root root 2012-10-22 10:03 secure還有你請問你的 android 4.0.3的版本是多少?
我是 rev 3
我參考了此篇
http://www.chainfire.eu/articles/113/Is_Google_blocking_apps_writing_to_SD_cards_/
這篇大概4月的時候的事情
可能是那時候的sdk有問題?
修改了这个文件也貌似不行
system用户不能访问sd card把他去掉
system跟普通用户都没有写的权限。
内置 :d---rwxr-x system sdcard_rw
外置 :d---rwxr-x system media_rw
---只有sdcard_rw组采用w的权限,你的应用是在哪个进程下?
<group gid="media_rw" />
<group gid="sdcard_rw" />
</permission>
试下!
1.在RE管理器的system\etc\permissions路径下找到platformer.xml
2.用文本编辑器打开,在<group gid="sdcard_rw">下添加<group gid="media_rw">(好像有两处要添加)
3.重启设备,搞定