Android开发环境下关于如何导出手机通讯录数据库【Written By KillerLegend】

首先度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,选择导出即可。

png

打开RE,选中data,选择最右边的按钮,在弹出的列表中,点击Permission,如上图所示,点击后弹出下面的对话框。

png1

在Others中勾选三个复选框后,点击ok。打开DDMS转到对应的地方,选择File Explorer中右上角的导出按钮,如下图所示。

2013-10-04 星期五 14-42-59

然后选择一个地方放置即可。导出后,可以用一个数据库管理工具打开,这儿我使用SQLite Dev,导入后打开如下图:

image

打开目录Tables,如下图

image

双击data打开:

image

转到Data选项卡即可以看到你手机上的联系人信息了。

posted @ 2013-10-04 14:56  KillerLegend  Views(916)  Comments(0Edit  收藏  举报