Java 警报在到期时正确接收,但在应用程序打开后第二次错误接收
通过使用Calendar类java(示例9:15am),我能够在将来的特定时间获得通知。每当时间为上午9:15,但当我在上午9:15之后打开应用程序时(例如上午9:20),Alarm manager会将广播发送到广播接收器。我收到了同样的通知。有人能帮我解决这个问题吗 我的舱单Java 警报在到期时正确接收,但在应用程序打开后第二次错误接收,java,android,notifications,broadcastreceiver,alarmmanager,Java,Android,Notifications,Broadcastreceiver,Alarmmanager,通过使用Calendar类java(示例9:15am),我能够在将来的特定时间获得通知。每当时间为上午9:15,但当我在上午9:15之后打开应用程序时(例如上午9:20),Alarm manager会将广播发送到广播接收器。我收到了同样的通知。有人能帮我解决这个问题吗 我的舱单 <receiver android:name=".others.NotificationReceiver"/> 我的闹钟管理器 AlarmManager alarmManager = (
<receiver android:name=".others.NotificationReceiver"/>
我的闹钟管理器
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 9);
calendar.set(Calendar.MINUTE, 10);
calendar.set(Calendar.SECOND, 0);
Intent myIntent1 = new Intent(this, NotificationReceiver.class);
myIntent1.setAction(ACTION_ONE);
PendingIntent pendingIntent1 = PendingIntent.getBroadcast(this, 1, myIntent1, PendingIntent.FLAG_UPDATE_CURRENT);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent1);
确保NotificationReceiver在启动时未以编程方式触发。@AjayGurappanavar我该如何做?确保NotificationReceiver在启动时未以编程方式触发。@AjayGurappanavar我该如何做?
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 9);
calendar.set(Calendar.MINUTE, 10);
calendar.set(Calendar.SECOND, 0);
Intent myIntent1 = new Intent(this, NotificationReceiver.class);
myIntent1.setAction(ACTION_ONE);
PendingIntent pendingIntent1 = PendingIntent.getBroadcast(this, 1, myIntent1, PendingIntent.FLAG_UPDATE_CURRENT);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent1);