我正在使用GCM向我的Android应用程序发送推送通知,当用户点击通知时,应将它们带到应用程序中的指定视图(对于上下文:这是一个事件日志)。
我理解,在最简单的情况下,我只是在启动应用程序的意图中添加一些参数。
但是,我的应用程序在输入MainActivity时需要一些远程数据。正常启动应用程序时,它指向另一个活动,我们称之为AppStartActivity。它在下载必要数据时显示启动画面,并在准备就绪时启动MainActivity。
从通知启动应用程序时,必要的数据可能已准备好,也可能未准备好,具体取决于应用程序当前是否处于后台(如果尚未进行垃圾回收)。因此,我认为我必须在单击通知时启动AppStartActivity,然后以某种方式转发Intent参数,我不确定它是否正确。我已经就此提出了一些问题:
我很感谢有关此事的任何意见。如果我遗漏了一些细节,请告诉我。
答案 0 :(得分:1)
据我了解,我有类似的情况,这是我的解决方案:
当我收到GCM时,我的onReceive方法启动了一项服务 获取远程数据。只有当这些数据是 在本地内容提供商中,我将通知发送给用户。
[编辑] 您必须通过一些通知来管理任何网络错误,否则您可能会丢失GCM通知