【原创,转载注明出处】Android SD卡排错
【背景】
写了个简单的以数据库操作为基础应用,数据库的操作以插入操作为主。
【问题】
1. 每次在执行到数据库操作的时候,就报一个空对象的错误,具体错误没保存下来,但是也是大家经常遇到的,
程序异常退出。
2. 在Eclipse打开的sd卡/mnt/sdcard目录的权限非常怪异,基本上显示是无任何权限,包括读的权限,如下图片。
【定位步骤】
1. 跟大部分人一样,我最先怀疑是不是我改了什么代码,导致老天爷又惩罚我了,但是回想了下,确实没做过什么
对不起老天爷的事情,代码从上次成功操作,到现在,没动过,那就应该不是代码的问题。当然,真正排错也不是
这么简单的,我还是对着代码瞅了小半天的。
2. 是不是android manifest.xml文件有问题,但是说实话也没改过,该给的权限,还都是有的。
3. 通过Eclipse的 file explorer上传文件看看,每次都会报错"Failed to push selection: Read-only file system",而且后果就是
在sd卡下面却是找不到我的数据库文件,SD卡得问题可疑。
4. 隐约记得好像系统提示过SD卡空间不足,但是我不能确认,这就作为主线进入下一步,死马当活马医,就通过AVD Manager把
SD卡的容量从512M增加到1024M。
5. 重启Eclipse,无效,问题依旧。
6. 重启AVD,问题解决了,这个就跟手机要换张容量大点的SD卡一个道理,必须关机重启才能生效。
【后记】
网上处理这个问题的内容很少,至少我是没看到这么解决的,可能遇到的不多,有重启能解决的,
但是重启我觉得应该是治标不治本的办法,短短时间应该会很快重现。
转载请注明来源****