0

我正在测试一个我正在开发的应用程序,我想删除我的应用程序创建的数据库,这样我就可以将我的 Web 服务器中的所有数据读回一个新的。

我启动了 adb,转到 data/data/my.applicon.package/databases 并做了一个“rm mydatabase”。这删除了数据库(注意:我以前做过很多次都没有问题)。

我再次启动了我的应用程序,令我惊讶的是,并没有创建一个新的数据库。更令人惊讶的是我的应用程序中有数据。我的应用程序仍在从某个地方提取数据!它从我的数据库中获取 Cursor 并使用 CursorAdapter 填充列表。因此,它显然是从数据库中读取(似乎是缓存的?)。

它究竟是从哪里拉出来的,为什么?它指向一个现在被删除的数据库。

4

1 回答 1

1

你确定你没有启动应用程序,点击主页/返回进入主屏幕,然后你的 adb 变魔术了吗?如果你这样做了,那么程序仍在后台运行,并且没有正确获取对数据库的更改。在对数据库进行更改之前,您应该确保在应用程序的 DDMS 中终止正在运行的进程。然后启动应用程序并查看更改是否被拾取。

我已经多次遇到这个问题。

于 2010-09-16T19:08:55.863 回答