본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[Android/안드로이드] Device 의 Power 가 On/Off 될 때 어떤 일이 발생하는지 아세요?

by 돼지왕 왕돼지 2012. 1. 25.
반응형


0. History


- 이 글은 2012-01-25 초안 작성 시작하였습니다.
- 오래된 정보, 잘못된 정보, 오타가 있으면 Comment 남겨주세요. 확인 후 수정하겠습니다.
- 이 글은 2012-01-25 초안 작성 완료하였습니다.




1. Information.


Device의 전원이 On/Off 될 때 어떤 일이 발생하나요?


PowerManager 라는 녀석이 Device 전원의 On/Off 시

1. WindowManager 에 notify 를 하고, 이 정보가 KeyguardViewMediator 를 통해 LockScreen 에 전달이 됩니다.
 

2. Active 되어야 하는 Activity 를 깨워줍니다.



Screen-on 의 경우를 코드레벨로 살펴볼까요?

1. PowerManagerService.mNotificationTask 이라는 Runnable 에서부터 시작합니다.

-> WindowManagerPolicy.screenTurnedOn()
-> KeyguardViewMediator.onScreenOn()
-> KeyguardViewManager.onScreenTurnedOn()
-> KeyguardView.onScreenTurnedOn()


2.  ActivityManagerNative.getDefault().wakingUp(); 로 activity 를 깨워줍니다.





이 부분은 Framework 를 다루는 사람들이 잘 알아야 하는 사항이지요..


손가락 추천 꾸욱~ 더 좋은 글로 보답하겠습니다.


2. Summary


- Device의 Power가 On/Off 될 때에는 PowerManagerService 가 LockScreen에게 power on 되었다는 내용을 전달하고, 활성화되어야 하는 Activity 를 깨워서 활성화시켜줍니다.




3. Tags






반응형

댓글