Можете ли вы помочь мне понять, почему моя тревога не срабатывает:
Я пытаюсь зарегистрировать ожидающее намерения, чтобы запустить будильник в 12:22 (текущий час теперь), но проблема в том, что будильник не срабатывает. Я попытался подставить miliseconds из calendar.getTimeInMilies() с жестко закодированным временем: 10 000 мили (10 секунд); Даже это не сработало.AlarmManager не запускает тревогу в соответствующее время
AlarmManager alarm_manager =(AlarmManager)this.getSystemService(Context.ALARM_SERVICE);
calendar = Calendar.getInstance();
Intent intent = new Intent(MainActivity.this , AlarmManagerHelper.class);
PendingIntent register =PendingIntent.getActivity(getBaseContext(), 0, intent,0);
calendar.set(Calendar.YEAR,2014);
calendar.set(Calendar.MONTH, 10);
calendar.set(Calendar.DAY_OF_MONTH, 2);
calendar.set(Calendar.HOUR_OF_DAY,12);
calendar.set(Calendar.MINUTE,22);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.AM_PM, Calendar.AM);
alarm_manager.set(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis(), register);
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
Log.d(TAG ,"Time format is :" +formatter.format(calendar.getTime()));
У меня есть следующий набор разрешений в Manifest
android:name="android.permission.WAKE_LOCK"
И вывод:
Time format is :02/11/2014 12:22:00