Итак, я пытался установить несколько сигналов тревоги из своей деятельности, которые будут вызывать мой сервис, который обрабатывает запись в текстовый файл.Но по какой-то причине я просто не могу заставить его работать правильно.В самой простой форме у меня это выглядит так:
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
AlarmManager pm = (AlarmManager)getSystemService(ALARM_SERVICE);
PendingIntent myIntent = PendingIntent.getService(MyLifeActivity.this, 0, new Intent(MyDogsLifeActivity.this, TimerService.class), 0);
PendingIntent myIntent2 = PendingIntent.getService(MyLifeActivity.this, 0, new Intent(MyDogsLifeActivity.this, TimerService.class), 0);
Calendar tomorrow = new GregorianCalendar();
tomorrow.setTimeInMillis(System.currentTimeMillis());
tomorrow.clear();
tomorrow.set(2012,2,9,17,21); // set for today 3/9/2012 at 5:21 PM.
am.setRepeating(AlarmManager.RTC_WAKEUP, tomorrow.getTimeInMillis(), fONCE_PER_DAY, myIntent);
Toast.makeText(MyLifeActivity.this, "AM Set for "+ tomorrow.getTime() ,Toast.LENGTH_LONG).show();
Calendar tomorrow1 = new GregorianCalendar();
tomorrow1.setTimeInMillis(System.currentTimeMillis());
tomorrow1.clear();
tomorrow1.set(2012,2,9,17,22); // set for today 3/9/2012 at 5:22 PM.
pm.setRepeating(AlarmManager.RTC_WAKEUP, tomorrow1.getTimeInMillis(), fONCE_PER_DAY, myIntent2);
Toast.makeText(MyLifeActivity.this, "PM Set for "+ tomorrow1.getTime() ,Toast.LENGTH_LONG).show();
В этой последней итерации только самая последняя итерация будет вызывать мою службу в нужное время.Мой предыдущий просто игнорируется.
В идеале я хочу иметь возможность вызывать один и тот же сервис из разных таймеров в разное время.Я знаю, что приведенный выше код точно не делает этого, но это всего лишь тест, чтобы понять, как это действительно работает.Но, как вы можете видеть, это действительно не так.Любая помощь будет очень признательна, так как я боролся с этим долгое время.