调试Android中的数据库有多种方式,比如费劲巴拉的找到sqlite文件拷贝出来调试。目前HIA比较流行的是:借助电脑端浏览器来调试(原理就是App内部开启个基于socket的http server服务。网页访问解析与传输命令),可以使用如下两个玩意:
Stetho
Android-Debug-Database
Android-Debug-Database刚出来的时候,本人还顺手写了个iOS版本,1:1复刻。https://github.com/shaojiankui/iOS-Debug-Database
其实理论上来说,基于内部基于socket开启个httpserver web操作而已,开发一款类似navicat的可视化数据库查看操作也是完全行的通的,实现起来也很简单,只是这些客户端软件没人为移动开发者考虑而已。找了找发现,SQLiteStudio就是这样,非常赞,感谢开源。
对于Android开发者来说,它可以连接上你的应用,实时调试你手机中的sqlite数据库。方便的管理你的数据库,管理你的表的结构,增删改查你的数据。
SQLiteStudio简介
SQLiteStudio 是一个开源的数据库管理软件。有如下特性:
- 便携,无需安装或者卸载,下载解压即可运行。
- 直观的界面,
- 强大,但又轻量又快捷,
- 所有SQLite3和SQLite2特性都封装在简洁的GUI中
- 跨平台, Windows 9x/2k/XP/2003/Vista/7, Linux, MacOS X。理论上也可以运行在其他Unixes系统中(还没有测试过)
- 导出各种格式 (SQL statements, CSV, HTML, XML, PDF, JSON),
- 可以从多种格式导入数据 (CSV, custom text files [regular expressions]),
- 许多小的附加功能,比如格式化代码、在编辑器窗口中执行的查询历史、动态语法检查等等,
- 支持Unicode,
- 皮肤 (界面可以看起来是Windows 9x/XP、KDE、GTK、Mac OS X的原生软件,WindowMaker小部件等)
- 可配置的颜色,字体和快捷方式。
- 开放源代码和自由发布的GPLv3许可证。
下载地址
https://github.com/pawelsalawa/sqlitestudio
Android SQLite调试步骤
1.开启SQLiteStudio调试Android插件
Mac系统在SQLiteStudio首选项中打开配置界面。
Window系统,点击SQLiteStudio菜单栏中的Tools-》open configuration dialog
然后按下图操作后点OK完成这一步
2.AndroidManifest.xml,添加网络访问权限。
1 |
<uses-permission android:name="android.permission.INTERNET" /> |
3.导入Jar包到App项目
打开SQLiteStudio,菜单栏Tools-》Get Android Connector Jar file,弹出对话框保存到能找到的位置。
放到Android Studio 的app的 libs中,记得右键jar包 add as library,否则调用不到代码。
4.开启与关闭调试插件
1 2 3 4 |
//开启 SQLiteStudioService.instance().start(this) //关闭 SQLiteStudioService.instance().stop(this) |
将代码加入到合适位置,加入到application中,那么就一直启动着。加入到activity就进入页面启动,销毁关闭即可。
5.查看管理SQLite
打开SQLiteStudio软件,启动手机APP,SQLiteStudio创建数据库连接,数据类型选Android SQLite,connection method 一般选第一个。底下如果相同网段,还可以选择Network。port默认(其实就是jar包的库socket的端口)。database选要调试的SQLite数据库。就可以进行数据库完全调试与管理了。如果重启了app,双击数据库名称重新连接即可。特别方便。
Done!