首先度Linux中的权限(Permissions)进行一些说明:
permissions一共有10个符号位,[- --- --- ---],在这里我们从左至右由0开始编号,各个符号位的编号分别为0,1,2,3,4,5,6,7,8,9。
下面说一下这些符号位的作用:
0位:指定类型,表示当前目录是目录还是文件,d表示目录,-表示普通文件。
1,2, 3位:表示文件拥有者(属主)对该文件所拥有的权限
4,5,6位:文件拥有者所在工作组中其他用户(属组)对该文件所拥有的权限
7, 8,9位:其他用户的对该文件所拥有的权限(对于我们,我们就是其他用户,当然其他用户不仅仅局限于我们)
权限的缩写:r是读权限 w是写权限 x是执行权 ,分别对应与read,write,execute。
如:drwxr-x--x表示,表示当前目录是目录,属主有读写和执行的权限,属组有执行与读的权限,其他人只有执行的权限。
好的,现在让我们开始:
1:首先你要获取手机的root权限
2:为你的手机安装Root Explore,也就是RE。
3:在ADT中打开DDMS,在Devices中选中你的手机,打开File Explorer,在列出的目录中找到data
4:可以看一下右边的Permissions列,如果最后3为符号位为--x,表示其他用户可以执行,(其实你可以测试一下,如果某个目录有小箭头,但是你怎么点击也展不开的话,那么在permissions列中的最后3位一定没有x,也就是不可以执行),也就是可以打开该目录。否则你需要通过RE修改权限,其次为了能够导出通讯录数据库,其目录为:data/data/com.android.providers.contacts/databases,你需要使用RE逐一修改权限我们要做的是导出通讯录数据库文件,如下图所示,打开RE,修改权限permissions,在打开的data界面中,对others栏对三个复选框全部勾选,然后你再次打开ADT,选择导出即可。
打开RE,选中data,选择最右边的按钮,在弹出的列表中,点击Permission,如上图所示,点击后弹出下面的对话框。
在Others中勾选三个复选框后,点击ok。打开DDMS转到对应的地方,选择File Explorer中右上角的导出按钮,如下图所示。
然后选择一个地方放置即可。导出后,可以用一个数据库管理工具打开,这儿我使用SQLite Dev,导入后打开如下图:
打开目录Tables,如下图
双击data打开:
转到Data选项卡即可以看到你手机上的联系人信息了。