我最近读到了关于GcmTaskService和GcmNetworkManager来安排任务的文章。我的用例是典型的SyncAdapter,我需要定期与服务器同步一些数据,我目前使用的是SyncAdapter。我的问题是GcmTaskService和SyncAdapter之间有什么区别。什么时候使用GcmTaskService和什么时候使用SyncAdapter?
发布于 2015-08-04 21:16:02
GcmTaskService:由客户端应用程序实现,以便为GcmNetworkManager提供一个端点,以便在任务准备执行时调用。任务必须基于时间执行窗口进行调度。在此执行窗口中,调度程序将根据网络可用性、网络活动和负载来选择最佳执行时间。
同步适配器负责同步服务器和本地数据库之间的数据。同步适配器异步运行,它们定期高效地传输数据,但不是瞬间传输。如果您需要进行实时数据传输,则应该在AsyncTask或IntentService中进行。该框架帮助管理和自动化数据传输,并协调不同应用程序之间的同步操作。
Google消息传递(Google,GCM)提供了使此消息传递系统工作所需的服务器和设备组件。使用GCM触发传输比轮询服务器状态更可靠,效率更高。轮询需要始终处于活动状态的服务,而GCM则使用消息到达时激活的BroadcastReceiver。定期轮询使用电池电源,即使没有更新,GCM只在需要时发送消息。
https://stackoverflow.com/questions/31782599
复制相似问题