AlarmManager最多只能使用一个Android队列

问题描述

| 我最近刚开始与警报管理器打交道,并且弄清楚了其中的大部分内容,但现在它开始有点烦人。因此,现在我将其设置为日期和时间选择器,输入日期和时间,当该时间到来时,它将弹出一条敬酒消息,但似乎只需要一个警报和任何其他警报我开始被摧毁。这是警报管理器自己执行的操作,还是我缺少的操作。这是我的主班代码,另一个只是广播消息,里面有吐司消息,所以我不会发布它。
public class TextScheduler extends ListActivity {
protected Toast mToast; 
TimePicker time;
DatePicker date;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Button button = (Button) findViewById(R.id.button1);
    button.setonClickListener(setTime);
    time = (TimePicker) this.findViewById(R.id.timePicker1);
    date = (DatePicker) this.findViewById(R.id.datePicker1);
}
private OnClickListener setTime = new OnClickListener() {
    public void onClick(View v) {
        Calendar cal = Calendar.getInstance();
        cal.set(date.getYear(),date.getMonth(),date.getDayOfMonth(),time.getCurrentHour(),time.getCurrentMinute());

        Intent intent = new Intent(TextScheduler.this,AReceiver.class);
        intent.putExtra(\"caldata\",\"hooray!!\");
        PendingIntent sender = PendingIntent.getbroadcast(TextScheduler.this,1234567,intent,0);

        AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
        am.set(AlarmManager.RTC_WAKEUP,cal.getTimeInMillis(),sender);
    }
};
    }
让我知道是否需要更多信息,谢谢! 瓦尔多     

解决方法

        AlarmManager比较PendingIntents以查看其是否已经退出。只需更改ID(在您的情况下为
1234567
),它便可以创建其他警报:每个ID一个。