自应用发布以来,我一直在使用Android Studio开发应用。
直到最近,一切都很好,我必须调试和检查数据库文件。由于我不知道如何直接看到数据库,当我调试生成数据库文件时,我不得不将数据库文件从我的手机导出到PC上。
为此,我必须打开DDMS >文件资源管理器。一旦我打开DDMS,我必须重新连接USB,我失去了调试线程。在检查数据库文件之后,我必须关闭DDMS并重新连接USB以回到调试模式。
这太复杂了。有人有更好的方法来做到这一点在Android Studio(我知道它更容易在Eclipse) ?
这是一个非常古老的问题,我的答案与上面的一些答案相似,但做得更快。下面的脚本是Mac,但我相信有人可以修改它为Windows。
1)在Mac上打开脚本编辑器(你可以在Spotlight中搜索脚本编辑器)
2)复制粘贴下面的文本,并修改你的SDK路径,包名等(见下文)
3)保存脚本!!
这是它!只需按下顶部的播放按钮,即可获得更新后的数据库文件,该文件将在您的桌面上。
替换下面脚本中的内容:
Path_to_my_sdk ==>>把完整的路径到你的SDK
My_package_name ==>应用程序的>包名称
myDbName.db ==>数据库的>文件名
set getLocalDb to "path_to_my_sdk/platform-tools/adb shell run-as my_package_name chmod 777 databases && path_to_my_sdk/platform-tools/adb shell run-as my_package_name chmod 777 databases/myDbName.db && path_to_my_sdk/platform-tools/adb shell run-as my_package_name cp databases/myDbName.db /sdcard/myDbName.db && path_to_my_sdk/platform-tools/adb pull /sdcard/myDbName.db /Users/User/Desktop/myDbName.db"
do shell script getLocalDb
希望这能帮助到一些人。
最简单的方法是使用Android调试数据库库(GitHub上的7.7k星)。
优点:
快速实现
查看所有数据库和共享首选项
直接编辑、删除、创建数据库值
在给定的数据库上运行任何SQLite查询
在数据中搜索
下载数据库
添加自定义数据库文件
不需要根设备
使用方法:
添加debugImplementation 'com.amitshekhar.android:debug-db:1.0.6'来构建。gradle(模块);
启动应用程序;
找到日志中的调试链接(在LogCat中)(即D/DebugDB:在浏览器中打开http://192.168.232.2:8080,链接会不一样)并在浏览器中打开;
享受强大的调试工具!
重要的是:
不幸的是,它不能与模拟器一起工作
如果您通过USB使用它,请运行adb forward tcp:8080 tcp:8080
你的Android手机和笔记本电脑应该连接到同一个网络(Wifi或局域网)
欲了解更多信息,请访问GitHub上的图书馆页面。
Follow the above steps to open the database folder of your app in Android Device explorer and in there you can see six files, The first three is named as android and the last three is named as your database name. You only have to work with the last three files, save these three files at your preferred location. You can save these files by right-clicking to the file and click save as button (like I have my database named as room_database and so three files are named as room_database, room_database-shm, and room_database-wal. Rename the corresponding file as follows:-
1)从room_database到room_database.db
2) room_database-shm到room_database.db-shm
3) room_database-wal到room_database.db-wal
现在在任何SQLite浏览器中打开第一个文件,这三个文件都将被填充到浏览器中。
虽然这是一个很老的问题,但我认为它今天仍然有意义。在最新版本的android studio中,我找到了一种方法来查看它(我不确定以前的版本中是否可用)。]
下面是如何查看数据库中的数据:
步骤:
Go to View > Tool Windows > Device File Explorer
Then the folder data > data and you will see applications lists.
There scroll down a little bit and see the package [ your package for
application ].
After finding your package, see databases folder and select file, right
click it and save [ download ]
As you can't see the data directly, there is a tool, DB Browser for SQLite,
go website https://sqlitebrowser.org/
Open Db browser and click open database and choose the database table you
downloaded and it will show you the data.
新编辑
现在(当你阅读这篇文章的时候),这甚至更容易了,因为Android工作室已经提供了数据库检查器(就在右下角附近)。
点击它,你会看到数据库。
但是,请确保API的最小级别是26,如果不通过构建更改它。gradle文件作为minSdkVersion 26