Android Read-only file system 错误 /sdcard问题

本文介绍了在Android设备上使用SDcard的方法,包括如何在模拟器中加载SDcard、申请访问SDcard所需的权限,以及如何在程序中遍历SDcard。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引用:http://panyongzheng.iteye.com/blog/1337728

adb shell 后: mount -o remount rw(空格)/ 
到tools文件夹运行:adb  mount -o remount rw(空格)/ 



在程序中访问SDCard,你需要申请访问SDCard的权限。 
在AndroidManifest.xml中加入访问SDCard的权限如下: 

Java代码   收藏代码
  1. <!-- 在SDCard中创建与删除文件权限 -->  
  2. <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>  
  3. <!-- 往SDCard写入数据权限 -->  
  4. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>  





-------------------------------更多关于sdcard问题------------------------- 
为什么需要sdcard 
在android 中网页中图片的下载都会自动向sdcard 寻找空间,sdcard在开发测试中也是非常之必要。 


1:如何在模拟器中加载 sdcard 
通过文档中介绍可得如下示例: 
mksdcard -l sdcard 100M sdcard.img // 这样会在Tools的目录下产生 sdcard 在pc 中的镜像文件。 
模拟器启动的时候加载sdcard 
emulator -sdcard sdcard.img -avd myavd2(myavd2是模拟器名字,假如存在AVD403.ini,那应该是:emulator -sdcard sdcard.img -avd AVD403) 
这样后模拟器就可以看到自己的sdcard,通过adb shell 可以登录查看。 


2:遍历sdcard 
如何找到android 中的些特殊路径呢 ,像sdcard这种特殊路径,其实只要看 

Java代码   收藏代码
  1. android.os.Environment 这个类便很清晰了,其中有如下的方法:  
  2. getRootDirectory();  
  3. getDownloadCacheDirectory();  
  4. getExternalStorageDirectory();  
  5. getExternalStorageState(); 可以得到当前的sdcard 的各个状态。  


有了文件的路径,就可以再用File进行各种遍历等操作了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值