6

對於我們使用GCM的應用程序之一,我們一直在接收有關應用程序被終止時應用程序停止接收通知的報告。當應用程序再次啓動時,通知顯示爲正常。在應用程序處於停止狀態時接收Android GCM通知

經過調查,我們發現,這是由於這種變化在Android 3.1:

注意,系統將FLAG_EXCLUDE_STOPPED_PACKAGES到所有的廣播意圖。它可以防止來自後臺服務的廣播無意或不必要地啓動停止的應用程序組件。後臺服務或應用程序可以通過添加FLAG_INCLUDE_STOPPED_PACKAGES標誌來覆蓋應該允許激活停止的應用程序的廣播意圖來覆蓋此行爲。 (Android 3.1 changes

我檢查由GCM時,已經收到通知解僱的意圖,我注意到FLAG_EXCLUDE_STOPPED_PACKAGES確實設置。

這意味着所有在Android 3.1+上運行我們的應用的用戶在他們殺死他們的應用後都會停止接收通知,直到他們自己重新啓動它爲止。 (Pre-Android 3.1工作正常)。

由於意圖是由GCM框架本身觸發的,所以我們無法更改在其上設置的標誌,所以我們正在尋找另一種解決方法。

所有的想法表示讚賞。

+0

你說得對。我認爲通過設置菜單殺死應用程序,或使用任務殺手,或從最近的任務中刪除它都具有相同的效果,但事實並非如此。所以這根本不是問題。謝謝! – Mopper 2012-07-23 15:42:22

+0

你有沒有得到任何解決方案,我面臨同樣的問題 – Nargis 2013-07-26 06:17:19

回答

-3

你應該註冊來自menifist文件的gcm廣播接收器,這樣即使應用程序關閉,接收器也會收到通知。

+0

需要更多信息 – LMK 2015-04-09 13:59:34

相關問題