IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

problème reception push


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 149
    Par défaut problème reception push
    Bonjour

    c'est encore moi et le push!!!!!!!!!!
    j'arrive à envoyer et a recevoir des message push mais j'ai un petit problème pour le message, il ne change pas.

    la reception du push
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    private void receptionMessage(Context context,Intent intent)
    	{
    		//recuperation de l'intent
    		String message = intent.getStringExtra("message");
    		String type = intent.getStringExtra("type");
     
    		String titre="";
    		int icone = R.drawable.icon;
     
    		//creation de la notification
    		NotificationManager notifMan = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
    		Notification notif = new Notification(icone, message, System.currentTimeMillis());
     
    			//specification de l'activité à démarer lors du click
    			Intent notifintent = new Intent(context, RootPushActivity.class);
    			notifintent.putExtra("message", message);
    			PendingIntent contenuIntent = PendingIntent.getActivity(context, 0, notifintent, 0);
     
     
    		//affichage de la notification 
    		notif.setLatestEventInfo(context, titre, message, contenuIntent);
    		// effacement après un clic dessus
    		notif.flags |= Notification.FLAG_AUTO_CANCEL;
     
    		//lancement de la notification
    		notifMan.notify(1,notif);
    		RootPushUtils.playNotificationSound(context);
    	}
    l'activité d'après

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    public class RootPushActivity extends Activity {
     
     
    	TextView message;
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.mainpush);
     
     
     
    		message =(TextView)findViewById(R.id.push_text_message);
     
     
    	}
    	@Override
    	protected void onResume() {
     
    		Intent in = this.getIntent();
    		String mess = in.getStringExtra("message");
    		message.setText(mess);
    		super.onResume();
    	}
     
    }
    j'arrive pas à comprendre pourquoi si quelqu'un a une idée je suis preneur

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 29
    Par défaut
    Salut,

    J'étais confronté au même problème que toi mais je l'ai résolu grâce au lien suivant: http://stackoverflow.com/questions/9...e-same-message
    D'après ce que j'ai compris, lorsque tu envoies un push à ton téléphone le PendingIntent créé n'est pas détruit une fois que celui-ci est envoyé et donc lorsque tu veux envoyer un autre push c'est ce même PendingIntent qui est réutilisé.
    Pour éviter cela il faut que tu remplaces ta ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    PendingIntent contenuIntent = PendingIntent.getActivity(context, 0, notifintent, 0);
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    PendingIntent contenuIntent = PendingIntent.getActivity(context, (int) System.currentTimeMillis(), notifintent, 0);
    Cela permet d'avoir à chaque fois d'avoir un PendingIntent unique et donc de bien recevoir le push que tu as envoyé.
    Il est également dit de rajouter le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    @Override
        protected void onNewIntent(Intent intent) {
            super.onNewIntent(intent);
            setIntent(intent);//important!
    }
    dans l'activité démarrée par le PendingIntent (RootPushActivity pour toi).

    Personnellement mon problème est résolu même si je ne rajoute pas la fonction onNewIntent() dans mon activité.
    C'est tout ce que j'ai compris à ce problème, si je me trompe ou que quelqu'un a des explications à ajouter (notamment sur le fait d'ajouter la fonction onNewIntent()) je suis preneur ^^.

    Bonne journée .

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 149
    Par défaut
    Merci de ta reponse en faite je vien de trouver une autre solution dans le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    PendingIntent.getActivity(context, 0, notifintent, 0);
    il suffit de mettre à la place du 2éme 0
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    PendingIntent.FLAG_CANCEL_CURRENT
    qui d'après la doc supprime le pendingIntent existant et crée le nouveau (si elle existe bien sur!)

    mais dans tous les cas merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DW8] Problème reception de formulaire
    Par evian06 dans le forum Dreamweaver
    Réponses: 1
    Dernier message: 20/08/2008, 16h10
  2. Problème reception messages Hotmail
    Par Albenejean dans le forum Thunderbird
    Réponses: 0
    Dernier message: 04/07/2008, 00h50
  3. Problème reception de données TComPort
    Par rodgeurette dans le forum C++Builder
    Réponses: 0
    Dernier message: 25/06/2008, 14h18
  4. Réponses: 1
    Dernier message: 12/02/2008, 09h29
  5. Problème avec Push et Length
    Par minette dans le forum Ruby
    Réponses: 8
    Dernier message: 12/01/2007, 20h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo