安卓同步适配器使用案例

18
我们目前在做什么?
我们的服务器上有一些结构化的文本数据,使用Web服务(RESTful)公开。 我的应用程序定期轮询此服务器(AlarmManagerService)以获取数据并将其保存到本地数据库(sqlite)。 另外,用户被预先验证和授权以获取访问权限。
问题:
1. SDK中有SyncAdapter / AccountManager类,我想知道它是否可以在我的应用程序中用于实现上面提到的同步? 2. 如果是这样,需要什么样的基础设施来支持使用该适配器进行同步设置? 链接到详细介绍如何使用该适配器和其他信息的文章等将是有益的。
1个回答

18

SyncAdapter/AccountManager对于你的用例非常有用。 Authenticator(在背后调用AccountManager)可以处理应用程序的身份验证。 SyncAdapter可以处理从服务器到本地数据存储的定期同步。您不必使用AlarmManager自己进行实现。有关使用SampleSycnAdapter / Authenticator的示例代码,请参见Android devguide中的SampleSyncAdapter

您的后端REST服务器将适合于SyncAdapter,无需进行太多更改。唯一的区别在于客户端,例如,您将不再在AlarmManager中调用服务器的获取数据方法,而是在扩展SyncAdapter类的onPerformSync()方法中调用它们。上面提到的示例代码将使其更加清晰。希望能对您有所帮助。


谢谢Megha!我会去看一下这个示例项目(看起来我需要下载2.2版本)。请确认我的理解:这基本上是一个旨在使两个参与方之间的同步活动变得容易的类吗? 我需要编写所有网络通信、XML解析、数据持久化逻辑,并应用SyncAdapter层来封装所有流程? - Samuh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接