自应用发布以来,我一直在使用Android Studio开发应用。

直到最近,一切都很好,我必须调试和检查数据库文件。由于我不知道如何直接看到数据库,当我调试生成数据库文件时,我不得不将数据库文件从我的手机导出到PC上。

为此,我必须打开DDMS >文件资源管理器。一旦我打开DDMS,我必须重新连接USB,我失去了调试线程。在检查数据库文件之后,我必须关闭DDMS并重新连接USB以回到调试模式。

这太复杂了。有人有更好的方法来做到这一点在Android Studio(我知道它更容易在Eclipse) ?


当前回答

最简单的方法是使用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上的图书馆页面。

其他回答

这是一个非常古老的问题,我的答案与上面的一些答案相似,但做得更快。下面的脚本是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

希望这能帮助到一些人。

最后,我找到了一个最简单的解决方案,不需要打开DDMS。

实际上,解决方案是基于@Distwo提到的,但它不必那么复杂。

首先,记住数据库文件在设备中的路径,它应该始终相同。 例如我的是:/data/data/com.XXX.module/databases/com.XXX.module.database

其次,执行这个命令,将数据库文件拉到PC上

 adb pull /data/data/com.XXX.module/databases/com.XXX.module.database /Users/somePathOnYourPC/

您需要做的就是复制并存储这个命令,然后您就可以一次又一次地使用它。

第三,如果你得到了Permission Denied或类似的情况,只需在前面的命令之前运行adb root。

使用android sqlite作为服务器端数据库

遵循以下步骤:

找到数据库工具窗口,然后像下图一样点击它

点击加号图标,并选择Android SQLite如下图

将你的android设备连接到你的电脑 选择您关心的包,并选择如下图所示的数据库 在执行上述所有步骤之前,您必须确保拥有访问文件/data/data/ database/ databasfile .db的权限

在所有这些步骤之后,您将看到如下所示的数据库内容:

最后一点是

每次更新数据库数据时,都必须单击更新图标。

希望这对你有用!谢谢你!

要知道sqlite数据库存储由你在android studio,你需要遵循简单的步骤:

1.Run your application
2.Go to Tools--->Android---->Device Monitor
3.Find your application name in left panel
4.Then click on File Explorer tab
5.Select data folder
6.Select data folder again and find your app or module name
7.Click on your  database name
8.On right-top window you have an option to pull file from device.
9.Click it and save it on your PC
10.Use FireFox Sqlite manager to attach it to your project.

欲了解更多信息,此链接将是有用的。 http://www.c-sharpcorner.com/UploadFile/e14021/know-where-database-is-stored-in-android-studio/

要查看您的db文件中的数据,您需要下载sqlite浏览器或在任何浏览器中添加相同的插件,因此您需要在浏览器中打开文件并查看您的数据。

从http://sqlitebrowser.org/下载浏览器

这里是屏幕截图显示浏览器包含注册数据库

谢谢,

最后,Android Studio通过数据库检查器选项卡支持此功能。您可以轻松应用视图/更新/查询操作。它现在还不是稳定的渠道,但你可以尝试Android Studio 4.1 Canary 5或更高版本。

您可以在这里看到数据库检查器的样子

你可以在这里下载相应的版本