ubuntu 在 R40e 上 還有 Debian 在 Sempron 2600 上

2012年10月24日 星期三

Android : power key to suspend, again..

參考前面兩篇文章: 一堆地方有goToSleep(),最後call 到的是...
./base/services/java/com/android/server/PowerManagerService.java
裡面的
    private void goToSleepLocked(long time, int reason) {
這個 function 最後 call 的是..
            setPowerState(SCREEN_OFF, false, reason);
這個function 剛好 follow ref.1 的內容。

原來的 code 寫法,短按 Power 就是 suspend,
長按則出現 PowerDialog,讓你選擇關機。

短按的動作,會讓 interceptKeyBeforeQueueing 傳回 含有
result = (result & ~ACTION_POKE_USER_ACTIVITY) | ACTION_GO_TO_SLEEP;
的return code。

沒有留言:

標籤

網誌存檔