안드로이드

Activity Rotation 시 처리 프로세스

정창수 2011. 3. 8. 17:15
센서로 전환시
 PhoneWindowManager.java [onOrientationChanged]
  --> WindowManagerService.java [mWindowManager.setRotation(rotation,
                                                                          falsemFancyRotationAnimation,)]
  --> WindowManagerService.java [setRotationUnchecked(rotation,
                                                                 alwaysSendConfiguration, animFlags);]
  --> WindowManagerService.java [setRotationUncheckedLocked(rotation,
                                                                                                       animFlags);]


키패드로 화면 전환시
  --> InputManaer.java [notifyLidSwitchChanged(long whenNanos, boolean lidOpen)]

  --> WindowManagerService.java [notifyLidSwitchChanged(long whenNanos,
                                                                                               boolean lidOpen)]
  --> PhoneWindowManager.java [notifyLidSwitchChanged(long whenNanos,
                                                                                              boolean lidOpen)]
  --> PhoneWindowManager.java [updateRotation(int animFlags)]

  --> WindowManagerService.java [mWindowManager.setRotation(rotation,
                                                                          falsemFancyRotationAnimation,)]
  --> WindowManagerService.java [setRotationUnchecked(rotation,
                                                                 alwaysSendConfiguration, animFlags);]
  --> WindowManagerService.java [setRotationUncheckedLocked(rotation,
                                                                                                       animFlags);]