Comment imprimer sur la console dans Android Studio?


149

Je viens de télécharger Android Studio pour Linux à partir de: http://developer.android.com/sdk/installing/studio.html

Je me demande comment imprimer sur la console?

Ni System.out.print(...)ni Log.e(...)de ne android.util.Logsemblent fonctionner.


1
Ceux-ci devraient «imprimer» sur LogCat, tout comme ils le font sur Eclipse.
CommonsWare

1
Vous pouvez également voir les instructions d'impression dans la Runfenêtre que je répondais ici .. stackoverflow.com/a/46843640/2462531
Shylendra Madda

Réponses:


184

Exécutez votre application en mode débogage en cliquant sur

entrez la description de l'image ici

dans le menu supérieur d'Android Studio.

Dans la barre d'état inférieure, cliquez sur le 5: Debugbouton, à côté du 4: Runbouton.

Vous devez maintenant sélectionner la Logcatconsole.

Dans la zone de recherche, vous pouvez taper la balise de votre message, et votre message devrait apparaître, comme dans l'image suivante (où se trouve la balise CREATION):

entrez la description de l'image ici

Consultez cet article pour plus d'informations.


146

Android a sa propre méthode d'impression des messages (appelés logs) sur la console, connue sous le nom de LogCat.

Lorsque vous souhaitez imprimer quelque chose sur le LogCat, vous utilisez un Logobjet et spécifiez la catégorie de message.

Les principales options sont:

  • DÉBOGUER: Log.d
  • ERREUR: Log.e
  • INFO: Log.i
  • VERBEUX: Log.v
  • PRÉVENIR: Log.w

Vous imprimez un message en utilisant une Loginstruction dans votre code, comme dans l'exemple suivant:

Log.d("myTag", "This is my message");

Dans Android Studio, vous pouvez rechercher des messages de journal étiquetés myTagpour trouver facilement le message dans le LogCat. Vous pouvez également choisir de filtrer les journaux par catégorie, telle que "Déboguer" ou "Avertir".


Quelle pourrait être la cause de l'erreur suivante lors de la tentative d'utilisation du journal? Could not get unknown property 'Log' for object of type com.android.build.gradle.internal.api.LibraryVariantImpl.
bigp

7
Mon préféré est Log.wtf(What a Terrible Failure): D
Arthur

4
Jeez quelle palabre! De la part de quelqu'un venant d'IOS qui développe, c'est vraiment obscur en comparaison. Juste en disant :-)
PhilipS

Ne fonctionne pas:error: cannot find symbol variable log.
Noir

3
@PhilipS Je suis d'accord. Le développement d'Android Studio et d'Android est pénible et ressemble à un cauchemar horrible et improductif. Triste et frustré.
monkSinha

23

Android Studio 3.0 et versions antérieures:

Si les autres solutions ne fonctionnent pas, vous pouvez toujours voir la sortie dans le moniteur Android .


capture d'écran du studio android


Assurez-vous de définir votre filtre sur Afficher uniquement l'application sélectionnée ou de créer un filtre personnalisé.

entrez la description de l'image ici


Cela devrait être la réponse choisie.
bah le

Mon erreur n'a pas été de définir correctement les 2 premières listes déroulantes dans Android Monitor (ayant plusieurs émulateurs en cours d'exécution, j'ai supposé que le dernier émulateur et l'application en cours d'exécution seraient automatiquement sélectionnés - pas le cas).
site du

2
Comment ouvrir le moniteur Android?
Noir

5

Vous pouvez voir les println()déclarations dans la Runfenêtre d'Android Studio.

Voir la réponse détaillée avec capture d'écran ici .


0

Si votre application est lancée à partir de l'appareil, et non de l'IDE, vous pouvez le faire plus tard dans le menu: Run- Attach Debugger to Android Process.

Cela peut être utile lors du débogage des notifications sur une application fermée.


0

J'avais résolu le problème en révoquant mes autorisations de débogage USB.

Révoquer,

Accédez à Paramètres du périphérique> Activer les options du développeur> Révoquer les autorisations de débogage USB


0

Soyez prudent lorsque vous utilisez Logcat , il tronquera votre message après environ 4076 octets, ce qui peut causer beaucoup de maux de tête si vous imprimez de grandes quantités de données.

Pour contourner cela, vous devez écrire une fonction qui la divisera en plusieurs parties comme ça .

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.