如何在用户持续使用 his/her 设备的情况下每 x 分钟创建一次通知

How to create a notification every x minutes a user is continuously using his/her device

我想每 x 分钟创建一个通知,用户连续使用 his/her 设备。

我想我应该使用一个后台服务来监听屏幕何时打开,然后我可以启动某种计时器,如果屏幕没有关闭 x 分钟(用户输入的时间值)。

我不一定需要填鸭式的答案,但一些非常明确的指导或文档会非常有帮助,因为我不知道自己在做什么! :)

假设连续使用 phone 表示屏幕已打开。

首先,注册 BroadcastReceiver 以跟踪 ACTION_SCREEN_ON 和 ACTION_SCREEN_OFF 事件。然后使用服务来跟踪过去的时间并创建一些逻辑来决定何时触发通知。

检测屏幕:

Intent.ACTION_SCREEN_OFF 和 ACTION_SCREEN_ON 查看以上广播注册。在这里https://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/你可以找到一个很好的例子。

当屏幕打开时,根据需要设置 x 时间的闹钟 这里 How do I repeat a method every 10 minutes after a button press and end it on another button press 用户接受的答案。当闹钟时间到达时,检查屏幕是否仍然亮着,如果是,则创建一个通知。当屏幕关闭时关闭此闹钟。