After pressing the power button, the screen is closed as follows:
D/windowmanager (250): interceptkeytq keycode = 26 screenison = true keyguardactive = false
I/power (250): *** set_screen_state 0
D/surfaceflinger (87): about to give-up screen, flinger = 0x1671960.
E/libegl (87): validate_display: 188 error 3008 (egl_bad_display)
I/powermanagerservice (250): setscreenstate: screen_state = false mpartialcount = 0err = 0
D/sensors (250): plssensor: Enable en = 0; newstate = 0; what = 0; menabled = 1
D/sensors (250): plssensor: Enable what = 0; flags = 0; err = 0
D/sensors (0, 250): plssensor: menabled = 0x0
V/powermanagerservice (250): unregisterlistener mlightlistenerkb
D/keyguardviewmediator (250): onscreenturnedoff (2)
D/keyguardviewmediator (250): onscreenturnedoff: dokeyguardlocked is run!
D/keyguardviewmediator (250): dokeyguard: showing the lock screen
D/keyguardviewmediator (0, 250): showlocked
I/powermanagerservice (250): mlocks 01sleep_broadcast
D/powermanagerservice (250): acquirewakelock flags = 0x1 tag = sleep_broadcast
D/powermanagerservice (250): acquirewakelock flags = 0x1 tag = show keyguard
I/windowmanager (250): phonewindowmanager screenturnedoff is run and
Why = 2
The screen close log after P-sensor is blocked during a call is as follows:
D/sensors (250): plssensor: mpendingevents [proximity]. Distance = 0.000000
I/power (250): *** set_screen_state 0
I/powermanagerservice (250): setscreenstate: screen_state = false mpartialcount = 2err = 0
I/powermanagerservice (250): mlocks 032 msmsphoneapp
I/powermanagerservice (250): mlocks 11 emergencycallhelper
I/powermanagerservice (250): mlocks 21gsm
I/powermanagerservice (250): mlocks 3268435482 msmsphoneapp
D/surfaceflinger (87): about to give-up screen, flinger = 0x1671960.
E/libegl (87): validate_display: 188 error 3008 (egl_bad_display)
D/sensors (250): plssensor: Enable en = 0; newstate = 0; what = 0; menabled = 3
D/sensors (250): plssensor: Enable what = 0; flags = 0; err = 0
D/sensors (250): plssensor: menabled = 0x2
V/powermanagerservice (250): unregisterlistener mlightlistenerkb
I/powermanagerservice (250): mlocks 032 msmsphoneapp
I/powermanagerservice (250): mlocks 11 emergencycallhelper
I/powermanagerservice (250): mlocks 21gsm
I/powermanagerservice (250): mlocks 3268435482 msmsphoneapp
D/keyguardviewmediator (250): onscreenturnedoff (4)
D/powermanagerservice (250): acquirewakelock flags = 0x1 tag = sleep_broadcast
I/windowmanager (250): phonewindowmanager screenturnedoff is run and why = 4
We can see that every time the screen is closed, it will call D/keyguardviewmediator (250): onscreenturnedoff (*)
Based on the parameters, we can know the reason for every screen shutdown.
The meanings of each number are as follows:
~ /Mywork/403-sync/frameworks/base/CORE/Java/Android/View/windowmanagerpolicy. Java
416 // Note: screen off reasons are in order of significance, with more
417 // important ones lower than less important ones.
418
419/** screen turned off because of a device admin */
420 public final int off_because_of_admin = 1;
421/** screen turned off because of power button */
422 public final int off_because_of_user = 2;
423/** screen turned off because of timeout */
424 public final int off_because_of_timeout = 3;
425/** screen turned off because of proximity sensor */
426 public final int off_because_of_prox_sensor = 4;
427
When calling p-sensor, the screen light-up log is as follows:
D/sensors (250): plssensor: mpendingevents [proximity]. Distance = 1.000000
I/power (250): *** set_screen_state 1
I/powermanagerservice (250): setscreenstate: screen_state = true mpartialcount = 2err = 0
I/powermanagerservice (250): mlocks 032 msmsphoneapp
I/powermanagerservice (250): mlocks 11 emergencycallhelper
I/powermanagerservice (250): mlocks 21gsm
I/powermanagerservice (250): mlocks 3268435482 msmsphoneapp
D/sensors (250): plssensor: Enable en = 1; newstate = 1; what = 0; menabled = 2
D/sensors (250): plssensor: Enable what = 0; flags = 1; err = 0
D/sensors (250): plssensor: menabled = 0x3
V/powermanagerservice (250): registerlistener mlightlistenerkb
I/powermanagerservice (250): mlocks 032 msmsphoneapp
I/powermanagerservice (250): mlocks 11 emergencycallhelper
I/powermanagerservice (250): mlocks 21gsm
I/powermanagerservice (250): mlocks 3268435482 msmsphoneapp
D/keyguardviewmediator (250): onscreenturnedon, seq = 2
D/keyguardviewmediator (250): policyscreenonlocked
D/keyguardviewmediator (250): handlenotifyscreenon
D/powermanagerservice (250): acquirewakelock flags = 0x1 tag = sleep_broadcast
I/windowmanager (250): no lock screen!
D/incallscreen (603): onresume ()...
D/incalluistate (603): dumpstate ():
D/incalluistate (603):-showdialpad: false
D/incalluistate (603):-pending call status code: None
(D/incalluistate (603):-progressindication: None)
D/incalluistate (603):-provider overlay: None
D/incalluistate (603):-latestactivecallorigin: COM. Android. Contacts. Activities. dialtactsactivity
D/phoneapp (603): setignoretouchuseractivity (true )...
D/icationicationmgr (603): updatestatusbar: State = 0x50000
D/icationicationmgr (603): updateincallnotification (allowfullscreenintent = false )...
D/TD (603): videoct: idle CT: offhook
D/TD (603): videoct: idle CT: offhook
D/TD (603): videoct: idle CT: idle