2 clcurie 11 clcurie_11 于 2013.02.20 11:46 提问

设置权限后提示"SDcard mounted RO"

我在 Manifest 文件中添加<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />。当我运行下面的代码时,提示"SDcard mounted RO"。哪里出错呢?

if(!extState.equals(Environment.MEDIA_MOUNTED)) {
        Log.d(Tag.getTag(this),
                ("SDcard not mounted"));
    }
    else if (!extState.equals(Environment.MEDIA_MOUNTED_READ_ONLY)) {
        Log.d(Tag.getTag(this),
                ("SDcard mounted RO"));
    }
    else {
        Log.d(Tag.getTag(this),
                ("SDcard mounted RW"));
    }

2个回答

usniyo
usniyo   2013.02.20 12:34
已采纳
!extState.equals(Environment.MEDIA_MOUNTED_READ_ONLY)

不为RO时提示RO。错在这里,去掉“!”

nana4ever
nana4ever   2013.02.27 11:25

你代码的逻辑好像错了

if(!extState.equals(Environment.MEDIA_MOUNTED)) {
    Log.d(Tag.getTag(this),
            ("SDcard not mounted"));
}
else ...

要改为:

if(extState.equals(Environment.MEDIA_MOUNTED)) {
    Log.d(Tag.getTag(this),
            ("SDcard mounted RW"));

}
else if (extState.equals(Environment.MEDIA_MOUNTED_READ_ONLY)) {
    Log.d(Tag.getTag(this),
            ("SDcard mounted RO"));
}
else {
    Log.d(Tag.getTag(this),
            ("SDcard not mounted"));
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
用adb设置sdcard的权限问题
首先需要说明下,这里说的sdcard的权限并不是指在Android application程序中设置sdcard的权限读取问题。而是指在DDMS看到的目录下的那个sdcard目录的权限问题。      有时候,当你想在sdcard目录下面导入某个文件时,突然发现sdcard目录没有权限,它的权限状态为(d-------即000)。这时候我们需要 做的事:1.如果你没有配置好a
SDCard权限设置
最近在做Android项目,发现之前能对sdcard卡进行读写操作突然不能了,细找之下,发现如下修改权限途径: 设置DDMS(File Explorer)目录下的sdcard目录的权限 1、打开cmd命令    2、输入adb shell(成功后进入adb的root用户状态#)  3、你可以用 ls 命令看下当前文件夹下目录,你会发现sdcard目录在这下面 4、修改sdcard权限,因
6.0版本有关SDCard读写权限
//SDCard的状态 String state = Environment.getExternalStorageState(); //判断SDCard是否挂载上 if (!Environment.MEDIA_MOUNTED .equals(state)) { return false; } //
DDMS中sdcard权限问题(无法访问)解决
在adb shell中运行ls -l看到sdcard权限为d------- 解决办法: 在项目的AndroidManifest.xml中添加: 完了以后clean,重新编译一下整个工程,然后再去ddms中就可以在File Explorer中展开sdcard文件夹了 转载地址:http://leiming32.blog.51cto.com/1021363/56
如何修改Android中模拟器的sdcard权限的问题
如何修改Android中模拟器的sdcard权限的问题
Android中的Environment.getExternalStorageState使用,对内置外置SD卡的判断
如果我们想要读取或者向SD卡写入,这时就必须先要判断一个SD卡的状态,否则有可能出错。 先解释一下挂载:这是linux系统的术语,就是加载的意思,把sd卡划入系统相连,让系统能认到并读取sd卡的内容 那么SD卡状态为什么时才能读取呢,经过我的各种情况的实践,大致如下: SD状态 现象描述 /mnt/sdcard目录是否存在 canRead返回
Android SdCard写入权限
在AndroidManifest.xml文件中添加如下代码 uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> uses-permission and
【Android】监听sdcard状态
public class MyService extends Service { private static final String TAG = "MyService"; File imagepath; @Override public IBinder onBind(Intent intent) { return null; } @Override public voi
android 内部sdcard出错处理errors=remount-ro改为errors=continue
android存储nand flash或者emmc一般会划分一个分区用作内部sdcard,系统启动会挂载该分区,一般挂载到/mnt/sdcard/,可读可写。当该分区出错时,出错处理是errors=remount-ro,也就是重新挂载成只读,这时便无法进行往sdcard写入操作。 /dev/block/vold/179:1 /mnt/sdcard vfat rw,dirsync,nosuid,n
真机调试时 无法在sdcard创建文件夹 或者push文件时没有权限
使用真机调试时,