Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用多重报警_Java_Android_Alarm - Fatal编程技术网

Java 使用多重报警

Java 使用多重报警,java,android,alarm,Java,Android,Alarm,我想用警报来触发一些处理 在下面的代码中,我尝试设置了两个警报。它们触发一个服务,该服务显示一个通知,指示刚刚发出的警报的id号 当第一个报警熄灭时,应出现通知,并显示:“1”。 对于第二个报警,通知应显示“2” 如Javadoc中所述,只触发一个报警(它们具有相同的意图,因此第二个报警取代第一个报警)。但奇怪的是,通知显示“1”,并在第二次报警熄灭时出现!!!似乎闹钟的时间已经修改过了,但没有修改额外的时间 有什么想法吗 提前感谢你花时间来帮助我 public class TestAlarme

我想用警报来触发一些处理

在下面的代码中,我尝试设置了两个警报。它们触发一个
服务
,该服务显示一个
通知
,指示刚刚发出的警报的id号

当第一个
报警
熄灭时,应出现
通知
,并显示:“1”。 对于第二个
报警
通知
应显示“2”

如Javadoc中所述,只触发一个报警(它们具有相同的
意图
,因此第二个报警取代第一个报警)。但奇怪的是,
通知
显示“1”,并在第二次
报警
熄灭时出现!!!似乎闹钟的时间已经修改过了,但没有修改额外的时间

有什么想法吗

提前感谢你花时间来帮助我

public class TestAlarmes extends Activity{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState){
    AlarmManager am;
    Intent action;
    PendingIntent intent;
    long t0;
    RecepteurMessageAlarme récepteur;

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // créer le récepteur de message d'alarme
    récepteur=new RecepteurMessageAlarme();

    // et l'enregistrer en lui demandant de filtrer sur les messages d'alarme
    registerReceiver(récepteur,new IntentFilter("GL.TestAlarmes.ALARME"));

    // récupérer le service d'alarme
    am=(AlarmManager)getSystemService(Context.ALARM_SERVICE);

    // créer l'action 1
    action=new Intent(this,ServiceAlarme.class);
    action.setAction("GL.TestAlarmes.ALARME");

    // personnaliser l'action a exécuter
    action.putExtra("GL.TestAlarmes.Action",1);

    // créer l'intent à lancer lors du déclenchement de l'alarme
    intent=PendingIntent.getService(this,0,action,PendingIntent.FLAG_ONE_SHOT);

    // prendre l'instant présent
    t0=java.lang.System.currentTimeMillis();

    // configurer l'alarme
    am.set(AlarmManager.RTC_WAKEUP,t0+5000,intent);

    // créer l'action 2
    action=new Intent(this,ServiceAlarme.class);
    action.setAction("GL.TestAlarmes.ALARME");

    // personnaliser l'action a exécuter
    action.putExtra("GL.TestAlarmes.Action",2);

    // créer l'intent à lancer lors du déclenchement de l'alarme
    intent=PendingIntent.getService(this,0,action,PendingIntent.FLAG_ONE_SHOT);

    // configurer l'alarme
    am.set(AlarmManager.RTC_WAKEUP,t0+10000,intent);
}

}

尝试为
pendingent
提供不同的请求代码,以使其唯一