何気なく使っているFramework 第7回 スクリーンショット
今回から確認OSバージョンをAndroid OS 4.0.1_r1に変更しました。
確認OSバージョン
Android OS 4.0.1_r1 ICS
スクリーンショットが実行されるまでの流れ
- Native層のInputDispatcherからinterceptKeyBeforeQueueingをコール
- 一旦、Java層にコールバック
- InputManagerを経てPhoneWindowManager#interceptKeyBeforeQueueing
- interceptKeyBeforeQueueing
- interceptScreenshotChord()
- mScreenshotChordLongPress#run
- takeScreenshot()
- SystemUIに新たに追加されたService、TakeScreenshotServiceへ
- run()
- GlobalScreenshot#takeScreenshot
- Surface.screenshotをコールし画面イメージのBitmap取得
- アニメーションして保存