Як виводити повідомлення на консоль Eclipse при розробці для Android


164

Як я можу надрукувати повідомлення (як прапор) на консолі Eclipse (або в журнал) під час розробки та налагодження програми для Android

Відповіді:


153

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

Погляньте на посилання наLog .

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


3
мій, мій, як це просто може бути .... ці маленькі ласощі допомагають тим з нас, які НОВІ на цих платформах. Дякую m6tt! FYI: тут є варіант фільтра, який допомагає ДУЖЕ ЧАС ~
— Sage

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

Вам потрібно додати перегляд журналу андроїд у затемненні, щоб побачити їх. Існують також інші методи залежно від тяжкості повідомлення (помилка, багатослівність, попередження тощо).


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

рятує мене від набору тексту. Я завжди люблю, коли Об'єкти піклуються про себе. ; )
— Тіртха

Він не скидає об'єкт, він друкує те саме, що і Log.
— Франциско Корралес Моралес

..і це все-таки рятує мене від створення константи рядка для Log.wever, і вводити його щоразу, коли я хочу щось в консолі, і форматувати об'єкт у рядок.
— Тіртха

1
Якщо ваш об’єкт недійсний, то toString () явно кине NPE. Ніколи не слід дзвонити toString () на об’єкт у виписці з журналу, а скоріше використовувати бібліотеку журналів, яка буде робити ці перевірки, якщо ви просто переходите в об’єкт.
— Томас Ейзінгер

15

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

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

Але врахуйте, що, коли ви хочете бачити повідомлення про налагодження, тоді не використовуйте Run As, а скоріше використовуйте "Debug As", а потім виберіть Android Application. Інакше повідомлення про налагодження ви не побачите.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.