首页 > 代码库 > 使用同步适配器(sync adapter)传输数据

使用同步适配器(sync adapter)传输数据

在android设备与web服务器之间实现数据同步能显著提高你的应用的实用性,让你的应用更受用户的欢迎。比如说,你的数据上传给web服务器,这就有了一个实用的备份。当用户的设备离线工作时,这时从服务器下载输数据是很有用的。有些情况下,用户可能会觉得通过网页的同步接口来输入或编辑数据更方便,因为这些数据很快就从同页上同步过来了,他们也可能想在一段时间内采集数据然后再将数据上传到中央存储区。

尽管你可以自己为你的应用设计一套数据传输系统, 你仍应该考虑使用Android的Sync adapter framework(m同步适配器框架)。这个框架能帮你自动管理数据传输以及多个不同应用之间的相应的同步操作。借助这个框架,你可以使用以下几个功能,而这些功能不适用于你自己设计的数据传输方案。

插件结构
允许你以可调用控件的形式来向系统添加数据传输代码。

自动化操作
允许你基于大量的标准之上进行数据自动传输,其中包括数据修改,运行时间以及当天的时间。另外,你可在系统里添加数据传输代码,这些代码无法在队列里运行。当需要的时候,它们就会被运行。

网络自动检查
当你的设备有网络连接时,系统才会传输数据。

提高电池性能
你可以在一个位置来集成管控你所有应用的数据传输任务,保证了它们都在同一时间被执行。同样,你应用的数据传输和其它应用的数据传输也被限定连在一起了。这些特性能够减少你的系统在网络上切换的次数,也就减少了电池的消耗。

帐户的管理和认证
如你的应用有需要用户的证书或服务器的登录,你可以很随意将帐户的管理和认证集成到你的数据传输中。

这个类展示了如何创建一个同步适配器和bound service,其中bound service 包裹着适配器。如何提供一些组件能够帮助你将sync adapter 集成到框架里,如何用各种方式运行同步适配器(sync adapter)。

注意:同步适配器可以异步工作。所以使用前你要先知道它们是定期而有效地传输数据,而不是即时地。如果你需要即时传输数据,应该在AsyncTask或IntetentService里操作。

教程
创建一个根认证器
学习如何添加一个帐户处理组件,满足同步适配器的需要,成为你app的一部分。这个教程会向你展示怎样简单地创建一个根验证器。

创建根Content provider
学习如何添加一个content provider, 满足同步适配器的需要,成为你app的一部分。这节教程假设你的应用没有使用content provider, 这里会你演示怎么创建这个根组件。如果你的应用已经使用了content provider, 请忽略这部分。

创建同步适配器(sync adapter)
学习如何将你的数据传输代码封装到你的组件,使同步适配器框架(sync adapter framework)可以自动运行。

运行同步适配器(sync adapter)
学习如何使用同步适配器框架(sync adapter framewrok)来触发和安排你的数据传输。

使用同步适配器(sync adapter)传输数据