impostare il tempo di gestione allarmi Android - Allarme licenziato all'istante [duplicato]
-
25-09-2019 - |
Domanda
Eventuali duplicati:
Perché il mio manager allarme Android sparando istantaneamente?
Ho questo codice che chiamerà notifica di allarme
public static Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(System.currentTimeMillis());
cal.add(Calendar.HOUR_OF_DAY,hour);
cal.add(Calendar.MINUTE, min);
Intent intent = new Intent(this, OnetimeAlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, REQUEST_CODE, intent,0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis() , pendingIntent);
Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show();
ma l'allarme viene licenziato immediatamente, dosent attendere dopo l'ora e la data minuti? dovrei aggiungere qualcosa per il file manifesto?
Soluzione
È possibile utilizzare l'ora corrente per impostare la sveglia. Quindi spara istantaneamente.
Controlla l'API. http: / /developer.android.com/reference/android/app/AlarmManager.html#set%28int,%20long,%20android.app.PendingIntent%29
Non ci si passa il tempo in cui l'allarme si di come secondo parametro. Nel tuo caso questo è il tempo reale. Quindi si dovrebbe aggiungere la quantità di tempo che si desidera attendere per il tempo il vostro passaggio nel metodo in questo momento.