Android 安卓:当数据发生变化时,如何接收内容提供商的回调?

Android 安卓:当数据发生变化时,如何接收内容提供商的回调?,android,Android,假设我有3个活动可以显示和向ContentProvider添加数据。在活动之间同步状态的最佳方式是什么?例如,如果ActivityA向ContentProvider添加一条新记录,我希望ActivityB和ActivityC收到通知,以便它们可以更新其视图。从每个活动中使用ContentResolver.registerContentObserver()方法,并提供适当的URI 您可以传递提供程序的基本内容URI,并传递notifyForDescendents参数的true,每次发生更改时,您的

假设我有3个活动可以显示和向ContentProvider添加数据。在活动之间同步状态的最佳方式是什么?例如,如果ActivityA向ContentProvider添加一条新记录,我希望ActivityB和ActivityC收到通知,以便它们可以更新其视图。

从每个活动中使用
ContentResolver.registerContentObserver()
方法,并提供适当的URI

您可以传递提供程序的基本内容URI,并传递
notifyForDescendents
参数的
true
,每次发生更改时,您的回调都会被命中

您正在访问的内容提供商必须支持此功能(大多数都支持)。如果您正在编写自己的,则必须使用已修改行的URI调用
ContentResolver.notifyChange()