我希望通过在收到通知时自动下载一些数据(大约10KB)来使我的应用程序更具响应性 . 我的两个选择(我认为)是:
-
尝试将我需要的所有信息打包到4k有效载荷限制中 - 这可能是可能的,但肯定不需要手工制作消息 .
-
发送应用程序会做出反应的通知,并在后台下载数据 .
如果它将是2,我可以这样做吗?当应用程序尚未在后台或前台运行时,是否可以完成?
对于某些更新,我想向用户显示通知 . 这可以在同一个通知中完成,还是需要推送另一个?
关于iOS的任何类似信息都非常赞赏,但对于回答这个问题并不是必不可少的!
2 回答
使用Google Cloud Messaging时,您将创建一个接收GCM推送通知的广播接收器 . 广播接收器可以单独处理通知或启动意图服务(这更适合从服务器下载数据的逻辑,因为它在单独的线程上运行,并且不会阻止主GUI线程) . 您可以通过相同的通知显示通知并从服务器下载数据 .
查看BroadcastReceiver,一旦注册,您就可以在活动中创建一个侦听器,一旦收到通知就会调用该侦听器 .