对于ContentProvider,android:syncable = true?

gil*_*dgo 12 android

在尝试理解Android的SyncAdapter/ ContentProvider框架时,有一件事仍然无法解决.我不明白为什么需要android:syncable="true"在清单中定义ContentProvider .

为什么ContentProvider需要知道它是否会在一个内部使用SyncAdapter

Google文档说:"该标志允许同步适配器框架与内容提供商进行数据传输,但只有在您明确执行传输时才会进行传输."

这是否意味着,如果我不指定android:syncable="true",我不能用ContentProviderSyncAdapteronPerform?如果是这样,框架怎么能执行这样的事情呢?

有人能帮我解释一下这个问题吗?

谢谢

rds*_*rds 1

AContentProvider不需要android:syncable与其关联的SyncAdapter.

\n\n

你问:

\n\n
\n

这是否意味着如果我不指定 android:syncable="true",我就无法在 SyncAdapter 的 onPerform 中使用 ContentProvider?

\n
\n\n

不是这个意思。

\n\n

从文档中,android:syncable定义

\n\n
\n

内容提供商控制下的数据是否与服务器上的数据同步

\n
\n\n

AFAIK,您可以定义ContentProvider不带SyncAdapter\xe2\x80\x93 的 a ,相反是 false,另请参阅我应该使用 Android AccountManager 做什么?

\n