我希望我的应用程序每天早上 9 点开始。为此,我每天早上 9 点开始使用 Alarm_1 setRepeatingAlarm()
。
manager.setRepeating(AlarmManager.RTC_WAKEUP,
timeOn.getTimeInMillis(), 86400000,startingIntent);
从 alarm_1 开始,我启动了另一个警报 MainAlarm,它以 1 分钟的间隔重复启动我的服务。
manager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,
SystemClock.elapsedRealtime(), duration, MainActivity.mainIntent);
我希望我的应用程序每天晚上 9 点停止。
为此,我每天晚上 9 点使用 MainAlarmsetRepeatingAlarm()
启动Alarm_2。cancel()
但这并没有按预期工作。
应该做什么?有什么问题,因为我使用 3 个警报吗?
第二天闹钟不响了。
This is my cancel() code:
public class AlarmReceiver2 extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
AlarmManager manager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
manager.cancel(MainActivity.mainIntent);
MainActivity.mainIntent.cancel();
}
}