我有一个每 2 分钟触发一次的警报(当手机没有处于睡眠状态时)并更新一个小部件,它工作得很好,但是当应用程序被杀死时,没有任何警报剩余,所以它不再工作了。我能做些什么来管理这个杀戮并在那之后让我的警报继续工作。
如果您需要更多信息,请告诉我。如果你不明白,也告诉我。
谢谢解答!
我有一个每 2 分钟触发一次的警报(当手机没有处于睡眠状态时)并更新一个小部件,它工作得很好,但是当应用程序被杀死时,没有任何警报剩余,所以它不再工作了。我能做些什么来管理这个杀戮并在那之后让我的警报继续工作。
如果您需要更多信息,请告诉我。如果你不明白,也告诉我。
谢谢解答!
将您的警报配置为在系统启动完成意图 (android.intent.action.BOOT_COMPLETED) 或类似的可靠意图上进行初始化。
创建一个使用以下意图的广播接收器
if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED"))
{
AlarmManager aMgr = (AlarmManager) cx.getSystemService(Context.ALARM_SERVICE);
PendingIntent pi = PendingIntent.getBroadcast(cx, 0, new Intent(cx, ScheduleReceiver.class), 0);
aMgr.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, Thoth.Settings.ALARM_TRIGGER_AT_TIME, Thoth.Settings.ALARM_INTERVAL, pi);
}
ScheduleReceiver 是启动更新小部件的服务的类。
如果您正在测试杀死应用程序时会发生什么,您可能会遇到与我相同的问题。
在 2.2 上,如果我在“管理应用程序”视图中终止应用程序,我的AlarmManager
应用程序警报会自动删除。
如果应用程序因异常而死机,则警报会继续触发。