在位于SQLite数据库的Android设备上,由Room库创建

问题描述 投票:0回答:5

位于设备上由Room库创建的应用程序SQLite数据库在哪里?

上下文:我有一个创建和使用Room数据库的应用程序。要调试数据库,我想在SQLite查看器应用程序中打开它,但我不知道数据库在测试设备上的位置。

android android-room
5个回答
1
投票

Go to Tools -> DDMS或单击右栏中布局预览下面的设备文件浏览器。

设备监视器窗口将打开。

在文件资源管理器选项卡中,click data -> data -> your project name -> databases

单击从设备图标中拉出文件。使用.db扩展名保存文件。

我建议请使用Facebook提供的Stetho库,这样您每次都不需要拉数据库。您可以在浏览器中检查数据库。

http://facebook.github.io/stetho/


1
投票

您还可以借助这个令人敬畏的库Android-Debug-Database在桌面浏览器上调试您的数据库。请注意,运行应用程序和台式机/笔记本电脑的移动设备必须连接到同一网络。


1
投票

无论您在Android中使用Room,OrmLite还是SQLite都位于应用程序包的数据库文件夹中。

您可以按照以下步骤访问数据库文件夹。

  • 查看>工具Windows>设备文件资源管理器

enter image description here

从设备文件资源管理器转到存储所有应用程序包的数据文件夹。确保已连接仿真器或设备。

  • 日期>日期

enter image description here

然后,找到您的应用程序包并转到您的数据库。

  • com.company.my> databases> yourdatabasename.db

enter image description here

然后,您可以将数据库保存在计算机中,并使用它执行任何操作。

enter image description here

我使用SQLiteBrowser来浏览数据库。


0
投票

您可以使用 :

String path = getDatabasePath("you_database_name").getAbsolutePath();

0
投票

除了@musooff回答,如果要将数据库保存到本地存储或想要为数据库提供自定义路径。然后您可以使用以下方法:

val DATABASE_NAME = Environment.getExternalStorageDirectory().toString() + File.separator + "MyDBFolder" + File.separator + "example.db"

Room.databaseBuilder(context, AppDatabase::class.java, DATABASE_NAME).build()

这将在本地存储中创建一个包含MyDBFolder数据库的文件夹example.db。从那里您可以轻松访问数据库。

© www.soinside.com 2019 - 2024. All rights reserved.