如何使用adb命令查看android中的数据库

如何使用adb命令查看android中的数据库,第1张

在上图中,除了最后一个红色的方框,其它方框都是adb shell下的命令

【1】在Android程序中,一般创建的数据库存放在 /data/data/[应用程序包名]/databases 的目录下。

【2】cd 命令:文件夹跳转命令。ls 命令:查看某个文件夹下面有哪些文件。

【3】使用 "sqlite3 [数据库名称] " 命令来对某数据库进行一系列的 *** 作。

【4】在经过第【3】步骤后,可以使用 .tables 命令查看某数据库中包含哪些表。若要查询某表中包含的数据,在 sqlite>命令后输入查询的SQL语句即可查询,但要注意的是要以分号[]来结束该语句的输入。

【5】若在命令行中输入 adb shell 后,提示:adb不是内部或外部命令,也不是可运行的程序,或批处理文件,遇到这种情况是由于环境变量没有设置好的问题导致的。解决方法:在安装的Android sdk 包目录下的找到adb工具所在目录,一般是在...\android-sdk-windows\tools目录或者在...\android-sdk-windows\platform-tools目录下。把该目录添加到path环境变量中就OK了。

在Android中查看和管理sqlite数据库

在Android中可以使用Eclipse插件DDMS来查看,也可以使用Android工具包中的adb工具来查看。android

项目中的sqlite数据库位于/data/data/项目包/databases中。

使用DDMS导出sqlite数据库。

1、首先打开android项目的调试模式,然后找到显示DDMS:

选择DDMS

2、切换到DDMS,显示File Explorer窗口,找到/data/data/

然后找到程序包的文件夹,打开databases,就能看到sqlite数据库文件了。选择将其导出。

这样就把sqlite数据库文件以文件的方式导出来了,然后使用sqlite界面管理工具如

sqlite administrator、sqlite man或者firefox插件sqlite manager等打开就可以了。

使用adb工具访问sqlite数据库

Android Debug Bridge(ADB)是Android的一个通用调试工具,它可以更新设备或模拟器中的代码,

可以管理预定端口,可以在设备上运行shell命令,我们知道android是基于Linux内核,它的内部

文件结构也是采用linux文件组织方式,因此访问它的文件结构需要使用shell。这次我们就会用shell

来访问android应用中的sqlite数据库文件。

1、运行cmd,切换到android-sdk目录,运行adb.exe,加上参数shell,出现#号就代表进入了shell

命令模式,注意adb要在Android模拟器运行时才能进入shell:

2、shell命令记住两个基本命令ls和cd,类似windows命令提示行中的dir和cd,代表列出当前目录下

文件列表和进入到指定目录。了解这两个命令之后,就可以找到data/data/项目包名/databases:

找到数据库文件:

接下来就是使用sqlite管理工具来进行 *** 作了。键入sqlite3 数据库名就进入了sqlite管理模式了。

在android的sdk中自带了sqlite3.exe,这是sqlite的官方管理工具,它是一个命令行工具。为了使用

方便,将其路径注册到系统环境变量path中,即将%Android_Home%加在Path中,这样只样运行sqlite3

,就能直接打开sqlite管理工具了。

sqlite管理数据库篇

sqlite命令行工具默认是以结束语句的。所以如果只是一行语句,要在末尾加,或者在下一行中键入

,这样sqlite命令才会被执行。

sqlite常用命令:

.tables--查看数据库的表列表

.exit--退出sqlite命令行

其他命令可随时.help查看帮助。sql命令可直接在此命令行上执行即可

鉴于题主刚接触Android测试,我来推荐一些测试小工具吧

Android端

1.      Sqlite Editor

QLiteEditor是一款安卓平台上非常出色的专业数据库编辑器,可以查看,浏览,编辑 手机应用存储的SQLite数据库内容。可以编辑系统数据库(此功能需root权限)

2.      搜狗哆啦A梦(非常好用,强烈推荐)

功能覆盖Android端测试的方方面面,包括快速设置host、安装测试包、内存填充、一键搬家、快速卸载app、添加测试联系人等。

PC端:

1.      数据库查看工具SQLiteManager

打开数据库文件;导出数据库内容;对数据库进行增删改

2.      HttpAnalysis

可抓起客户端发给服务器的请求,及服务器返回的内容

3.      磁盘填充工具FIllDisk

FillDisk工具的工作原理就是先生成1GB的文件,当磁盘空间不足1GB时,就生成512MB的,再不足就生成256MB的,以此类推,逐渐生成小文件,直至磁盘空间被全部填满。

这是执行结束后的效果:

4.      抓包工具 wireshark、fiddler等

wireshark使用场景:

- wrieshark抓的包信息量大(可以抓取所有通过网卡的包)

- 不能抓取https包

- 不能设置请求中的断点

fiddler使用场景:

- 捕获https会话

- 通过filter进行http统计

- 可选择设置断点修改Request。设置好断点后,可以修复httpRequest的任何消息包括host,cookie或者表单中的数据

- 可选择设置断点修改Response

- 抓取http请求(不走http代理的请求抓取不到)

参考文献:

     http://duola.sogou.com/

http://www.chinanews.com/it/2016/03-25/7811188.shtml

https://www.wireshark.org/

http://www.telerik.com/fiddler


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9390851.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存