我在Android设备上创建了一个SQLite数据库.程序可以读/写数据库,因此显然已经创建了数据库文件.SQLiteDatabase.mPath设置为
db.mPath = "/data/data/dev.client.android/databases/clientDB.db"
但是当我浏览设备上的目录时,我找不到文件clientDB.db.我查看了数据目录,但似乎是空的.
有谁知道这里有什么不对吗?
在ContextWrapper上尝试getDatabasePath(http://developer.android.com/reference/android/content/ContextWrapper.html).如果您在Activity或Application类中,请尝试:
File dbFile = getDatabasePath(MY_DB_NAME); Log.i(dbFile.getAbsolutePath());
只是假设它/data/data/my.package.name/databases/
是坏的,因为不能保证数据没有被移动到SD卡或者设备/ OS刚刚决定在不同的数据目录上.
如果你的意思是你访问过/data
并且没有发现任何内容,并且你正在检查一块普通的Android硬件,那就是预期的.DDMS无权浏览/data
.
但是,至少如果您的应用程序是在调试模式下编译的,您可以使用adb pull
控制台上的命令直接下载您的文件.
在调试模式下,您可以使用adb shell并浏览目录内容.在shell中,您可以调用sqlite3 /data/data/dev.client.android/databases/clientDB.db来分析数据库.