Mi rendo conto che questa domanda è stata posta prima, ma sono alla fine del mio spirito con questo.Imposta la notifica in un momento specifico Android
ho un direttore di allarme per impostare una notifica:
public void to_reminder(View view)
{
Intent intent=new Intent(this,Notification_morning.class);
AlarmManager manager=(AlarmManager)getSystemService(Activity.ALARM_SERVICE);
PendingIntent pendingIntent=PendingIntent.getService(this,
0,intent, 0);
Calendar cal=Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, timepicker.getCurrentHour());
cal.set(Calendar.MINUTE,timepicker.getCurrentMinute());
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
manager.setRepeating(AlarmManager.RTC_WAKEUP,cal.getTimeInMillis(),24*60*60*1000,pendingIntent);
}
... E poi ho la notifica stessa che è un servizio:
public class Notification_morning extends Service {
@Override
public void onCreate()
{
Toast.makeText(this, "MyAlarmService.onCreate()", Toast.LENGTH_LONG).show();
Intent resultIntent=new Intent(this, Calendar_start.class);
PendingIntent pIntent=PendingIntent.getActivity(this,0,resultIntent,0);
Notification noti_builder= new Notification.Builder(this)
.setContentTitle("Don't forget to plan your activitites for the day! ")
.setContentIntent(pIntent)
.build();
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); //what does this do!?
noti_builder.flags |=Notification.FLAG_AUTO_CANCEL;
notificationManager.notify(1,noti_builder);
}
@Override
public IBinder onBind(Intent intent) {
return null;
}
}
. ... Ho incluso il brindisi per assicurarmi che stavo davvero andando a questo metodo. Arriva il brindisi, ma la notifica no. Cosa sto facendo di sbagliato qui? È qualcosa nel file manifest che ho bisogno di cambiare?
WOW. Sì, era l'icona. Almeno ho imparato molte cose mentre ho letto tutta la documentazione :). Accetterà questa risposta non appena il tempo di attesa sarà terminato. – sam