Ведение журнала при отключении устройства Android - PullRequest
1 голос
/ 19 февраля 2020

Logcat отлично работает, когда устройство подключено к Android Studio. Но как регистрировать данные, когда устройство отключено от Android Studio, но мне все еще нужно получить некоторую информацию для последующего анализа?

1 Ответ

0 голосов
/ 23 марта 2020

Это НЕ требует рутирования вашего устройства, НЕ изменение кода вашего приложения, НЕ подписка на сторонний сервис, НЕ ваше приложение в Google Play. Если вы можете или хотите сделать некоторые из этих вещей, есть другие решения.

Однако это решение DOES требует, чтобы компьютер был рядом, включен и подключен к той же сети, где устройство подключено (не обязательно к inte rnet).

Начните с подключения устройства к компьютеру через USB, а затем запустите adb devices, чтобы убедиться, что оно есть. Если он находит более одного устройства (например, эмулятор и телефон), отключите / закройте все, кроме того, которое вы хотите отлаживать, чтобы упростить задачу и не спутать одно устройство с другим. Затем запустите adb tcpip 5555, чтобы переключить android в режим tcp, что позволит выполнять отладку по сети (вместо USB).

На этом этапе вам нужно найти IP-адрес вашего телефона, и вы можете сделать это различными способами. Самым простым является запуск adb shell ip -f inet addr show wlan0, который ответит примерно так:

11: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    inet 192.168.x.x/yy brd 192.168.0.255 scope global wlan0
       valid_lft forever preferred_lft forever

Отключите устройство от USB компьютера обычным способом. Подключите его снова «по воздуху», набрав adb connect 192.168.x.x, заменив x на IP-адрес, указанный выше (сразу после inet). Если устройство и ваш компьютер находятся в одной сети (например, один и тот же Wi-Fi или сочетание Wi-Fi и т. Д. rnet от одного маршрутизатора), он должен подключиться. В противном случае вам может потребоваться отладка сети, что представляет собой совершенно другую проблему (но обычно не обязательную).

Иногда вы можете подключиться к устройству, но оно отображается как «автономное». Большую часть времени ожидания в течение одной минуты автоматически решит проблему. Если в течение одной или двух минут проблема не устранится сама, вам необходимо отладить ее, например, как описано в этом вопросе

На этом этапе устройство должно появиться в выпадающем списке доступных устройства в Android Studio, и вы сможете отлаживать его, как если бы он был подключен через USB. Однако в некоторых случаях я обнаружил, что logcat в Android Studio не обновляется в этой настройке. Если это произойдет, запустите adb logcat, и вы увидите logcat на компьютере. Это будет содержать слишком много информации, поскольку включает в себя все, что выполняется на вашем устройстве, а не только ваше приложение - поэтому вам нужно будет отфильтровать его, например, с помощью adb shell logcat --pid NNNN, где NNNN - это PID вашего приложения. Чтобы найти такой PID, запустите adb shell "ps -A | head -1; ps -A | grep -i com.example" (используйте пакет java вашего основного занятия вместо com.example), который ответит примерно так:

USER           PID  PPID     VSZ    RSS WCHAN            ADDR S NAME                       
u0_a105       NNNN  1511 4970004 182688 0                   0 S com.example

Когда закончите, запустите adb usb, чтобы восстановить обычную USB-отладку телефона.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...