Как выводить сообщения на консоль Eclipse при разработке для Android


164

Как я могу печатать сообщения (например, флаг) на консоль (или журнал) Eclipse при разработке и отладке приложения для Android

Ответы:


153

Вместо того, чтобы пытаться вывести на консоль, Logвыведите на LogCat, который вы можете найти в Eclipse, перейдя в: Window-> Show View-> Other… -> Android-> LogCat

Посмотрите на ссылку дляLog .

Преимущества использования LogCat заключаются в том, что вы можете печатать разные цвета в зависимости от типа вашего журнала, например: Log.dпечатает синий, Log.eпечатает оранжевый. Кроме того, вы можете фильтровать по лог - тега , сообщения журнала , идентификатор процесса и / или по имени приложения . Это действительно полезно, когда вы просто хотите посмотреть логи своего приложения и отделить другие системные компоненты.


3
Боже мой, как просто это может быть .... эти маленькие лакомые кусочки помогают тем из нас, кто НОВЫЙ для этих платформ. Спасибо, М6ТТ! К вашему сведению: здесь есть опция «Фильтр», которая очень ОЧЕНЬ помогает ~
Мудрец

48
Log.v("blah", "blah blah");

Вам нужно добавить представление журнала Android в Eclipse, чтобы увидеть их. Существуют также другие методы, в зависимости от серьезности сообщения (ошибка, подробность, предупреждение и т. Д.).


2
+1 Как насчет этого в библиотеке? Я пытался, но он ничего не показывает на LogCat.
Рой Ли

29

System.out.println()также выводит на LogCat. Преимущество использования старого доброго System.out.println()заключается в том, что вы можете напечатать объект, похожий System.out.println(object)на консоль, если вам нужно проверить, инициализирована ли переменная или нет.

Log.d, Log.v, И Log.wт.д. методы только позволяют печатать строки на консоль , а не объекты. Чтобы обойти это (если вы хотите), вы должны использовать String.format.


3
Или, для экземпляров объекта, вы всегда можете использовать toString(). Это то, что System.out.println(Object)делает внутренне. Если используется сам toString()метод Object(например, для типов массивов), вы можете не получить полезного вывода.
Maarten Bodewes

спасает меня от набора текста. Я всегда люблю, когда Объекты заботятся о себе. ; )
Tirtha

Он не сбрасывает объект, он печатает так же, как Log.
Франциско Корралес Моралес

... и это все еще спасает меня от создания строковой константы для Log.whither и ввода ее каждый раз, когда я хочу что-то в консоли, и форматирования объекта в строку.
Тирта

1
Если ваш объект имеет значение null, toString (), очевидно, сгенерирует NPE. Никогда не следует вызывать toString () для объекта в операторе журнала, а использовать библиотеку журналов, которая будет выполнять эти проверки, если вы просто передадите объект.
Томас Эйзингер

15

Я использую метод Log.d также, пожалуйста, импортируйте import android.util.Log;

Log.d("TAG", "Message");

Но имейте в виду, что если вы хотите увидеть сообщения отладки, не используйте «Запуск от имени», а «Отладка как» и выберите «Приложение Android». В противном случае вы не увидите отладочные сообщения.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.