我刚刚试用了 AlarmManager 来强制我的应用程序每天下午 3 点发送通知。但这仅在应用程序仍在后台时才有效。 当用户终止应用程序时,AM 不再工作。我可以做什么而不是 AlarmManager 来实现我想要的?
最佳答案
But this only works if the app is still in background.
不,即使应用程序未运行,它也能正常工作,例如让 Android 终止其进程以为其他应用程序释放内存。
When the user kills the app, the AM doesn't work anymore
如果您所说的“终止”是指用户在“设置”中为您的应用点击了“强制停止”,那么您的闹钟是未计划的,并且您的应用不会再次运行,直到用户手动运行您的应用(例如,点击在主屏幕的启动器 Activity 上)。
我听说一些由脑死亡制造商制造的设备在用户从设备提供的“任务管理器”中停止应用程序时会执行与“强制停止”相同的操作。这是不幸的。
在“杀死”的任何其他传统定义中,您的警报不受影响。
What can I do instead of AlarmManager to achieve what I want?
没有。如果用户强制停止您的应用,则用户不希望您的应用运行,因此您的应用将不会运行。
关于java - 即使应用程序关闭,Android 也会每天发送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20458070/