Comment annuler l'alarme qui est lancé dans une activité et l'annuler dans le récepteur de diffusion

voix
0

J'ai créé une alarme dans une activité et d'essayer de l'annuler dans une autre émission d'alarme receiver.This est déclenchée au moment précis pour montrer la notification à l'utilisateur

J'ai vérifié différents postes ici, mais rien n'a fonctionné.

Code J'utilise est comme ci-dessous:

MainActivity.java

                Calendar calendar = Calendar.getInstance();
                calendar.setTimeInMillis(mydateobj.getTime());
                calendar.set(Calendar.HOUR_OF_DAY, 9);
                calendar.set(Calendar.MINUTE, 20);
                Intent intent = new Intent(MainActivity.this, Myreceiver.class);
                AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
                PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 1, intent, PendingIntent.FLAG_UPDATE_CURRENT);
                intent.putExtra(pendingIntent,pendingIntent);
                alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);

Et ma BroadcastReceiver mise en œuvre comme ci - dessous:

 @Override
    public void onReceive(Context context, Intent intent) {

        Intent  newIntent = new Intent(context,Myreceiver.class);
        AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
        if(intent!= null) {

            PendingIntent pendingIntent = intent.getParcelableExtra(pendingIntent);
            if(pendingIntent!=null)
            {

                alarmManager.cancel(pendingIntent);
                pendingIntent.cancel();
            }
        }

Je reçois le nul pendingIntent donc il n'annulait donc je me répétais notification.

J'ai aussi essayé de créer un PendingIntent dans mon récepteur avec la même identifiant et le drapeau et a essayé d'annuler le gestionnaire d'alarme ainsi que le pendingIntent créé dans ce récepteur mais il ne fonctionne pas.

Toute aide est appréciée.

Créé 19/12/2018 à 14:10
source utilisateur
Dans d'autres langues...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more