问题标签 [android-syncadapter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
329 浏览

android - 用于在 android 和 osx 之间同步联系人的通用数据结构

我正在尝试从 android 设备中提取联系信息并将其与 osx 中的地址簿同步。基本上是从设备到设备的直接同步机制,无需使用必要的谷歌帐户。到目前为止,我设法在 osx 端运行了一个套接字服务器,并通过 bonjour 发布了它的服务,可以从 android 手机发现和联系。我还在 android 端使用了一个同步适配器来提供同步功能。

到目前为止的设置和想法,我现在的问题是,就数据存储和通信而言,最好的选择是什么?

在 android 上,联系人存储在一个 sqlite 数据库中,可以查询。(实际上是三个表来获取全套信息Contacts.Contract.Data ..RawContacts 和..Contacts) 可以通过AddressBook.framework 轻松访问通讯录。我非常不确定如何获得一个通用的数据结构来同步高效可靠。在 sqlite 数据库上工作是更好的选择,还是将 vCard 作为通用数据对象进行同步,或者将 android 数据转换为核心数据对象并在它们上同步更好?非常感谢提示和评论。也许我也想得太复杂了......

0 投票
1 回答
1472 浏览

android - Syncadapter 上次更新日期

AuthenticatorService

如何从同步适配器服务(标记为红色)中获取最后更新日期?

0 投票
1 回答
525 浏览

android - 如何在 android 中与 gdocs 和 gtask 同步?

我有一个简单的记事本和一个待办事项列表。我想通过网络将文本与记事本和 gdocs(谷歌文档)同步,并且还想将待办事项列表与 gtasks(谷歌任务)同步。我知道这是一个简单的任务,可以在一个注释中解释,但请帮助我提供一些示例、代码片段和链接,以帮助我朝着正确的方向开始。谢谢你。

0 投票
1 回答
2982 浏览

java - 在 Android ContentProvider 中从网络同步时防止网络同步循环

我正在编写自己的 ContentProvider,它将使用 SyncAdapter 同步到 Web 服务。

当同步适配器正在修改内容提供者的数据时会发生问题,提供者在内部调用 getContentResolver().notifyChange 时会触发网络同步,从而导致同步循环。

当客户端应用程序进行修改时需要带有网络同步标志的 notifyChange,但在同步适配器正在修改时应避免使用。

在 contentprovider 中,如何轻松判断它是由客户端应用程序(应在修改时触发网络同步)还是由同步适配器(不应触发网络同步)使用。

目前我正在使用不同的 CONTENT_URI(同步适配器使用 CONTENT_URI_NO_SYNC 访问数据,客户端应用程序使用 CONTENT_URI)能够区分这两种访问类型并相应地设置网络同步标志。

0 投票
2 回答
3693 浏览

android - 如何检索帐户的“上次同步”时间?

是否可以像系统 Settings->Accounts&Sync 应用程序那样检索帐户上次同步的时间?我使用的是安卓 2.2。

查看 2.2 的源代码AccountSyncSettings.java,我看到使用以下命令检索状态:

但 SyncStatusInfo 和 getSyncStatus 似乎不是公共 API 的一部分(标有 @hide)。还有其他方法可以获取此信息吗?

0 投票
1 回答
4856 浏览

android - 将 Android 联系人与服务器同步 - 同步算法

我想将我的 android 设备的联系人与服务器同步(单向同步:根据设备的联系人数据库更新服务器)。

我看过 SampleSyncAdapter 示例:http: //developer.android.com/resources/samples/SampleSyncAdapter/index.html

以及一个非常好的博客,用于理解拼图中的部分:http: //ericmiles.wordpress.com/2010/09/22/connecting-the-dots-with-android-syncadapter/

我知道同步逻辑本身应该在扩展 AbstractThreadedSyncAdapter 的类中覆盖 onPerformSync()。

但是,我无法找到同步算法的示例。例如,我如何只同步上一次同步的差异?我是否应该为最新同步的联系人保留缓存并将其与当前联系人数据库进行比较?

0 投票
0 回答
119 浏览

android - Android:摩托罗拉 XT720 交换账户问题

我在 Android Market 上发布了一个应用程序,可以将联系人保存到不同的帐户。这个应用程序允许用户选择一个帐户来保存联系人。但是很多摩托罗拉用户报告说 Exchange 帐户在可能的帐户列表中不可用。

这是我用来获取可以保存联系人的同步适配器的一段代码:

据我了解,摩托罗拉设备上的 Exchange 帐户违反了此代码中的某些条件。但我没有任何摩托罗拉设备来重现该问题。在我看来,摩托罗拉交易所SyncAdapterType.authority的价值可能与ContactsContract.AUTHORITY. 但这只是一个假设。这个问题的真正原因是什么?

0 投票
3 回答
3848 浏览

android - 如何正确使用 CALLER_IS_SYNCADAPTER

不知何故,我不明白查询参数 CALLER_IS_SYNCADAPTER 的工作概念。其默认值为 false,如果设置,则不会自动设置 DIRTY 标志。那么它实际上是什么意思呢?根据我的理解,对联系人的每次更改都会导致将脏标志设置为 1。在同步适配器完成作业后,使用带有 CALLER_IS_SYNCADAPTER 的插入/更新/删除,插入/更新和删除的记录的脏标志应该为 0 , 是对的吗?

但是,如果我使用该可选参数调用查询,则条目将保留标志 1。

我还有其他事情要做,还是我理解它应该如何工作?或者有什么东西可以告诉系统同步已成功完成以设置标志?

有人有样本或一些建议以供进一步阅读吗?

0 投票
1 回答
186 浏览

android - 同步客户经理帐户

我正在编写一个 android 应用程序,它将开始同步在“帐户和同步”设置下添加的所有帐户。我正在使用以下代码获取所有添加的帐户

获取帐户后,我想为每个帐户开始同步

我的问题是如何获取检索到的帐户的权限?

0 投票
2 回答
2016 浏览

android - Android SyncAdapter 陷入无限同步循环

我正在编写一个 Android Sync Adapter 并且基本上在无限循环中同步它时遇到问题。同步完成后,它将重新开始。

谢谢,

问候,

阿克谢