2017-01-16 17 views
-1

У меня есть создали окна пакетный файл (log.bat), как этот ниже:Получение ADB журналов на ПК с помощью пакетного файла в то время как Android приложение работает

adb logcat -c 
adb logcat -d > log.txt 

Но вскоре выходит всякий раз, когда я нажимаю журнал .bat.

Я хочу, чтобы он продолжал записывать журналы, если я не нажму ctrl + C.

ответ

1

От doc

-с: Очищает (флеши) весь журнал и выходит.

-d: Сбрасывает журнал на экран и выходит.

Итак, в обоих случаях выполнение останавливается после запуска команды logcat с этими параметрами. Попробуйте это,

adb logcat -c && adb logcat > log.txt 

Это не позволит выполнение оболочки, будет выпущен, когда он выполняет logcat -c и начнет следующую команду сразу после того, что adb logcat > log.txt, что собирается писать лог в LogCat, доколе вы нажмете Ctrl + c.

+0

Спасибо, сработало. Как я могу получить журналы для определенных тегов, таких как D/BatteryService && E/Watchdog && V/MyAPP. Есть ли какое-либо правило, которое я могу создать или добавить в команду, которую вы отправили? – Raulp

+0

Я не пробовал это самостоятельно, но думаю, что это поможет вам найти то, что вы ищете. http://stackoverflow.com/questions/6173985/filter-output-in-logcat-by-tagname – fluffyBatman

0

Мне нужно создать командный файл, который может скопировать файл журнала на ПК. Созданный пакетный файл не работает. Когда я запускаю все команды вручную, он работает, но при вставке в скрипт он зависает. Вот отдельные команды:

Попробуйте эту команду однолинейной:

$adb shell run-as com.example.name cat /data/data/com.example.name/files/logfile.log > c:\logs\logfile.log 
1

Это выглядит проблема с помощью опции -d с LogCat. Пожалуйста, проверьте использование:

-d Вывести журнал, а затем выйти (не блокировать)

Удаление это решит вашу проблему.

+0

Спасибо! Да. – Raulp