TP5 question

Modérateurs : Douin, F. Lemoine, Farinone

LudovicF
Messages : 29
Inscription : 20 févr. 2017 15:45

TP5 question

Message par LudovicF » 17 mars 2017 18:24

Bonjour

Je suis bloqué dans la première partie du TP.

Je n'arrive pas à récupérer la valeur de la constant COUNT_EXTRA dans le onReceive.

Je démarre mon Ticker dans :

Code : Tout sélectionner

    public void onClickSendBroadcast(View v){
        Intent intent = new Intent();
        Context leContexte = getApplicationContext();
        ticker = new Ticker(leContexte);
        ticker.startTicker();
        intent.setAction(ticker.TIME_ACTION_TIC);
        sendBroadcast(intent);

    }
et j'essai récupère dans le onReceive avec un getStringExtra:

Code : Tout sélectionner

    public class Receiver extends BroadcastReceiver {
        private String nom;

        public Receiver(String nom){
            this.nom = nom;
        }

        @Override
        public void onReceive(Context context, Intent intent) {
            String compteur = intent.getStringExtra("count");
            Log.i(TAG, "toto" + compteur);

        }
    }
Merci d'avance pour votre aide.

Douin
Messages : 201
Inscription : 18 mars 2009 15:46

Re: TP5 question

Message par Douin » 19 mars 2017 11:09

Bonjour attention ce n'est pas "count" la clef de count ;-)

Bonne fin detp

LudovicF
Messages : 29
Inscription : 20 févr. 2017 15:45

Re: TP5 question

Message par LudovicF » 19 mars 2017 14:26

Bonjour,

Merci pour votre réponse.

Mais pour la a clef du count, dans intent.getStringExtra(String) j'ai essayé Ticker.TIME_ACTION_TIC, ticker.TIME_ACTION_TIC, Ticker.COUNT_EXTRA, ticker.COUNT_EXTRA, "COUNT_EXTRA", et "TIME_ACTION_TIC". Je n'arrive pas a récupérer la valeur.

Dans l'image ci-dessous je trouve pas le "count" du Ticker dans l'intente :

Image

khris
Messages : 28
Inscription : 25 mars 2014 18:10
Contact :

Re: TP5 question

Message par khris » 20 mars 2017 0:21

Hello
Pourquoi cherches-tu à envoyer manuellement un Intent dans ta méthode onClickSendBroadcast()?
Tout ceci est normalement géré dans la classe Ticker.
Pas besoin donc de créer d'intent à cet endroit
Je pense que tu peux te contenter de la ligne ticker.startTicker(); :-)

Sinon pour ton problème, je vois que tu utilises la méthode Intent.getStringExtra() dans le onReceive du BroadcastReceiver.
Cela signifie que tu cherches à récupérer un String.
Or la donnée à récupérer (count) est un long.
Android ne trouve donc pas de String correspondant à la clé Ticker.COUNT_EXTRA.
Essaie avec la méthode Intent.getLongExtra(Ticker.COUNT_EXTRA);

Je pense que ça devrait t'aider ;-)

LudovicF
Messages : 29
Inscription : 20 févr. 2017 15:45

Re: TP5 question

Message par LudovicF » 20 mars 2017 10:36

Merci khris,

Je pensai que comme la constante COUNT_EXTRA était un string, il fallait getStringExtra() et pour l'intent dans le onClick, j'ai suivi le podcast :-/ un peut sans réfléchir...

En tous cas merci beaucoup khris.

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité