ads

dimanche 20 septembre 2015

GCMService wakelocks with fast dormancy turned on



Hello everyone. I am facing a problem since more than a month ago which is that if I turn on fast dormancy in my phone, the GCMService (Google Cloud Messaging service) causes a lot of multipdp kernel wakelocks and my phone cannot enter into deep sleep. This thing shouldn't be a problem but I have these ones. If I use an AOSP lollipop rom (to which I want to change) I cannot disable fast dormancy and if I disable the GCMService I cannot receive any notification message (e-mail, whatsapp, etc.), which for me are important, at least e-mail. Meanwhile I have a back-to-n00t based rom, in which fast dormancy toggle works.

I will now write a summary of the things I tried and how I realize that GCMServive was driving me crazy. First of all I used BetterBatteryStats to figure out what was going on behind Android OS battery usage and I saw a lot of multipdp wakelocks (arround 30% of total wakelocks and just 30% of deep sleep) under kernel wakelock tab. I did a search and I saw that it is related with fast dormancy. So I tried to disable with all the methods I could find on internet:

-Using Fast dormancy toggle for I9300 app (Play store link: https://play.google.com/store/apps/d...cytoggle.i9300 ). Worked on stock roms, not working either in CM11 nor CM 12.1.
-Using Fast dormancy toggle for I9100 app (xda thead: http://forum.xda-developers.com/gala...n-1-5-t2647015 ). Not working on CM11. On CM 12.1 I couldn't connect anymore to the 3G network.
-Manually editing the "nwk_info.db" file. No luck.
-Editing build.prop with "ril.fast.dormancy.rule=0 and ro.config.hw_fast_dormancy=0". Bootloop on CM11 and it is not maintained anymore on CM 12+ roms, as I read here: http://forum.xda-developers.com/show...ostcount=13426
-Using the code *#9900# with phone keyboard. Just available on stock based roms.
-Different modems and kernels. No succeed.

After all these trials I started to freeze apps and when I froze Google Play Services I could get a 93% of deep sleep and just 1% of multipdp kernel wakelock. So it was clear what was causing the wakelocks. Then I started to disable the services running in the app and when I disabled GCMService I got again a 90% of deep sleep and 1% of multipdp wakelock. But there were no e-mail notifications anymore. So I am blocked here.

Does anyone know how to reduce the activity of GCMService and still be able to receive e-mail notifications but no having wakelocks? If it is possible I prefer a solution not involving xposed.

Thanks a lot in advance.
And I want to acknowledge in advance all the rom developers who created the roms I used and the developers and researches who made the apps and procedures I used here.

More info:
Test environment: WiFi off, GPS off, Bluetooth and NFC off. Just 3G mobile data on with full bars signal and fast dormancy on.
Roms I used: Blekota Note 4, official Cyanogenmod 11, and ArchiDroid 3.1.3.



Aucun commentaire:

Enregistrer un commentaire