Xamarin Android 如何检索设备数据库

Xamarin Android how to retrieve device database

我已经使用

创建了 Sqlite 数据库
var documents = Environment.GetFolderPath (Environment.SpecialFolder.MyDocuments);
pathToDatabase = Path.Combine(documents, databaseName);

using (var conn= new SQLite.SQLiteConnection(pathToDatabase))
{
            conn.CreateTable<SETTINGS> ();
            conn.CreateTable<USER> (); 
}

我想查看(使用 Sqlite 浏览器)创建的数据库。如何访问数据库?我已经尝试通过 Xamarin Studio -> 工具 -> Android 设备监视器。没有什么比 /data/data/app/databases/test.db

数据文件夹没有显示任何内容。但是,我确信数据库已创建,因为我可以查询和检索数据。

您的数据库位于应用程序目录中的文件夹中(例如 "/data/data/ProjectName.ProjectName/files"

我建议您查看以下 link,您可以在其中找到 Monodroid environment variables

您无法在实际设备上访问数据库文件,除非它已获得 root 权限。该文件系统访问受到限制,以防止人们轻易访问您的应用程序的数据。

您看到的解释如何在文件系统上访问数据库的示例假设您使用的是模拟器。

您可以通过编程方式将 DB 文件从设备内部路径复制到设备下载文件夹,然后您可以从那里访问它。有关详细信息,您可以在此处通过博客 post 查看:http://www.appliedcodelog.com/2017/07/how-to-fetch-android-sqlite-db-file.html