Comment puis-je voir long texte / message dans logcat?
Question
Puisque nous utilisons logcat comme une console pour Android. Il y a des cas où le texte de sortie / msg est un peu grand et je ne peux pas voir la sortie complète. Le chat journal indique que la partie à partir de celui-ci. Est-il possible de l'étendre afin que je puisse voir le plein msg?
La solution
Si vous voulez écrire des messages longs à voir dans logcat
il peut être utile d'écrire votre propre emballage autour des méthodes de android.util.Log
qui divise votre long message sur plusieurs lignes.
Autres conseils
Ceci est la façon dont je résolu le problème. Espérons que cela aide.
La méthode importante pour l'utiliser à l'intérieur de votre code est splitAndLog.
public class Utils {
/**
* Divides a string into chunks of a given character size.
*
* @param text String text to be sliced
* @param sliceSize int Number of characters
* @return ArrayList<String> Chunks of strings
*/
public static ArrayList<String> splitString(String text, int sliceSize) {
ArrayList<String> textList = new ArrayList<String>();
String aux;
int left = -1, right = 0;
int charsLeft = text.length();
while (charsLeft != 0) {
left = right;
if (charsLeft >= sliceSize) {
right += sliceSize;
charsLeft -= sliceSize;
}
else {
right = text.length();
aux = text.substring(left, right);
charsLeft = 0;
}
aux = text.substring(left, right);
textList.add(aux);
}
return textList;
}
/**
* Divides a string into chunks.
*
* @param text String text to be sliced
* @return ArrayList<String>
*/
public static ArrayList<String> splitString(String text) {
return splitString(text, 80);
}
/**
* Divides the string into chunks for displaying them
* into the Eclipse's LogCat.
*
* @param text The text to be split and shown in LogCat
* @param tag The tag in which it will be shown.
*/
public static void splitAndLog(String tag, String text) {
ArrayList<String> messageList = Utils.splitString(text);
for (String message : messageList) {
Log.d(tag, message);
}
}
}
Je l'utilise jamais l'interface graphique pour voir logcat sortie, donc je ne sais pas où / s'il y a des barres de défilement dans l'interface utilisateur DDMS / Eclipse.
Quoi qu'il en soit, vous pouvez utiliser logcat de la ligne de commande -. Il y a des tas d'options
Pour regarder le journal d'un dispositif actif en permanence: adb logcat
Pour vider tout le journal: adb logcat -d
Pour vider tout le journal dans un fichier: adb logcat -d > log.txt
Pour filtrer et afficher une étiquette de journal particulier: adb logcat -s MyLogTag
... et bien plus encore!
Bien sûr, vous pouvez modifier la largeur de colonne, juste en allant à la fin de la ligne en cliquant et en faisant glisser. C'est une douleur pour les messages très longs. Si j'ai un message très long, je copier généralement la ligne et le coller dans un fichier texte. Ctrl-C dans Windows le copier.
Pour ajouter à la réponse de Jay Askren, vous pouvez également cliquer deux fois sur le bord droit de l'en-tête de colonne « texte » pour le développer pleinement. J'ai remarqué que même si il y a une limite au nombre de caractères Eclipse affiche.