”Based on analyzing real smartphone traffic collected from 20 users over five months, we find that off-screen traffic accounts for 58.5% of the total radio energy consumption although their traffic volume contribution is much smaller. Such unexpected results are attributed to the unique cellular resource management policy that is not well understood by developers, leading to cellular- unfriendly mobile apps.”
private static final int STATE_ACTIVE = 0; /** Device is inactve (screen off, no motion) and we are waiting to for idle. */ private static final int STATE_INACTIVE = 1; /** Device is past the initial inactive period, and waiting for the next idle period. */ private static final int STATE_IDLE_PENDING = 2; /** Device is currently sensing motion. */ private static final int STATE_SENSING = 3; /** Device is currently finding location (and may still be sensing). */ private static final int STATE_LOCATING = 4; /** Device is in the idle state, trying to stay asleep as much as possible. */ private static final int STATE_IDLE = 5; /** Device is in the idle state, but temporarily out of idle to do regular maintenance. */ private static final int STATE_IDLE_MAINTENANCE = 6;
idle controller (deviceidle) dump options: [-h] [CMD] -h: print this help text. Commands: step ← parfait pour tester Immediately step to next state, without waiting for alarm. force-idle Force directly into idle mode, regardless of other device state. Use "step" to get out. disable Completely disable device idle mode. enable Re-enable device idle mode after it had previously been disabled. enabled Print 1 if device idle mode is currently enabled, else 0. whitelist Print currently whitelisted apps. whitelist [package ...] Add (prefix with +) or remove (prefix with -) packages. tempwhitelist [package ..] Temporarily place packages in whitelist for 10 seconds.
deviceidle step Stepped to: IDLE pierre google-services/android/gcm(master) $./gradlew run -Pmsg=" normal-ttl-10s" ... pierre ~() $date && adb shell dumpsys deviceidle step Jeu 4 fév 2016 16:59:46 CET Stepped to: IDLE_MAINTENANCE pierre ~() $adb logcat | grep "normal-ttl" 02-04 16:59:46.805 10470 11520 D MyGcmListenerService: Message: normal-ttl-10s pierre ~() $adb shell dumpsys deviceidle step Stepped to: IDLE pierre google-services/android/gcm(master) $./gradlew run -Pmsg=" normal-ttl-40s" pierre google-services/android/gcm(master) $./gradlew run -Pmsg=" normal-ttl-20s" ... pierre ~() $date && adb shell dumpsys deviceidle step Jeu 4 fév 2016 17:11:04 CET Stepped to: IDLE_MAINTENANCE pierre ~() $adb logcat | grep "normal-ttl" 02-04 17:11:05.463 10470 11524 D MyGcmListenerService: Message: normal-ttl-40s
deviceidle step Stepped to: IDLE pierre google-services/android/gcm(master) $./gradlew run -Pmsg=" normal-ttl-0s" on attend quelques secondes pierre ~() $date && adb shell dumpsys deviceidle step Jeu 4 fév 2016 17:07:04 CET Stepped to: IDLE_MAINTENANCE pierre ~() $adb logcat | grep "normal-ttl-0s" ... il n’arrivera jamais
<[email protected]> Date: Mon Jul 13 18:00:37 2015 -0700 Fix issue #21626564: MMS should be receivied while Dozing We now place whoever is receiving the MMS on the temporary whitelist while doing so, so they can get network access to download it.
pratiques • Utilisez les ressources réseaux intelligemment pour le mode Active • Intégrez Doze dans le cycle de votre app mais aussi dans celui de votre backend! • Testez votre app!