0

在我的 android 应用程序中,有一个将记录插入数据库表 A 的服务,每当在数据库表 A 中插入任何新记录时,我都需要执行一些操作。

如何使用 ContentObserver 持续观察表 A?为了观察 CallLogs 和 Contacts URI,每当表 A 中发生任何更改时,我应该提供什么 URI 以获得通知?

4

2 回答 2

2

您不能与内容提供者“观察一张桌子”。SQLite db 中的更改无法触发任何 java 代码。

但是,您可以(这就是联系人和日志提供者所做的)在每次插入后通知所有感兴趣的人。

所以:

  • 要么将您的插入移动到自定义内容提供程序中,然后让它通知其听众,
  • 或者 - 如果您需要更轻松的东西 - 发送一个简单的广播意图,说“数据已更改”(并收听广播)。
于 2013-10-05T14:45:15.453 回答
0

同样的方式:创建一个自定义 ContentProvider 来访问您的数据库表

于 2013-10-05T14:44:31.280 回答