0
Привет, я пытаюсь создать уведомление в определенное время на Android. Я могу сгенерировать уведомление, но он генерируется немедленно, пока я хочу, чтобы он сгенерировался позднее. Может кто подскажет, где я ошибся.уведомление о планировании android
calendar.set(Calendar.MONTH, 11);
calendar.set(Calendar.YEAR, 2016);
calendar.set(Calendar.DAY_OF_MONTH, 20);
calendar.set(Calendar.HOUR_OF_DAY, 2);
calendar.set(Calendar.MINUTE, 58);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.AM_PM, Calendar.PM);
long timeinmill = calendar.getTime().getTime() - System.currentTimeMillis();
Intent myIntent = new Intent(MakeAppointment.this, MyReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(MakeAppointment.this, 0, myIntent,0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC, timeinmill, pendingIntent);
Вы также можете отметить, что 'Calendar' имеет' getTimeInMillis() 'метод, чтобы упростить это немного, и что месяц выключен один, если они хотят текущий месяц. –
Да, вы правы, это было бы более прямым. Что касается номера месяца, это ИМХО - распространенная ошибка (если только кто-то не приходит из мира C :), но тогда часто бывает ошибка с номером года. – rastik
Спасибо, ребята. Это сработало, особенно в той части, где месяц уходит на один. – user3571631