我正在使用 android 中的 sqlite 实现数据库。我创建表并成功插入值。我还检索值。但我的问题是如何从 DDMS 获取 DB 文件。实际上,我看到一个开发人员从 DDMS 或其他地方(我不知道)获取文件并打开它并看到其中的所有值?
您能告诉我如何获取该文件。以便我查看它。
让我再解释一下。我需要 sqlite(我在其中创建表)以便我检查条目?
检查 Sqlite 管理器插件以获取 Eclipse。
SQLiteManager plugin for eclipse
Not able to open database file in SQLite manager plugin for eclipse?
你可以在 DBMS->file explorer->data->data->your package 中看到它
您可以随时使用 ADB 来解决您的问题。
如果您是同一应用程序的开发人员,请使用此命令推送和拉取以获取数据库并查看,
adb shell
run-as com.example.yourapp
cd /data/data/com.example.yourapp/databases
chmod 666 ./com.example.yourapp.db
或者
您可以ls -l
查看数据库的名称和权限,
pull com.example.yourapp.db C:\Where_you_want_the_database
或者您可以使用 SQLlite 浏览器
pull ./com.example.yourapp.db C:\Where_you_want_the_database
编辑数据库,您还可以像这样推送数据库
push C:\your_database.db /data/data/com.example.yourapp/databases
即使没有植根设备以及在模拟器和真实设备上,这也能很好地工作。
你想从安卓设备(三星、索尼...)的内存中获取数据库文件吗?如果您的设备没有植根,那是不可能的。
有两种情况:有根或无根。
如果已root,您可以使用命令行执行以下操作:
adb shell
su
cd /data/data/com.your.company/databases/
cp your.sqlite /sdcard
然后它在你的sdcard里,你可以做adb pull /scard/your.sqlite
但这太麻烦了,所以你真正应该做的是,在你的 java 代码中:
new File(database.getPath()).setReadable(true, false);
数据库是您的 SQLiteDatabase 实例,可能在 SQLiteHelper 类中。然后你可以简单地:
adb pull /data/data/com.your.company.package/databases/your.sqlite