2015-10-16 76 views
1

我创建使用Xamarin的Android如何检索设备数据库

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浏览器)创建的数据库SQLite数据库。如何访问数据库?我已经尝试通过Xamarin Studio - >工具 - > Android设备监视器。没有什么像/data/data/app/databases/test.db

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

+0

你试图在模拟器上或实际设备上? – Jared

+0

在实际设备上。当我从Android设备监视器展开数据文件夹时,没有任何内容。 – User382

回答

1

无法访问数据库文件在实际设备上,除非它是根源的。该文件系统的访问受到限制,以防止人们轻松访问应用程序的数据。

你看到的例子解释了如何访问文件系统上的数据库假设你正在使用模拟器。

+0

如何验证数据库。有没有办法在Android上将数据库复制到桌面并访问它。 – User382

+0

验证它的方法是使用模拟器。 SDK中包含模拟器,或者您可以使用第三方选项,如Genymotion(https://www.genymotion.com/#!/)。 – Jared

0

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

我建议你看看下面的链接,你会发现Monodroid environment variables

+0

是的,那是什么是我有正确的路径。当我从Android设备监视器展开数据文件夹时,没有任何内容。它不显示数据/ ProjectName.ProjectName/files – User382

+0

正如Jared告诉你的,如果您尝试使用设备,它必须以root身份 – daniherculano

相关问题