我正在开发一个使用Sync Adapter与服务器同步数据的应用。当服务器上的数据发生变化时,我通过GCM向各个用户的Android设备发送通知。我也使用这些notifications to trigger a sync。
如果用户点击通知,我希望我的应用显示相应数据的详细信息。为此,我需要在单击通知之前完成触发的同步,以便数据在本地可用。
我如何确保这一点?在触发的同步完成之前,我可以延迟显示通知吗?还是有另一种解决这个问题的方法吗?
我考虑过使用ContentObserver
或SyncStatusObserver
。前者要求我指定内容URI,如果我想等到所有内容同步,这是不可能的,而后者只能用于确定同步是挂起还是活动,但如果一个成功则不行。