我已经查看了有关此主题的先前问题的答案,但似乎无法让它们中的任何一个起作用。我在Eclipse中开发,并在模拟器上运行应用程序。
似乎最简单的方法是将adb
shell与sqlite3命令结合使用。使用adb,我可以看到模拟器设备。当我启动adb shell时,我看到一个目录,这是我期望找到数据库的地方:
/data/data/com.example.myfirstapp/databases/ (where com.example.myfirstapp is the package name of the app)
但是,该目录中没有.db
个文件。有一个与应用程序创建的数据库同名的文件,但它没有.db
扩展名。
(我很确定我看到了模拟设备的文件系统,因为它确实有我的应用程序的目录。)
更新
在完成所有响应并通过adb / sqlite3访问数据库并使用DDMD / Sqlite浏览器后,我意识到我在代码中犯了一个“新手”错误:
public class MessageOpenHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "MyFirstApp.db";
public static final String MESSAGE_COLUMN = "message";
public static final String MESSAGE_TABLE_NAME = "messages";
private static final String MESSAGE_TABLE_CREATE = String.format("create table %s (%s TEXT);", MESSAGE_TABLE_NAME, MESSAGE_COLUMN);
public MessageOpenHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
按照惯例,数据库名称应包含.db
扩展名。虽然没有它它可以正常工作,但Eclipse的Sqlite浏览器将无法识别该文件。希望像我这样的其他初学者也不会犯同样的错误。
答案 0 :(得分:2)
是的,大卫N'说实话,但在检查数据之前不要忘记点击位于左上角设备选项卡的设备 - >数据 - >包名称 - >数据库名称
答案 1 :(得分:1)
在eclipse中,您可以使用DDMS选项卡查看SQLite数据库。
转到文件资源管理器 - >数据 - >数据 - >包名称 - >数据库名称
您现在可以推送或拉取数据库......
希望有所帮助
答案 2 :(得分:1)