有4种状态:
public static final int WAKEFULNESS_ASLEEP = 0;
public static final int WAKEFULNESS_WAKING = 1;
public static final int WAKEFULNESS_AWAKE = 2;
public static final int WAKEFULNESS_GOING_TO_SLEEP = 3;
何时进入状态WAKEFULNESS_ASLEEP ?
KeyguardService 定义了接口onFinishedGoingToSleep ,
PowerManagerService会调用此BInder接口。
onFinishedGoingToSleep 方法中发送 FINISHED_GOING_TO_SLEEP到 mKeyguardLifecyclesDispatcher ,
case FINISHED_GOING_TO_SLEEP:
mWakefulnessLifecycle.dispatchFinishedGoingToSleep();
break;
问题: PowerManagerService 何时调用onFinishedGoingToSleep ?
何时进入状态 WAKEFULNESS_AWAKE :
外部调用KeyguardService的接口onFinishedWakingUp, 然后发送 FINISHED_WAKING_UP到
KeyguardLifecyclesDispatcher的
dispatchFinishedWakingUp方法,