我正在尝试为我的 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