TurnOnScreenActivity.kt raw
1 package io.github.domi04151309.alwayson.actions
2
3 import android.app.Activity
4 import android.content.Intent
5 import android.os.Build
6 import android.os.Bundle
7 import android.os.Handler
8 import android.os.Looper
9 import android.view.WindowManager
10
11 class TurnOnScreenActivity : Activity() {
12 override fun onCreate(savedInstanceState: Bundle?) {
13 super.onCreate(savedInstanceState)
14
15 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
16 setShowWhenLocked(true)
17 setTurnScreenOn(true)
18 } else {
19 @Suppress("DEPRECATION")
20 window.addFlags(
21 WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED or
22 WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
23 )
24 }
25
26 Handler(Looper.getMainLooper()).postDelayed({
27 startActivity(
28 Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME)
29 .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK),
30 )
31 finish()
32 }, TINY_DELAY)
33 }
34
35 companion object {
36 private const val TINY_DELAY = 10L
37 }
38 }
39