android 访问data目录、6.0模拟器读写sdcard、相关sdcard路径

转载请标明出处: http://blog.csdn.net/xx326664162/article/details/52259980 文章出自:薛瑄的博客

你也可以查看我的其他同类文章,也会让你有一定的收货

访问data目录

在不root手机的情况下读取Data目录下的文件,直接访问data目录,会产生以下错误:

127|shell@android:/ $ cd /data  
cd /data  
shell@android:/data $ ls  
ls  
opendir failed, Permission denied  

提示没有权限。

正确使用adb读取data目录下的文件

shell@android:/data $ run-as com.your.package  
run-as com.your.package  
shell@android:/data/data/com.your.package $ cd /data/data/com.your.package  
cd /data/data/com.your.package  
shell@android:/data/data/com.your.package $ ls  
ls  
cache  
databases  
lib  
shared_prefs  
shell@android:/data/data/com.your.package $ cd databases  
cd databases  
shell@android:/data/data/com.your.package/databases $ ls  
yourpackagename.db  
$ cat preferences.db > /mnt/sdcard/yourpackagename.db     

将你要访问的package目录下的db文件拷贝到sdcard中,这样就可以正常访问了!

访问sdcard卡

有的Android版本,为了兼容以前,sdcard挂载到 /storage/emulated/legacy (故名思议,传统的),还建立三个软连接 /storage/sdcard0 ,/sdcard,/mnt/sdcard ,都指向 /storage/emulated/legacy

但是MIUI 系统,/sdcard路径是指向/storage/self/primary的路径的,而且上面提到的/storage/emulated/目录是没有权限查看的

所以访问sdcard,建议都去访问根目录下的/sdcard/目录

shell@cancro:/ $ cd sdcard/
shell@cancro:/sdcard $

关于sdcard文件目录的更深入分析

Android 6.0模拟器读写SD 卡

http://bbs.csdn.net/topics/391918620

在6.0模拟器上死活写文件不成功,试了4.0的模拟器没问题,真机没问题,6.0和 Android N 不成功,查了半天真相原来是要手动授权才可以。

这里写图片描述

参考:http://blog.csdn.net/yangzl2008/article/details/8498196

关注我的公众号,轻松了解和学习更多技术
这里写图片描述

发布了242 篇原创文章 · 获赞 776 · 访问量 226万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 代码科技 设计师: Amelia_0503

分享到微信朋友圈

×

扫一扫,手机浏览