Toubleshooting Guide for GCM Wake-up

Search This thread

oasisfeng

Senior Member
Dec 9, 2011
1,357
6,962
GCM wake-up is considered to be one of the most unreliable feature among the experimental features, thus still stuck as donation-only.
There're many factors behind a working GCM push, and trouble with either may lead to the failure of the whole expectation.

Let's discuss the common misunderstandings first.

1. The GCM indicator in App Analyzer does not necessarily mean the app uses GCM for the very notification feature you are expecting.

The GCM indicator only means GCM-related code is in that app's package. But the app may use GCM only for some of its notifications, or only in some criterias, or even the worse, does not use at all. To find out the actual usage of GCM within an app, read the trouble shooting instructions below.

2. Not all notifications are backed by GCM push.

Most instant messaging apps and some social apps use hybrid implementation with GCM and persistent connection (in a background service) to deliver more reliable instant notification, than relying on GCM only. In this case, some of the notifications you have received may not even come from a GCM push.
Hiberated apps lose its background service and thus fall-back to a GCM-only solution, effectively reducing the reliability of notification. If you noticed obvious delay or loss of some notifications after greenifying, it's probably the case.

3. The latency of GCM is affected by many factors, most notably how your carrier restrict the persistent connection.

The foundation implementation of GCM itself is also a persistent connection to Google's server. That means if your devices failed to keep this persistent connection, the latency of GCM is out of control. Carriers all over the world do restrict persistent connection to preserve their limited capability of signalling resources (not the bandwidth), by dropping connections idle for a while. GCM use periodic heartbeat packets to keep the persistent connection, but the default interval of 28 minutes for mobile network is far beyond the connection dropping threshold of some carriers (varying from minutes to hours), causing the persistent connection to drop frequently. As a result, GCM push may delay in minutes, or even half an hour. There's also a few carriers in the world even block the connections to Google's server in most time(China for example), causing GCM totally out of work.

To reduce latency caused by carrier restriction on persistent connection, try "Push Notification Fixer".

Now if you believe your app failed to wake up by a GCM push, follow these instructions to find the cause:

1. Open and monitor the logcat (Android log system), either on a USB-connected computer, or on your device with tool app like CatLog.

2. Set the filter to only include keyword (or tag) "GCM".

3. Let's trigger an expected GCM push (by sending an instant message from another device or so). You will soon read a line like this in logcat upon the arrival of GCM push:
Code:
I/GCM﹕ GCM message com.joaomgcd.autoremote 0:1426418730738334%0#02db4288f9fd7ecd
This means Google Play services received the GCM message from Google's server and ready to deliver it to the corresponding app (indicated by the package name in the line, com.joaomgcd.autoremote in the example). If you cannot find this line in a reasonable time span, then it may be that app which lose the registion to GCM. Try logout and login your account, or clear the data of the app, or even uninstall and re-install it to restore its registration to GCM.

In all good situation, you should now receive the notification. If not, read on.

4. If the target app is hibernated before the arrive of GCM push and you have activated "GCM Wake-up" feature, then open Greenify ASAP (since it may hibernate again in a few minutes).

You will probably find that app is awake and listed in the "WILL HIBERNATE..." section. In this case, Greenify had managed to wake up the hibernated app and deliver the GCM message to it, but that app may failed to process it correctly and show a notification. This does happen to some apps which can't deal with GCM message upon wake-up. Try trigger another GCM push manually, if the notification shows up this time, that app falls into this category. It's hard to blame the developers for that, since they may not prepare for the arrival of GCM push when their background service is not running. So I'm still trying to figure out a better solution to make "GCM Wake-up" compatible with these apps.

5. If the app still stays hibernated, then the wake-up attempt might fail.

Back to the logcat, you probably read another line like this:
Code:
W/GCM-DMM﹕ broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE pkg=com.joaomgcd.autoremote (has extras) }
It means the push is not delivered successfully. If you did activated "GCM Wake-up" but still read this line, then it may be Greenify's fault, except if you have disabled the notification of that app in system Settings - Apps - That App - Show notifications (unticked). Greenify checks this setting before trying to wake-up an app to deliver GCM push.

Note: As a reference, try "AutoRemoteLite" with its web interface to trigger GCM push.
 
Last edited:

oasisfeng

Senior Member
Dec 9, 2011
1,357
6,962
Please report your finding in this thread with the detailed information:

Device model
ROM
Android version
Working mode of Greenify (Root or Boost)
Is "Deep Hibernation" also enabled.

and I'll try my best to help analyzing the issues.
 
Last edited:

v7

Retired Forum Moderator / Inactive RC
May 17, 2014
7,958
8,411
Arkham
Device:Xperia ZR C5502
ROM:CM12 UNOFFICIAL by @xenius9 Link:https://yadi.sk/d/dTadZHj_fCZKN
Greenify Donation Version 2.6 beta 6
Boost Mode
Deep Hibernation enabled.
Logs attached

Tapped from my furious ZR ;)
 

Attachments

  • 2015-03-16-17-54-42.txt
    11.7 KB · Views: 252
Last edited:
  • Like
Reactions: infatality

xda_emanuel

Senior Member
Mar 23, 2012
437
133
Just tried that app Catlog with facebook and facebook messenger which are the only 2 apps i've in hybernation except for google plus which i turned off notification. Sooo.... When those apps are not greenified the gcm stuff seems to be received property... I can see also the gcm received in the google play service stuff for the heartbeat. But when those apps are greenified i don't received nothing about facebook.. no gcm and no notification till i open again the app. Thats weird i think, its like the app is on a strong deep sleep also because when i tried to send a message in facebook from my another account with catlog open and the Word Gcm in the search option, seems that theres no gcm received from that app till obliviosly i open them. I don't know but i remember when i was on kitkat they work fine. Anyway my configuration is

Android 5.0.2
Nexus 4
Last beta 5
Rom : purity
Deep hibernation disabled
Boost mode with xposed alpha 2 and gcm notification enabled. and also keep notifications enabled.
 
Last edited:

davtse

Senior Member
Jan 17, 2009
2,646
2,271
Just tried that app Catlog with facebook and facebook messenger which are the only 2 apps i've in hybernation except for google plus which i turned off notification. Sooo.... When those apps are not greenified the gcm stuff seems to be received property... I can see also the gcm received in the google play service stuff for the heartbeat. But when those apps are greenified i don't received nothing about facebook.. no gcm and no notification till i open again the app. Thats weird i think, its like the app is on a strong deep sleep also because when i tried to send a message in facebook from my another account with catlog open and the Word Gcm in the search option, seems that theres no gcm received from that app till obliviosly i open them. I don't know but i remember when i was on kitkat they work fine. Anyway my configuration is

Android 5.0.2
Nexus 4
Last beta 5
Rom : purity
Deep hibernation disabled
Boost mode with xposed alpha 2 and gcm notification enabled. and also keep notifications enabled.

Facebook has changed something in the two apps recently. It used to be working fine. Now I just use facebook lite since it works well with greenify and gives me push notifications.
 

xda_emanuel

Senior Member
Mar 23, 2012
437
133
Facebook has changed something in the two apps recently. It used to be working fine. Now I just use facebook lite since it works well with greenify and gives me push notifications.
Just installed facebook lite to try what u said.. Gcm still doesnt work if the app is greenifyed

EDIT
I found on a thread the messenger1.0.1 apk and with greenify now my push notifications are working fine.
 
Last edited:

oasisfeng

Senior Member
Dec 9, 2011
1,357
6,962
GCM wake-up is expected to be improved in the latest beta 6 (being rolled out), with a new warm-up and re-delivery mechanism.

Test feedback is welcome~ :)
 

tryfos

Member
Jul 23, 2014
46
3
Just installed facebook lite to try what u said.. Gcm still doesnt work if the app is greenifyed

EDIT
I found on a thread the messenger1.0.1 apk and with greenify now my push notifications are working fine.

It's as simple as that for me: When fb and messenger are not greenified, push notifications come through perfectly. When they are, gcm for both these applications does not work. So I do not have to check something with the use of this guide, because it's obvious that Greenify stops the notifications. Whatsapp works flawlessly for me, even when greenified.
It's also obvious for me that both these apps changed something in the past 3-4 versions (for fb) that broke the gcm when greenified. It worked in the past for me. But Greenify did not keep up :(
Greenify devs please fix that bug!
I'm on Sony SP, stock 4.3, rooted, boost mode (also tried rooted mode), greenify 2.5.2, messenger 23.0.0.20.13, fb 29.0.0.23.13
 
Last edited:

robert1337

Senior Member
Jan 8, 2015
175
31
is it kernel or rom related?

my whatsapp push gcm worked perfectly on my galaxy s4 (stock kernel)

now it doesnt work on my note 2 with agni kernel (i changed phone because of overheating problems)

could it be because i am on 4.4.4 (i had 4.4.2 on s4) or rom or kernel?
if i degreenifiy whatsapp can receive gcm push normally though.

any expert can help me?

thanks in advance :)
 

v7

Retired Forum Moderator / Inactive RC
May 17, 2014
7,958
8,411
Arkham
my whatsapp push gcm worked perfectly on my galaxy s4 (stock kernel)

now it doesnt work on my note 2 with agni kernel (i changed phone because of overheating problems)

could it be because i am on 4.4.4 (i had 4.4.2 on s4) or rom or kernel?
if i degreenifiy whatsapp can receive gcm push normally though.

any expert can help me?

thanks in advance :)

Do you get notified for other apps?
If its a whatsapp only problem,clear data for whatsapp or reinstall it.That solved the issue for me.

Tapped from my furious ZR ;)
 

Ijt5

Member
May 24, 2013
9
0
Whatsapp & Facebook App

Hi, I just tested both Whatsapp and Facebook app works in Greenify beta version.
 

Javi22

Senior Member
Feb 26, 2011
2,041
188
Madrid
Do you think the Google now remainders are gcm push?
Im not sure, because it is not some information that arrives to the device, it is just some remainder set from the app itlself

However, it doesnt work when greenify....Actually, I have noticed, remainders wont arrive If phone is not connected to internet
 

sptrheru

New member
Sep 22, 2010
4
0
Hello, i have 'strange' gcm wake up problem. My device in GT i9100 running on 4.1.2.
The problem is greenify did not wake up my application (BBM and whatsapp) after i sent message using other device (in first boot).
but strangely, gcm wake up working after i installed any application (in this case after i installed CatLog / Clean Master).

P.S i dont greenified any system app, and GcmService running from booting.

please help me solve this problem.
thanks
 
Last edited:

gggg

Senior Member
Jun 18, 2012
374
26
Greenify Donate v2.7 beta 5 - whatsapp missing notification

I'll try my best to help analyzing the issues.
THX for Greenify, hope you can help:

Device model: SM-A500FU
ROM: Stock A500FUXXU1AOB4_A500FUOXA1AOB1_A500FUXXU1AOB4
Android version 4.4.4
Working mode of Greenify ROOT
Is "Deep Hibernation" also enabled.: NO, all other experimental options are ON:

18:28 After trying some Whatsapp messages that went OK, I put it to zzzz.
18:32:02 Llama(app) disabled DataConnection
Then I sent another message to my device
18:35:08 - 18:36:08 Llama enabled data for 1 minute
no data for 5 minutes
18:41:08 - 18:42:08 Llama enabled data for 1 minute

Logcat filtered for whatsapp
Code:
I/18:35:10.609 Hyber   ( 1405)
com.whatsapp hibernated
D/18:35:10.359 KeepN   (  826)
Prevent notification from removal when com.whatsapp is restarted
I/18:35:10.329 ActivityManager(  826)
Killing 7729:com.whatsapp/u0a241 (adj 5): stop com.whatsapp
V/18:35:10.329 ApplicationPolicy(  826)
isApplicationStateBlocked userId 0 pkgname com.whatsapp
I/18:35:09.589 Cleaner ( 1405)
Performing hibernation: [com.whatsapp]
I/18:32:12.874 PowerManagerService(  826)
[PWL]       PARTIAL_WAKE_LOCK              'wake:com.whatsapp/.AlarmService' (uid=10241, pid=7729, ws=null) (elapsedTime=2799)
W/18:32:10.124 Finsky  ( 3522)
[347] InAppBillingUtils.getPreferredAccount: com.whatsapp: No account found.
I/18:32:09.824 dalvikvm( 7729)
Could not find method android.net.ConnectivityManager.getAllNetworks, referenced from method com.whatsapp.a0n.a
I/18:32:09.264 WhatsApp( 7729)
LL_I M [1:main]WhatsAppLibLoader.java:45 isLibraryUsable: True
I/18:32:09.264 WhatsApp( 7729)
LL_I M [1:main]WhatsAppLibLoader.java:50 jniVersion: 2.12.210
I/18:32:09.264 WhatsApp( 7729)
LL_I M [1:main]WhatsAppLibLoader.java:28 native library usability testing complete
I/18:32:09.254 WhatsApp( 7729)
LL_I M [1:main]WhatsAppLibLoader.java:28 native library usability testing in progress
D/18:32:09.254 dalvikvm( 7729)
No JNI_OnLoad found in /data/app-lib/com.whatsapp-2/libcurve25519.so 0x42a79198, skipping init
D/18:32:09.254 dalvikvm( 7729)
Added shared lib /data/app-lib/com.whatsapp-2/libcurve25519.so 0x42a79198
D/18:32:09.254 dalvikvm( 7729)
Trying to load lib /data/app-lib/com.whatsapp-2/libcurve25519.so 0x42a79198
I/18:32:09.254 WhatsApp( 7729)
LL_I M [1:main]Runtime.java:421 18:32:09.263      wa_opus.c  pjmedia_codec_opus_init success
I/18:32:09.254 WhatsApp( 7729)
LL_I M [1:main]Runtime.java:421 18:32:09.262      wa_opus.c  pjmedia_codec_opus_init start
I/18:32:09.254 WhatsApp( 7729)
LL_I M [1:main]Runtime.java:421 18:32:09.261          pjlib  select() I/O Queue created (0x78b5645c)
I/18:32:09.254 WhatsApp( 7729)
LL_I M [1:main]Runtime.java:421 18:32:09.260 wa_audio_dev.c !WA Audio sound library initialized
I/18:32:09.244 WhatsApp( 7729)
LL_I M [1:main]Runtime.java:421 18:32:09.257 os_core_unix.c !pjlib 2.2.1 for POSIX initialized
D/18:32:09.244 dalvikvm( 7729)
Added shared lib /data/app-lib/com.whatsapp-2/libwhatsapp.so 0x42a79198
D/18:32:09.244 dalvikvm( 7729)
Trying to load lib /data/app-lib/com.whatsapp-2/libwhatsapp.so 0x42a79198
D/18:32:09.244 dalvikvm( 7729)
No JNI_OnLoad found in /data/app-lib/com.whatsapp-2/libresample.so 0x42a79198, skipping init
D/18:32:09.244 dalvikvm( 7729)
Added shared lib /data/app-lib/com.whatsapp-2/libresample.so 0x42a79198
D/18:32:09.244 dalvikvm( 7729)
Trying to load lib /data/app-lib/com.whatsapp-2/libresample.so 0x42a79198
D/18:32:09.234 dalvikvm( 7729)
No JNI_OnLoad found in /data/app-lib/com.whatsapp-2/libvlc.so 0x42a79198, skipping init
D/18:32:09.234 dalvikvm( 7729)
Added shared lib /data/app-lib/com.whatsapp-2/libvlc.so 0x42a79198
D/18:32:09.234 dalvikvm( 7729)
Trying to load lib /data/app-lib/com.whatsapp-2/libvlc.so 0x42a79198
D/18:32:09.224 Event   ( 7729)
No subscribers registered for event class com.whatsapp.wt
I/18:32:09.194 dalvikvm( 7729)
Could not find method android.os.PowerManager.isPowerSaveMode, referenced from method com.whatsapp.BatteryReceiver.a
I/18:32:09.194 WhatsApp( 7729)
LL_I D [1:main]App.java:144 ntp update processed; device time: Wed Aug 19 18:32:09 MESZ 2015 ntp time: Wed Aug 19 18:32:09 MESZ 2015
D/18:32:09.164 dalvikvm( 7729)
DexOpt: unable to opt direct call 0x73f4 at 0x44 in Lcom/whatsapp/q_;.a
W/18:32:09.164 dalvikvm( 7729)
Link of class 'Lcom/whatsapp/adm/ADMMessageHandler;' failed
W/18:32:09.164 dalvikvm( 7729)
Unable to resolve superclass of Lcom/whatsapp/adm/ADMMessageHandler; (1433)
D/18:32:09.164 dalvikvm( 7729)
DexOpt: unable to opt direct call 0x73f4 at 0x2b in Lcom/whatsapp/q_;.a
W/18:32:09.164 dalvikvm( 7729)
Link of class 'Lcom/whatsapp/adm/ADMMessageHandler;' failed
W/18:32:09.164 dalvikvm( 7729)
Unable to resolve superclass of Lcom/whatsapp/adm/ADMMessageHandler; (1433)
W/18:32:09.164 dalvikvm( 7729)
VFY: unable to resolve new-instance 3612 (Lcom/whatsapp/adm/ADMMessageHandler;) in Lcom/whatsapp/q_;
E/18:32:09.164 dalvikvm( 7729)
Could not find class 'com.whatsapp.adm.ADMMessageHandler', referenced from method com.whatsapp.q_.a
W/18:32:09.164 dalvikvm( 7729)
Link of class 'Lcom/whatsapp/adm/ADMMessageHandler;' failed
W/18:32:09.164 dalvikvm( 7729)
Unable to resolve superclass of Lcom/whatsapp/adm/ADMMessageHandler; (1433)
W/18:32:09.164 dalvikvm( 7729)
VFY: unable to resolve new-instance 3612 (Lcom/whatsapp/adm/ADMMessageHandler;) in Lcom/whatsapp/q_;
E/18:32:09.164 dalvikvm( 7729)
Could not find class 'com.whatsapp.adm.ADMMessageHandler', referenced from method com.whatsapp.q_.a
W/18:32:09.164 dalvikvm( 7729)
Link of class 'Lcom/whatsapp/adm/ADMMessageHandler;' failed
W/18:32:09.164 dalvikvm( 7729)
Unable to resolve superclass of Lcom/whatsapp/adm/ADMMessageHandler; (1433)
D/18:32:09.084 dalvikvm( 7729)
DexOpt: unable to opt direct call 0x2866 at 0x14 in Lcom/whatsapp/App;.a
D/18:32:09.084 dalvikvm( 7729)
DexOpt: unable to opt direct call 0x2866 at 0x04 in Lcom/whatsapp/App;.Q
W/18:32:09.024 dalvikvm( 7729)
VFY: unable to resolve new-instance 1432 (Lcom/amazon/device/messaging/ADM;) in Lcom/whatsapp/App;
E/18:32:09.024 dalvikvm( 7729)
Could not find class 'com.amazon.device.messaging.ADM', referenced from method com.whatsapp.App.a
W/18:32:08.994 dalvikvm( 7729)
VFY: unable to resolve new-instance 1432 (Lcom/amazon/device/messaging/ADM;) in Lcom/whatsapp/App;
E/18:32:08.994 dalvikvm( 7729)
Could not find class 'com.amazon.device.messaging.ADM', referenced from method com.whatsapp.App.Q
W/18:32:08.844 XPrivacy( 7729)
Hooking package=com.whatsapp
I/18:32:08.824 Cleaner ( 1405)
Schedule hibernation in 180s : [com.whatsapp]
D/18:32:08.784 MPSharedPrefs( 1405)
com.whatsapp changed in shared preferences app_states, broadcast this change to other processes.
E/18:32:08.774 GoogleTagManager( 1405)
Invalid macro: analytics.disabled.categorized.action.Waker.NoMatch.broadcast.com.whatsapp/.c2dm.C2DMBroadcastReceiver
D/18:32:08.774 Analytics( 1405)
Event [Category=Waker.NoMatch.broadcast, Action=com.whatsapp/.c2dm.C2DMBroadcastReceiver, Label=0,7729,10241,com.whatsapp,broadcast,com.whatsapp/.c2dm.C2DMBroadcastReceiver, Value=0
E/18:32:08.764 dalvikvm( 7729)
>>>>> com.whatsapp [ userId:0 | appId:10241 ]
I/18:32:08.644 GCM     (  826)
Awakening GCM message to com.whatsapp
I/18:32:08.594 GCM     ( 1337)
GCM message com.whatsapp 0:1440001926811845%a3bffb5f00000031
I/18:28:12.495 Hyber   ( 1405)
com.whatsapp hibernated
D/18:28:12.215 KeepN   (  826)
Prevent notification from removal when com.whatsapp is restarted
I/18:28:12.185 ActivityManager(  826)
Killing 6904:com.whatsapp/u0a241 (adj 5): stop com.whatsapp
V/18:28:12.185 ApplicationPolicy(  826)
isApplicationStateBlocked userId 0 pkgname com.whatsapp
V/18:28:02.595 PhoneStatusBar( 1045)
NOTIFICATION_PACKAGE_NAME = com.whatsappNOTIFICATION_ID = 1
D/18:23:40.965 BadgeProvider( 6331)
update, [BadgeCount] : package=com.whatsapp class=com.whatsapp.Main badgecount=26
D/18:21:48.385 BadgeProvider( 6331)
update, [BadgeCount] : package=com.whatsapp class=com.whatsapp.Main badgecount=25
D/18:20:00.325 BadgeProvider( 6331)
update, [BadgeCount] : package=com.whatsapp class=com.whatsapp.Main badgecount=24
V/18:17:36.175 android_tuner( 6781)
Process com.whatsapp UID 10241
D/18:16:49.455 BadgeProvider( 6331)
update, [BadgeCount] : package=com.whatsapp class=com.whatsapp.Main badgecount=23
I/18:16:48.795 ActivityManager(  826)
Waited long enough for: ServiceRecord{43e21fa8 u0 com.whatsapp/.AlarmService}

When I opened Greenify, whatsapp was still sleeping. After opening whatsapp the message was delivered.
 

Attachments

  • Screenshot_2015-08-19-18-46-39.png
    Screenshot_2015-08-19-18-46-39.png
    239.3 KB · Views: 288
  • Screenshot_2015-08-19-18-46-58.png
    Screenshot_2015-08-19-18-46-58.png
    253.1 KB · Views: 290
  • Screenshot_2015-08-19-18-47-42.png
    Screenshot_2015-08-19-18-47-42.png
    247.3 KB · Views: 278
  • Screenshot_2015-08-19-18-47-53.png
    Screenshot_2015-08-19-18-47-53.png
    255.3 KB · Views: 250
  • Screenshot_2015-08-19-18-48-05.png
    Screenshot_2015-08-19-18-48-05.png
    254.5 KB · Views: 223
  • Screenshot_2015-08-19-18-48-18.png
    Screenshot_2015-08-19-18-48-18.png
    253.7 KB · Views: 209
  • Screenshot_2015-08-19-18-48-28.jpg
    Screenshot_2015-08-19-18-48-28.jpg
    158.2 KB · Views: 204
  • Screenshot_2015-08-19-18-48-41.jpg
    Screenshot_2015-08-19-18-48-41.jpg
    156.8 KB · Views: 206
  • Screenshot_2015-08-19-18-48-56.png
    Screenshot_2015-08-19-18-48-56.png
    249.4 KB · Views: 206
  • Screenshot_2015-08-19-18-49-04.png
    Screenshot_2015-08-19-18-49-04.png
    251.9 KB · Views: 220
Last edited:

Portgas D. Ace

Inactive Recognized Contributor
Jun 12, 2014
4,353
3,159
Bergisches Land
Nexus 7
Google Pixel 6
THX for Greenify, hope you can help:

Device model: SM-A500FU
ROM: Stock A500FUXXU1AOB4_A500FUOXA1AOB1_A500FUXXU1AOB4
Android version 4.4.4
Working mode of Greenify ROOT
Is "Deep Hibernation" also enabled.: NO, all other experimental options are ON:

18:28 After trying some Whatsapp messages that went OK, I put it to zzzz.
18:32:02 Llama(app) disabled DataConnection
Then I sent another message to my device
18:35:08 - 18:36:08 Llama enabled data for 1 minute
no data for 5 minutes
18:41:08 - 18:42:08 Llama enabled data for 1 minute

When I opened Greenify, whatsapp was still sleeping. After opening whatsapp the message was delivered.

Try setting your working mode to Boost.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 15
    GCM wake-up is considered to be one of the most unreliable feature among the experimental features, thus still stuck as donation-only.
    There're many factors behind a working GCM push, and trouble with either may lead to the failure of the whole expectation.

    Let's discuss the common misunderstandings first.

    1. The GCM indicator in App Analyzer does not necessarily mean the app uses GCM for the very notification feature you are expecting.

    The GCM indicator only means GCM-related code is in that app's package. But the app may use GCM only for some of its notifications, or only in some criterias, or even the worse, does not use at all. To find out the actual usage of GCM within an app, read the trouble shooting instructions below.

    2. Not all notifications are backed by GCM push.

    Most instant messaging apps and some social apps use hybrid implementation with GCM and persistent connection (in a background service) to deliver more reliable instant notification, than relying on GCM only. In this case, some of the notifications you have received may not even come from a GCM push.
    Hiberated apps lose its background service and thus fall-back to a GCM-only solution, effectively reducing the reliability of notification. If you noticed obvious delay or loss of some notifications after greenifying, it's probably the case.

    3. The latency of GCM is affected by many factors, most notably how your carrier restrict the persistent connection.

    The foundation implementation of GCM itself is also a persistent connection to Google's server. That means if your devices failed to keep this persistent connection, the latency of GCM is out of control. Carriers all over the world do restrict persistent connection to preserve their limited capability of signalling resources (not the bandwidth), by dropping connections idle for a while. GCM use periodic heartbeat packets to keep the persistent connection, but the default interval of 28 minutes for mobile network is far beyond the connection dropping threshold of some carriers (varying from minutes to hours), causing the persistent connection to drop frequently. As a result, GCM push may delay in minutes, or even half an hour. There's also a few carriers in the world even block the connections to Google's server in most time(China for example), causing GCM totally out of work.

    To reduce latency caused by carrier restriction on persistent connection, try "Push Notification Fixer".

    Now if you believe your app failed to wake up by a GCM push, follow these instructions to find the cause:

    1. Open and monitor the logcat (Android log system), either on a USB-connected computer, or on your device with tool app like CatLog.

    2. Set the filter to only include keyword (or tag) "GCM".

    3. Let's trigger an expected GCM push (by sending an instant message from another device or so). You will soon read a line like this in logcat upon the arrival of GCM push:
    Code:
    I/GCM﹕ GCM message com.joaomgcd.autoremote 0:1426418730738334%0#02db4288f9fd7ecd
    This means Google Play services received the GCM message from Google's server and ready to deliver it to the corresponding app (indicated by the package name in the line, com.joaomgcd.autoremote in the example). If you cannot find this line in a reasonable time span, then it may be that app which lose the registion to GCM. Try logout and login your account, or clear the data of the app, or even uninstall and re-install it to restore its registration to GCM.

    In all good situation, you should now receive the notification. If not, read on.

    4. If the target app is hibernated before the arrive of GCM push and you have activated "GCM Wake-up" feature, then open Greenify ASAP (since it may hibernate again in a few minutes).

    You will probably find that app is awake and listed in the "WILL HIBERNATE..." section. In this case, Greenify had managed to wake up the hibernated app and deliver the GCM message to it, but that app may failed to process it correctly and show a notification. This does happen to some apps which can't deal with GCM message upon wake-up. Try trigger another GCM push manually, if the notification shows up this time, that app falls into this category. It's hard to blame the developers for that, since they may not prepare for the arrival of GCM push when their background service is not running. So I'm still trying to figure out a better solution to make "GCM Wake-up" compatible with these apps.

    5. If the app still stays hibernated, then the wake-up attempt might fail.

    Back to the logcat, you probably read another line like this:
    Code:
    W/GCM-DMM﹕ broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE pkg=com.joaomgcd.autoremote (has extras) }
    It means the push is not delivered successfully. If you did activated "GCM Wake-up" but still read this line, then it may be Greenify's fault, except if you have disabled the notification of that app in system Settings - Apps - That App - Show notifications (unticked). Greenify checks this setting before trying to wake-up an app to deliver GCM push.

    Note: As a reference, try "AutoRemoteLite" with its web interface to trigger GCM push.
    1
    Device:Xperia ZR C5502
    ROM:CM12 UNOFFICIAL by @xenius9 Link:https://yadi.sk/d/dTadZHj_fCZKN
    Greenify Donation Version 2.6 beta 6
    Boost Mode
    Deep Hibernation enabled.
    Logs attached

    Tapped from my furious ZR ;)
    1
    What do the following intents do .. how could I use them from Llama/Tasker ?
    Broadcast:
    com.oasisfeng.greenify.intent.action.Hibernate
    com.twofourtyfouram.locale.intent.FIRE_SETTING

    WakeupObserver:
    com.oasisfeng.greenify.action.APP_WAKEUP
    com.oasisfeng.greenify..ACTION.APP_WAKEUP
    You may have a problem. But that doesn't give you a license to post it all over the place. I have already read three different sub threads where you have posted the same thing.
    Stop it and observe some etiquette.
    1
    Hi, I have donation package on my Z3 with Xposed and Boost mode activated. Apparently push notifiations are working fine in all my apps except on one of them, Facebook Messenger, anyone else is having issues with this one? Is there any way to fix push notifications on this app?

    Facebook and its Messenger do not use Google Cloud Messaging (GCM), they implemented their own protocol (MQTT, as far as I remember). This way, you will loose push notifications of Facebook Messenger when you greenify it.
    1
    Is there any workaround or fix to still receiving notifications as using Greenify?

    Sent from my Xperia Z3

    Well, it's some kind of curse with Facebook Messenger. It drains battery pretty much, but if you can't go without push, you have to leave it degreenified and thus live with the drain.

    Two thoughts about it:

    You can use Tasker to set up some kind of self-made push notification delivery by periodically (once per hour) waking FB Messenger to receive push notifications. But the constant wake-up/hibernation will cause quite some drain by itself.

    As an alternative you could use Disa Messenger with its Facebook plugin instead of FB Messenger and check if this reduces your drain.

    I have uninstalled FB and FB Messenger a long time ago and use alternative solutions such as Facebook Lite, which are more battery-friendly.