Как я могу увидеть длинные тексты / сообщения в logcat?
Вопрос
Поскольку мы используем logcat в качестве консоли для Android.Бывают случаи, когда выходной текст / сообщение довольно большое, и я не могу видеть полный вывод.Журнал cat показывает только его начальную часть.Есть ли способ расширить его, чтобы я мог видеть полный текст сообщения?
Решение
Если вы хотите писать длинные сообщения, чтобы видеть в logcat
возможно, стоит написать свою собственную оболочку вокруг android.util.Log
методы, которые разбивают ваше длинное сообщение на несколько строк.
Другие советы
Вот таким образом я решил эту проблему.Надеюсь, это поможет.
Важным методом для его использования внутри вашего кода является 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);
}
}
}
Я никогда не использую графический интерфейс для просмотра выходных данных logcat, поэтому я не уверен, где и есть ли полосы прокрутки в пользовательском интерфейсе DDMS / Eclipse.
В любом случае, вы можете использовать logcat из командной строки — существует множество опций.
Чтобы постоянно просматривать журнал активного устройства: adb logcat
Чтобы сбросить весь журнал целиком: adb logcat -d
Чтобы сбросить весь журнал в файл: adb logcat -d > log.txt
Для фильтрации и отображения определенного тега журнала: adb logcat -s MyLogTag
... и многое другое!
Конечно, вы можете изменить ширину столбца, просто перейдя к концу строки щелчком мыши и перетаскиванием.Это боль для действительно длинных сообщений.Если у меня действительно длинное сообщение, я обычно копирую строку и вставляю ее в текстовый файл.Ctrl-C в Windows скопирует его.
Чтобы добавить к ответу Джея Аскрена, вы также можете дважды щелкнуть по правому краю заголовка столбца "текст", чтобы полностью развернуть его.Я заметил, что даже в этом случае существует ограничение на количество символов, которые будет отображать Eclipse.