電話がスリープしている間、アニメーション化されたアクティビティが必要です (電話の呼び出し音のアニメーションによく似ています)。
WindowManager フラグを使用して画面をオンにすることに関する多くの投稿を読んだので、このコードをアクティビティの onCreate() 関数に追加しました。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
);
setContentView(R.layout.act_image_activity);
startAnimation();
}
私の問題は次のとおりです。
- アニメーションは少し遅れて始まります。画面がオンになると、キーガード (またはキーガードが無効になっている場合はホーム画面) が表示され、その後、アクティビティが開始されます。
- アクティビティの finish() メソッドを呼び出した後、電話はすぐにはスリープ状態にならず、スリープ タイマーを最初からやり直します。
画面がオンになった直後にアニメーションアクティビティを表示し、終了後すぐに画面をオフにする方法を教えてください。