Чи потрібен доступ до logcat root?


9

Мій пристрій вже вкоренився, ось чому я запитую.

Вам потрібен root, щоб стежити за потоком logcat на телефоні? Якби я запустив команду logcat з терміналу по телефону, чи це би спрацювало?

Відповіді:


15

Ці безкоштовні додатки на ринку заявляють, що можуть відображати вашу логін-кот і не згадувати корінь. Спробуйте лише кілька хвилин, щоб спробувати їх:

EDIT: Дякуємо @mente за те, що він нагадував мені, що ці програми дозволять вам переглядати повний файл файлів лише в старих версіях Android. Android 4.1 представив нову модель безпеки навколо логінфілів, що означало, що програми можуть читати лише свої власні логіни та записи журналів, а також не можуть читати записи журналів, написані системою чи іншими програмами.

Проте користувач додатку може створити файл файлу останніх записів журналу програми, який надсилатиметься розробнику, і власник телефону може надати дозволи, щоб програма могла читати файл журналу без повного кореня, але це вимагає використання команди ADB, яка, на жаль, витягує її з місця недоступності більшості звичайних користувачів телефону:

Якщо ви хочете, щоб користувач надавав вам інформацію про налагодження, ви можете змусити їх створювати звіт про помилки з потужністю + зменшенням гучності + збільшенням обсягу, який включає журнали та безліч інших даних, і автоматично відкриває свою електронну програму, щоб надіслати її всім (плюс скріншот). Ми щойно обговорювали, що у нас також повинен бути простіший спосіб їх генерування, я збираюся розглянути щось додавання до програми налаштувань.

Я також почав впроваджувати концепцію дозволу на розробку, який читає журнали класифікується як. Це дозволяє додатку запитувати дозвіл, але не отримувати його при встановленні. Однак ви можете надати його командою adb shell після її встановлення. В якийсь момент я очікую, що у цій системі з'явиться інтерфейс користувача, але ми будемо відмовлятися від цього, щоб бути обережними, як ми це представляємо.

Уривок із публікації в групах Google від Діани Хакборн, інженер Android Framework. Мій акцент.

Згадана команда ADB для надання дозволу програми на читання журналів:

adb shell pm grant <pkg> android.permission.READ_LOGS

Цей параметр повинен пережити перезавантаження та оновлення програми (але не видаляти / перевстановлювати).


Починаючи з Android 4.1, вам потрібен кореневий доступ для читання журналів інших програм. Розробник CatLog розмістив пояснення . Припустимо, ці програми працюють для версій <4.1
менте

1
Цей ярлик не працює на моєму Android 4.1.2
менте

Я створив утиліту для збору журналів з ПК: gist.github.com/hrj/5983971
HRJ

4

Вам не потрібно викорінювати телефон, щоб запустити adb logcatAndroid SDK, але я просто перевірив його в своєму термінальному емуляторі, і мені довелося викорінити корінь (використовується suкоманда - мій телефон уже вкорінений), щоб запустити logcat у термінал на моєму телефоні.

Так так: якщо у вас є root на вашому телефоні, ви можете запустити logcat з терміналу на вашому телефоні.


1

Ні, вам не потрібен root, щоб отримати інформацію про logcat.

Для цього вам, ймовірно, потрібно завантажити SDK для Android та запустити "adb logcat", використовуючи інструмент adb, який постачається разом із SDK. Крім того, ви можете встановити плагін ADT Eclipse і використовувати його зручний переглядач протоколу Logcat.


я хочу це зробити з телефону, а не з віддаленої машини з SDK
Wulfbane

1

Ні, вам не потрібен root для доступу до logcat. Мій пристрій (Samsung Galaxy Note, пряник 2.3.6 із запасом ROM) не вкорінюється (поки що!), І я використовував такі способи доступу до журналу на своєму пристрої:

  • Додаток CatLog
  • додаток aLogcat
  • Активований додаток SSHDroid та підключений до терміналу пристрою за допомогою клієнта SSH
  • Використання Android SDK та запуск adb logcat

Однак додаток Terminal не дозволяє запускати logcat, і дає вам "дозвіл відмовлено". Я не впевнений, чому.


да, на пряник ... але сьогодні Android робить вимагає корінь.
NH.

1

Здається, ви не можете запустити logcat з термінального емулятора, не маючи root на телефоні. У цьому випадку ви повинні спочатку подати до суду. AFAIK, він походить від Android Permissions: Термінальному емулятору просто недостатньо дозволів для перегляду журналу пристрою. Так система каже, що в дозволі відмовлено.

З іншого боку, як говорили інші, є безліч додатків, які дозволяють переглядати журнал пристрою лише тому, що вони вимагають дозволу.


0

Додаток Android System Info має можливість виводити інформацію про журнал на екран, який, наскільки я можу сказати, є тією ж інформацією журналу, що і logcat.


У вас є посилання на цей додаток, я не можу його знайти на ринку?
GAThrawn

@GAThrawn Якщо ви все ще зацікавлені: домашня сторінка та посилання на Google Play Store .
Зуул

0

Logcat не потребує root. Simples - це стандарт де-факто у різних версіях стосовно різних версій Android і є частиною Android незалежно від того, ви вкорінені чи ні, і є стандартним засобом діагностики проблем, як, наприклад, - ви встановлюєте додаток, додаток закривається, ви скаржитеся на розробника згаданого додатка, ймовірність досить висока, розробник попросить "надіслати логкат" незалежно від того, ви вкоренилися чи ні!

aLogCat - це один із способів збору інформації, з можливістю входу до макета веб-сторінки чи простого тексту, майте на увазі, якщо ви плануєте її входити з певною частотою, наприклад, кожні 15 хвилин, SDCard заповнюватиметься досить швидко.

Інший аспект, використання logcat буде залежати від ядра з точки зору того, скільки воно може зберігатись - у будь-якому ядрі, яке використовується ROM, джерелом для ведення журналу з рівня ядра, де він резервує пам'ять для служби logcat. можна знайти у drivers/staging/android/logger.cвикористанні відповідних визначень, наприклад:

DEFINE_LOGGER_DEVICE (log_main, LOGGER_LOG_MAIN, 64 * 1024) DEFINE_LOGGER_DEVICE (log_events, LOGGER_LOG_EVENTS, 256 * 1024) DEFINE_LOGGER_DEVICE (log_radio, LOGGER_FOG_LOG_LOG_RAD_LOG_LOG_RAD_LOG_RAD_LOG_RAD_LOG_GROG_RAD)

Знову ж, пробіг буде змінюватися, деякі розробники таких ПЗУ вирішать мінімізувати споживання, щоб зменшити накладні витрати ...

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