Morph Posté(e) 15 juin 2011 Share Posté(e) 15 juin 2011 Bonjour, Voila après avoir chercher des tutos, des exemples sur les forum ..., je n'arrive toujours pas à résoudre mon problème... Basiquement, mon application est une sorte de reveil. Voici le fonctionnement : J'ai une activity (activity01) qui me permet de régler l'heure et de plannifier mon alarme (ALARM_SERVICE). Lorsque l'alarme se déclanche, la classe alarmReceive est bien appelée ce qui me permet de faire ce que je veux. Je souhaite afficher un écran (activity02) avec par exemple un bouton "ok" et un autre "repousser de X minutes". La fonction onReceive de la classe alarmReceiver contient le code suivante : Intent intent1 = new Intent(); intent1.setClass(context, MonReveilAlarme.class); intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent1); Mon problème est le suivant. Quand je me trouve sur mon activity02, j'ai l'impresion que l'activity01 est lancé en fond ... si je fait "retour", je tombe sur l'activity01. De plus, si j'utilise le bouton "repousser de X minutes", l'alarme est correctement programmée, l'activity02 s'affiche X minutes après mais si j'appuie sur "retour" je tombe sur l'activity02, puis sur l'activity01. Comme si à chaque fois, il me créé une nouvelle activity02. J'ai donc regardé du côté des fonctions finish(). J'ai donc fait un Override sur onClose() en faisant : public void onStop(){ Toast.makeText(this, "on stoppe", Toast.LENGTH_LONG).show(); super.onStop(); this.finish(); } Le message "on stoppe" s'affiche quand je quitte l'application avec le bouton "home" mais le problème reste le même. X minutes après quand l'alarme se déclanche, j'ai mes activity à la chaine. J'espère avoir été clair, j'ai du mal à expliquer vraiment ce qui s'affiche ... merci en tout cas à ceux qui prendons le temps de me lire :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.