3
假设我有3个可以显示数据并将其添加到ContentProvider的活动活动。在活动中同步状态的最佳方式是什么?例如,如果ActivityA向ContentProvider添加新记录,我希望ActivityB和ActivityC接收通知,以便他们可以更新其视图。Android:数据更改时如何从Content Provider接收回调?
假设我有3个可以显示数据并将其添加到ContentProvider的活动活动。在活动中同步状态的最佳方式是什么?例如,如果ActivityA向ContentProvider添加新记录,我希望ActivityB和ActivityC接收通知,以便他们可以更新其视图。Android:数据更改时如何从Content Provider接收回调?
使用每个活动的ContentResolver.registerContentObserver()
方法,并提供适当的URI。
您可以传递提供者的基本内容URI,并通过true
获取notifyForDescendents
参数,并且每次发生更改时都会触发您的回调。
您正在访问的Content Provider必须支持此操作(大部分都是这样)。如果您正在编写自己的代码,则必须使用修改后的行的URI调用ContentResolver.notifyChange()
。