问题标签 [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 回答
586 浏览

android - 在 Android 中,有没有办法阻止库存联系人应用程序在我的自定义同步适配器中编辑联系人?

我创建了一个自定义联系人同步适配器,以及一个用于编辑自定义联系人的联系人数据的应用程序。股票应用程序无论如何都无法编辑它们——它只允许编辑名称。我还将我的编辑器应用程序设置为具有 EDIT 意图,这样当用户尝试编辑联系人时,他们将可以选择使用哪个应用程序(当前是股票联系人应用程序或我的应用程序)。我希望发生的是,如果他们选择股票应用程序(他们不能真正编辑任何数据),他们应该得到一个错误,这些联系人必须使用我的自定义应用程序进行编辑。

或者更好的是,如果可能的话,如果他们尝试编辑其中一个 custm syched 联系人,它甚至不应该让他们选择在股票应用程序(或任何其他应用程序)中执行此操作。他们可以直接进入我的联系人编辑器应用程序而不被提示选择应用程序吗?任何其他联系人都可以使用股票应用程序打开。

谢谢

0 投票
1 回答
1373 浏览

android - 用于编辑联系人的蜂窝同步适配器功能

我正在开发一个同步适配器。我发现了这个:http ://groups.google.com/group/android-developers/msg/85f9304dfcc4e284

在那个论坛上,一位谷歌员工说:

在从 Eclair 到 Gingerbread 的 Android 版本中,对第三方联系人的集成编辑支持很差。诀窍是插入一个数据行“在 MyApp 中编辑”,这会将用户带到您的应用程序,然后您的应用程序将提供一个编辑器活动。此外,联系人 UI 中没有提供在 3rd 方帐户中创建新联系人的规定。我们已经在 Honeycomb 中修复了这些问题。现在您可以在元数据 xml 文件中指定两项活动:一项用于创建新联系人,一项用于编辑现有联系人,瞧!- 你有无缝集成。

我找不到这些新功能的文档。谁能告诉我在哪里可以找到它?

谢谢

0 投票
2 回答
2925 浏览

android - 打开一个活动来编辑同步适配器中的联系人

在 Android SampleSyncAdapter 中有以下代码:

我将此添加为我的活动的过滤器

其中 SampleSyncAdapterColumns.MIME_PROFILE = vnd.android.cursor.item/vnd.myapp.profile

我添加了一个联系人,我可以看到该条目,但是当我点击它时没有任何反应。当用户点击一个活动时,我应该怎么做?我正在尝试为 Pre-honeycomb 设备 执行此处建议的操作:诀窍是插入一个数据行“在 MyApp 中编辑”,这会将用户带到您的应用程序,然后您的应用程序将提供一个编辑器活动

0 投票
1 回答
174 浏览

android - Syncadapter 是否在手机的睡眠模式下被调用?

我想知道即使手机处于睡眠模式,是否会调用 Android 中的同步适配器。

0 投票
1 回答
4816 浏览

android - Android SyncAdapter 服务器端实现

我已经阅读了很多关于 Sync Adapter 的教程,例如http://www.c99.org/2010/01/23/writing-an-android-sync-provider-part-1上的教程以及 SampleSyncAdapter 示例Android 开发者网站上的代码。但我不明白服务器端如何处理身份验证和同步查询。我可以使用 php 从 mySQL 服务器数据库进行查询吗?

0 投票
1 回答
233 浏览

android - 在 android 上添加新帐户限制了联系人字段的数量

运行 SampleSyncAdapter 后,成功创建了一个新帐户,并且我能够将我的联系人与服务器同步,但是当我添加一个新联系人时,它只显示了两个字段,即名字和姓氏。所有其他字段都被隐藏了。我必须在代码中进行哪些更改才能启用这些字段?

0 投票
1 回答
318 浏览

android - 公共域信息的一种方式 Android SyncAdapter

我正在努力将 YouTube 频道添加到我的 Android 应用程序中,但我很难弄清楚如何去做。我目前正在通过查看 Android“SampleSyncAdapter”示例来了解 SyncAdapters。

我希望 SyncAdapter 使用 YouTube 元数据和缩略图更新我的应用程序数据库,以便我可以在 ListView 中显示它。由于视频是公共领域,因此无需对用户进行身份验证或让他们注册同步。无需将观看者的信息反馈给 YouTube。我只是希望我的应用只显示我的频道的视频,而不是其他频道的视频。SyncAdapter 的工作是定期将新视频加载到数据库中,可能每天一次。

我运行了“SampleSyncAdapter”,但它似乎让用户使用用户名和密码进行注册。即使在我卸载它之后,它似乎也破坏了我添加联系人的能力。

强迫用户注册以获取视频是不可接受的。当用户第一次安装应用程序时,视频应该在那里,不需要任何额外的步骤。

谁能告诉我使用“SyncAdapter”是否是个好主意?

0 投票
1 回答
1902 浏览

android - 如何将类别添加到我的 SyncAdapter

我已经尝试过很棒的 Google 示例来同步来自网络服务的联系人,并且效果很好。这被称为 SampleSyncAdapter,非常值得:http: //developer.android.com/resources/samples/SampleSyncAdapter/index.html

我成功了一切,但我在示例和文档中都找不到添加链接到自定义活动的类别的方法,就像下面的屏幕截图一样:

(我只有带有复选框的同步帐户选项)

在此处输入图像描述

所以,我的问题是:如何添加帐户设置类别?

0 投票
2 回答
6650 浏览

android - 什么是 Android SyncAdapter contentAuthority 和 accountType?

我正在创建一个自定义 Android SyncAdapter,并在 SDK 示例“SampleSyncAdapter”之后遇到了问题。- 我正在创建我的xml/syncadapter.xml. 这是我感到困惑的部分:

AbstractThreadedSyncAdapter的文档指出:

和属性指示此同步适配器服务于哪个内容授权和帐户类型android:contentAuthorityandroid:accountType

该文档是循环的,因为它没有说明名称尚未告诉您的内容。我的印象是两者都将以我公司的名称开头,com.acme.但从那里我一无所知。我怀疑字符串可以是任何东西,只要它们是全局唯一的,以免与同一设备上的任何其他应用程序冲突。我认为这意味着我需要在代码的其他地方使用这些确切的字符串。但是,我想知道,我将在哪里需要这些字符串?!我尝试 grep forcom.android.contacts并且前面提到的文件是唯一使用它的地方,我可以找到。因此,无法contentAuthority通过查看示例来判断它是如何使用的。
如果是这样,我可以将它们都放在字符串资源中并在需要的地方通过资源 ID 引用它们吗?这些属性究竟是什么以及它们是如何使用的?有没有更好的方法来确定我应该为自己的这些和其他领域的应用程序选择什么值?

0 投票
2 回答
5079 浏览

android - 没有帐户的 SyncAdapter

我正在尝试为我的 Android 应用创建一个 SyncAdapter,以显示来自一个特定频道的 YouTube 视频。这些视频是公共领域的,所以我不希望用户登录、创建帐户、验证自己、上传数据或使用联系人数据库。我只是希望 SyncAdapter 定期使用来自该频道的最新视频元数据更新我的应用程序的数据库。我已经构建了一个 ContentProvider 来访问我的数据库。我确实喜欢 SyncProvider 将处理关闭同步、调度和重试更新退避机制的能力这一事实。

我之前问过 SyncAdapter 是否适合我的用例,我被告知它是。我观看了 Google I/O 视频,阅读了文档,阅读了博客……(参见下面的列表)。我一直无法得到任何工作。我得到的最好的结果是让 SyncAdapter 帐户出现在全局“帐户和同步设置”中,但不能正常工作。即使这可行,它也不太理想,因为我希望用户除了从我的应用程序内部之外看不到该帐户。如果没有其他选项,这将是可以接受的,只要他们不需要访问它来设置它,因为一切都会默认为每天自动同步一次。

我什至尝试按原样使用 SampleSyncAdapter 并将断点放在身份验证代码部分中。没有命中一个断点,所以我看不到触发调用的内容或包含的数据。我原以为我至少会得到那么多。

尽管有建议,但我开始认为使用 SyncAdapter 是个坏主意。我还没有找到一个接近我想要的示例,更不用说教程或完整、有条理和清晰的文档了。这似乎应该是许多应用程序想要做的常见任务。

请在这篇文章中添加关于这个用例的任何好的文档。我一个也找不到。
如果没有这个,我认为向大家推荐不要在这个用例中使用 SyncAdapters 是公平的。我在这里不是在谈论其他用例,所以如果它不像我的用例,请不要继续讨论它是如何为您的用例工作的。

了解什么版本的 API 级别被认为已准备好迎接黄金时段也很有帮助。发布了许多关于版本号的问题。我试图保持尽可能低的水平以获得最多的用户。我当前的 API 目标是 7。

这是我尝试无济于事的链接列表,其他人可能会发现这些更有帮助:

http://developer.android.com/resources/samples/SampleSyncAdapter/index.html

http://www.google.com/events/io/2010/sessions/developing-RESTful-android-apps.html

http://naked-code.blogspot.com/2011/05/revenge-of-syncadapter-synchronizing.html

http://www.c99.org/2010/01/23/writing-an-android-sync-provider-part-1/

http://www.c99.org/2010/01/23/writing-an-android-sync-provider-part-2/

http://www.finalconcept.com.au/article/view/android-account-manager-step-by-step

http://www.finalconcept.com.au/article/view/android-account-manager-step-by-step-1

http://www.finalconcept.com.au/article/view/android-account-manager-step-by-step-2

没有身份验证的 Android SyncAdapter 与 Android 服务

为什么 ContentResolver.requestSync 不触发同步?