Получение logcat с Android-устройства тестера

У нас возникли проблемы с воспроизведением некоторых ошибок в приложении, которое мы разрабатываем, и поэтому я хотел бы получить журналы logcat с устройства Android тестера. Он не проводит испытания, подключенные к компьютеру, и у нас нет регулярного физического доступа к его машине, поскольку он проводит испытания в другом месте.

Как ему проще всего отправить нам журналы logcat после того, как он столкнулся с ошибкой? Пожалуйста, имейте в виду, что он не технический профессионал, но, похоже, он умеет создавать ошибки :)


person Andrew Wyld    schedule 03.10.2011    source источник
comment
Если у вас есть прямой доступ к его устройству через WiFi, я могу дать вам предварительную версию LogRabbit, которая позволит вам собирать журналы через WiFi и даже отлаживать через WiFI. Я хотел бы получить раннюю обратную связь, и это может помочь вам решить проблему. Все это предполагает, что вы можете получить физический доступ к его устройству и что вы используете Mac для разработки. Просто отправьте мне сообщение на [email protected].   -  person Yepher    schedule 12.12.2014


Ответы (5)


Лучший способ сделать AFAIK — установить приложение журнала, например: LogCollector: http://www.appbrain.com/app/log-collector/com.xtralogic.android.logcollector


Таким образом, тестер может отправлять данные журнала на вашу электронную почту или сообщение.

person Pete Houston    schedule 03.10.2011
comment
Это приложение не работает на более поздних версиях Android. Любые обновления? - person Andrew Wyld; 11.06.2013

Полезным инструментом для удаленного сбора сообщений журнала является www.remotelogcat.com. Его можно использовать для хранения строк или logcat для текущего приложения.

Вам нужно добавить разрешение:

<uses-permission android:name="android.permission.READ_LOGS" />

Для чтения логов.

person Fiach Reid    schedule 29.09.2015

Вы можете попробовать использовать PhoneHome. Будет работать >= 4.1 без рута, по существу вставляя слой между вашими вызовами журнала и logcat...

person Dori    schedule 11.12.2014

Попробуй это:

  • Загрузите приложение Logger на свое устройство: Logger — локальная отладка в автономном режиме https://play.google.com/store/apps/details?id=sk.rogansky.logger.app
  • Загрузите библиотеку Logger в свой проект и инициализируйте библиотеку.

Загрузите и инициализируйте библиотеку:

  1. Загрузите библиотеку Loger через зависимости compile 'sk.rogansky.logger:logger:+'
  2. Если вы хотите автоматически отправлять фатальные исключения в приложение Logger, инициализируйте библиотеку Logger в классе onCreate в приложении (не забудьте добавить класс в манифест).

    public class MyApp extends Application { @Override public void onCreate() { super.onCreate(); Log.initialize(getApplicationContext()); // to send fatal exceptions in RELEASE mode too, initialize Logger with unique string channel Log.initialize(context, channel); } }

    Добавить класс в манифест <application android:name=".MyApp"....

  3. Если вы хотите получать информацию о сети, добавьте разрешение в манифест <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Библиотека Logger имеет тот же интерфейс, что и java logger, но имеет некоторые приятные особенности. После инициализации библиотека автоматически отправит фатальные исключения в приложение Logger.

Вы тоже можете отправить свое сообщение. Просто добавьте действие к методу вызова.

import sk.rogansky.logger.Log;

Log.d(Log.Action.SHOW_NOTIFICATION, "TAG", "Message"); 
Log.d(Log.Action.SAVE, "TAG", "Message"); // it will save locally in Logger app

Все работает локально и в автономном режиме, но тестировщики могут обмениваться журналами через приложение Logger.

person Roland Rogánsky    schedule 01.07.2017

Я нашел способ собирать журналы без библиотек или приложений журналов. Вам нужно будет создать объект Process, выполнив команду Runtime и указав аргументы как:

new String[]{"logcat", "-v", "threadtime"}

Затем вы можете использовать InputStream из Process для чтения журналов. Пример кода и дополнительные сведения см. в этой статье: https://medium.com/@danileron/collect-testers-devices-logs-without-libraries-or-first-party-applications-9e6a7e609a2c

person Danil.B    schedule 16.09.2019