web-dev-qa-db-fra.com

Android: Comment puis-je imprimer une variable sur la console Eclipse

Je voulais imprimer la valeur d'une variable sur la console à des fins de débogage, mais system.out.println ne fonctionne pas.

91
SuperCop

System.out.println et Log.d _ tous deux vont à LogCat, pas à la console.

117
drawnonward

Fenêtre-> Afficher la vue-> Autre… -> Android-> LogCat

26
doemsche

Écrire le code suivant pour imprimer quoi que ce soit sur LogCat fonctionne parfaitement bien !!

int score=0;
score++;
System.out.println(score);

imprime le score sur LogCat.Essayez ceci

6
poojan9118

Je suis nouveau dans le développement de Android et je le fais:

1) Créer un cours:

importer Android.util.Log; 
 
 classe finale publique Debug {
 private Debug () {} 
 
 public statique vide (Object msg ) {
 Log.i ("info", msg.toString ()); 
} 
}

Lorsque vous avez terminé le projet, supprimez la classe.

2) Pour imprimer un message à l’écriture LogCat:

Debug.out ("something");

3) Créez un filtre dans le LogCat et écrivez "info" dans l'entrée "by Log Tag". Tous vos messages seront écrits ici. :)

Conseil: Créez un autre filtre pour filtrer toutes les erreurs afin de déboguer facilement.

6
Gabriel Llamas

Je pense que le pain grillé est peut-être une bonne méthode pour montrer la valeur d’une variable!

3
daisy

Ok, Toast n’est pas complexe, mais il a besoin d’un objet contextuel pour fonctionner, ce pourrait être MyActivity.this, Alors vous pouvez écrire:

Toast.maketext(MyActivity.this, "Toast text to show", Toast.LENGTH_SHORT).show();

Bien que Toast soit une ressource d'interface utilisateur, son utilisation dans un autre thread différent de thread ui enverra une erreur ou ne fonctionnera tout simplement pas. Si vous souhaitez imprimer une variable, mettez la variable name.toString() et concattez-la avec du texte vouloir dans le paramètre maketext String;)

1
Sebasu

drawnonward est correct, vous pouvez consulter ce lien pour plus d'informations: http://developer.Android.com/resources/faq/commontasks.html#logging

0
Ravi Vyas

Si le code que vous testez est relativement simple, vous pouvez simplement créer un projet Java) classique dans l'Explorateur de packages et copier le code, l'exécuter et le corriger là, puis le recopier dans votre projet Android.

Le fait que System.out soit redirigé est assez agaçant pour tester rapidement des méthodes simples, mais c'est la solution la plus simple que j'ai trouvée, plutôt que de devoir exécuter l'émulateur de périphérique uniquement pour voir si une expression régulière fonctionne.

0
Haravikk

A propos, si vous ne savez pas quelle est la position exacte de votre JSONObject dans votre JSONArray, je suggère d'utiliser le code suivant: (J'ai supposé que "jsonArray" est votre variable principale avec toutes les données, et je cherche l'objet exact à l'intérieur du tableau avec une fonction égale)

    JSONArray list = new JSONArray(); 
    if (jsonArray != null){
        int len = jsonArray.length();
        for (int i=0;i<len;i++)
        { 
            boolean flag;
            try {
                flag = jsonArray.get(i).toString().equals(obj.toString());
                //Excluding the item at position
                if (!flag) 
                {
                    list.put(jsonArray.get(i));
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }  
        } 
    }
    jsonArray = list;
0
Avi Levin

toast est une mauvaise idée, il est beaucoup trop "complexe" d'imprimer la valeur d'une variable. utilisez log ou s.o.p, et comme drawonward l’a déjà dit, leur sortie passe à logcat. cela n'a de sens que si vous souhaitez exposer ces informations à l'utilisateur final ...

0
MJB