【问题标题】:GCM push notifications on android 3.1 : disable broadcast receiverandroid 3.1 上的 GCM 推送通知:禁用广播接收器
【发布时间】:2012-09-06 14:53:49
【问题描述】:

android 3.1 上的 android 推送通知 (GCM) 存在问题:当我的应用程序关闭时 - 应该处理 GCM 推送消息 (Intents) 的广播接收器永远不会被调用。

在较低版本的 android 中一切正常。广播接收器总是被调用(即使应用程序关闭)。

我知道从 Android 3.1 开始有一个新概念:当应用程序未运行时,它处于“停止”状态: http://developer.android.com/about/versions/android-3.1.html#launchcontrols

因此,如果您想通过 Intent 启动“停止”应用程序 - 您应该将 FLAG_INCLUDE_STOPPED_PACKAGES 标志添加到 Intent。

但问题是我无法将 FLAG_INCLUDE_STOPPED_PACKAGES 标志添加到 GCM 意图,因为 GCM 意图(我的意思是“com.google.android.c2dm.intent.RECEIVE”和“com.google.android.c2dm.intent.REGISTRATION” ) 由操作系统抛出。

所以我的问题是:在应用程序(其中注册了广播接收器)关闭(处于“停止”状态)的情况下,我如何通过广播接收器处理来自 GCM 的推送消息(在 android 3.1 上)?

【问题讨论】:

    标签: android broadcastreceiver push google-cloud-messaging


    【解决方案1】:

    在应用程序(其中注册了广播接收器)关闭(处于“停止”状态)的情况下,我如何通过广播接收器处理来自 GCM 的推送消息(在 android 3.1 上)?

    你不能。如果用户强制停止您的应用程序,您的应用程序将不会再次运行(在 Android 3.1+ 上),除非手动调用,例如用户启动您的一项活动。您的目标是让用户没有理由强制停止您的应用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-28
      • 1970-01-01
      • 1970-01-01
      • 2013-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多