没有 ContentObserver 的 SyncAdapter

SyncAdapter without ContentObserver

我最近了解到,在使用带有 CursorLoaders 的 ContentProvider 时,无需创建自己的 ContentObserver,只需调用 cursor#setNotificationUri() 或 getContext().getResolver().notifyChange。现在我想使用 SyncAdapter 对数据更改执行同步,对此的要求是为相应的 URI 设置一个 ContentObserver,我的问题是,这对上述侦听数据更改的方式有什么影响?

使用 SyncAdapter 时,您不需要 ContentObserver 来触发同步。只需确保在调用 notifyChange (Uri uri, ContentObserver observer, boolean syncToNetwork).

时将 syncToNetwork 设置为 true

Android 将自动调用此授权的所有 SyncAdapter,其中 supportsUploading 设置为 true 并且配置为自动同步。