所以我面临着一点所谓的漏洞利用/漏洞。 我有一个应用程序可以触发 Activity 并从锁屏唤醒手机并显示警报,一切正常,声音正常,但在少数情况下我会遇到问题: 如果用户单击主页按钮,它只会最小化应用程序,仅此而已,它仍然在后台运行。 如果用户锁定屏幕,警报将静音 - 如果在 10 秒内解锁,它会继续,如果在 10 秒后解锁,它会最小化并在后台运行。
我该如何解决这些问题?你会建议什么方法? 我假设警报 Activity 进入 onPause? 如果是的话,我正在考虑制作新的 Handler 并在 onPause 方法中在 10 秒内唤醒手机,但想知道是否有更好的方法?
最佳答案
我不认为 post a Handler
是个好主意,没有人保证你的 Activity
不会被 Android 系统销毁
,然后你的 Handler
将无法工作。
我建议设置一个新的 Alarm
(10 秒后),在 onPause()
中运行一个 Service/Broadcast
,你可以发送在PindingIntent
中设置Alarm
的时间。得到那个时间检查它或取消警报
。
关于Android:在闹钟期间 - 如果用户锁定屏幕或进入主屏幕 - 如何再次将其恢复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24876295/