Java AlarmManager与具有长计时器的处理程序/计时器

Java AlarmManager与具有长计时器的处理程序/计时器,java,android,timer,alarmmanager,handler,Java,Android,Timer,Alarmmanager,Handler,我正在设计一个包含日程安排的应用程序,当用户向其中添加事件时,他可以定义它是否重复“每周”、“每2周”等,如果是每周,也可以,但如果是,比如说“每月一次”,我必须计算自用户添加该事件以来的时间,并在一周后删除该事件,然后在3周后再加回去 根据我的研究,我可以使用AlarmManager、处理程序或计时器。它必须在应用程序未运行时更新,但在手机处于睡眠状态时不需要更新。我觉得AlarmManager对于这个简单的任务来说是一个过火的工具,但使用计时器或处理程序来计算用户添加事件后的时间,我需要将它

我正在设计一个包含日程安排的应用程序,当用户向其中添加事件时,他可以定义它是否重复“每周”、“每2周”等,如果是每周,也可以,但如果是,比如说“每月一次”,我必须计算自用户添加该事件以来的时间,并在一周后删除该事件,然后在3周后再加回去

根据我的研究,我可以使用AlarmManager、处理程序或计时器。它必须在应用程序未运行时更新,但在手机处于睡眠状态时不需要更新。我觉得AlarmManager对于这个简单的任务来说是一个过火的工具,但使用计时器或处理程序来计算用户添加事件后的时间,我需要将它添加到类似
(用户添加事件后经过的时间)+(当手机处于睡眠状态时)
我不知道该怎么做,也不知道这是否可能


AlarmManager、计时器、处理程序或其他?您应该使用AlarmManager(这是AlarmManager的全部用途)


如果应用程序未运行,计时器将不会运行,那么如果用户未打开应用程序,您希望它下周如何运行?

您应该使用AlarmManager(这是AlarmManager的全部用途)


如果应用程序未运行,计时器将不会运行,那么如果用户未打开应用程序,您希望它下周如何运行?

对于您的情况,您一定要使用
AlarmManager

运行
处理程序
计时器
只能在短时间内使用。这样您就可以确保应用程序仍在运行

另一方面,
AlarmManager
应用于在应用程序生命周期之外执行操作,在应用程序中就是这样

请参阅从中复制的以下注释

注意:对于保证在应用程序生命周期内发生的定时操作,应考虑使用Help类与计时器和线程相结合。该方法使Android更好地控制系统资源。


对于您的情况,您一定要使用
AlarmManager

运行
处理程序
计时器
只能在短时间内使用。这样您就可以确保应用程序仍在运行

另一方面,
AlarmManager
应用于在应用程序生命周期之外执行操作,在应用程序中就是这样

请参阅从中复制的以下注释

注意:对于保证在应用程序生命周期内发生的定时操作,应考虑使用Help类与计时器和线程相结合。该方法使Android更好地控制系统资源。


我完全搞错了,我以为处理程序可以在应用程序未打开的情况下运行,对不起,我搞错了,我以为处理程序可以在应用程序未打开的情况下运行,对不起,问题不好