GcmTaskService 与 SyncAdapter
GcmTaskService vs SyncAdapter
我最近阅读了有关 GcmTaskService 和 GcmNetworkManager 来安排任务的信息。我的用例是典型的 SyncAdapter,我需要定期与我的服务器同步一些数据,我目前使用 SyncAdapter。
我的问题是 GcmTaskService 和 SyncAdapter 之间有什么区别。什么时候使用 GcmTaskService 什么时候使用 SyncAdapter?
GcmTaskService
:由客户端应用程序实现,为 GcmNetworkManager
提供端点以在任务准备好执行时回调。必须根据 window 的执行及时安排任务。在此执行期间 window,调度程序将根据网络可用性、网络 activity 和负载自行决定选择最佳执行时间。
Sync Adapter 完成服务器和本地数据库之间数据同步的工作。同步适配器 运行 是异步的,它们定期高效地传输数据,但不是即时的。如果您需要进行实时数据传输,您应该在 AsyncTask 或 IntentService 中进行。此框架有助于管理和自动化数据传输,并协调跨不同应用程序的同步操作。
Google 云消息传递 (GCM) 提供了使该消息传递系统正常工作所需的服务器和设备组件。使用 GCM 触发传输比轮询服务器状态更可靠、更高效。虽然轮询需要始终处于活动状态的服务,但 GCM 使用在消息到达时激活的 BroadcastReceiver。虽然即使没有更新可用,定期轮询也会使用电池电量,但 GCM 仅在需要时发送消息。
我最近阅读了有关 GcmTaskService 和 GcmNetworkManager 来安排任务的信息。我的用例是典型的 SyncAdapter,我需要定期与我的服务器同步一些数据,我目前使用 SyncAdapter。 我的问题是 GcmTaskService 和 SyncAdapter 之间有什么区别。什么时候使用 GcmTaskService 什么时候使用 SyncAdapter?
GcmTaskService
:由客户端应用程序实现,为 GcmNetworkManager
提供端点以在任务准备好执行时回调。必须根据 window 的执行及时安排任务。在此执行期间 window,调度程序将根据网络可用性、网络 activity 和负载自行决定选择最佳执行时间。
Sync Adapter 完成服务器和本地数据库之间数据同步的工作。同步适配器 运行 是异步的,它们定期高效地传输数据,但不是即时的。如果您需要进行实时数据传输,您应该在 AsyncTask 或 IntentService 中进行。此框架有助于管理和自动化数据传输,并协调跨不同应用程序的同步操作。
Google 云消息传递 (GCM) 提供了使该消息传递系统正常工作所需的服务器和设备组件。使用 GCM 触发传输比轮询服务器状态更可靠、更高效。虽然轮询需要始终处于活动状态的服务,但 GCM 使用在消息到达时激活的 BroadcastReceiver。虽然即使没有更新可用,定期轮询也会使用电池电量,但 GCM 仅在需要时发送消息。