Тестирование на реальном устройстве
Целью данной главы является написание минимального приложение под Android. Но мы никогда не будем точно знать, смогли ли мы написать нечто работоспособное, не попробовав запустить его на реальном устройстве. Этим мы и займёмся в этой статье.
Возможность тестирования на смартфоне предоставляется ADB (Android Debug Bridge). В этой статье мы настроим его и запустим наше приложение на настоящем смартфоне.
Что такое ADB
Android Debug Bridge (ADB) является универсальным инструментом командной строки, который способствует взаимодействию между средой разработки, в нашем случае Android Studio, и AVD-эмуляторами или физическими Android-устройствами для возможности запуска и отладки приложений.
ADB состоит из клиента, из сервера, который работает в качестве фонового процесса, на компьютере разработчика и из демона, который работает в качестве фонового процесса на каждом экземпляре эмулятора или реального устройства.
Настройка Android-устройства для работы с ADB
Для того, чтобы использовать ADB с устройством, подключенным по USB, необходимо разрешить USB-отладку в системных настройках телефона или планшета в разделе «Параметры разработчика» (название может отличаться). На некоторых устройствах этот раздел по умолчанию скрыт. Рассмотрим шаги в случае, когда нет нужного раздела настроек.
- Зайдите в настройки, раздел «Об устройстве»
- Найдите пункт «Номер сборки» и щёлкните по нему 7 раз. Должно появиться окно, оповещающее о том, что активирован режим разработчика. Теперь в настройках должен появиться раздел параметров разработчика.
- Включите в нём опцию «Отладка USB».
Теперь, когда вы подключаете устройство к компьютеру, в зависимости от модели у вас может появиться новый вариант подключения.
Настройка ADB на Windows
При настройке Windows, во-первых, убедитесь, что у вас установлен Google USB Driver. Зайдите в SDK Manager в раздел Extras и найдите Google USB Driver, установите его в случае необходимости.
Теперь следует обновить драйвер. Подключите девайс к компьютеру, перейдите в Панель управления -> Оборудование и звук -> Диспетчер устройств найдите своё устройство. Щёлкните правой клавишей по своему устройству, чтобы открыть контекстное меню и выберите «Обновить драйверы. «. Драйвер можно найти в директории sdk в подпапке \extrasgoogleusb_driver.
Как проверить правильность настроек ADB?
Для проверки работоспособности ADB подключите устройство к компьютеру, запустите в папке \platform-tools командную строку и введите в ней команду:
Должен появится список наподобие этого:
Запуск приложения на реальном устройстве
Всё тоже самое, что и в случае запуска на эмуляторе. Откройте в Android Studio наш проект, нажмите на зелёный треугольник, но в появившемся окне выбора устройства выберите ваш девайс.
Если написано, что девайс offline, перевоткните USB и разрешите USB-отладку компьютеру:
В результате на экране телефона или планшета покажется наше приложение.
Заключение
На этом заканчивается глава. Мы добились успеха: смогли настроить нашу систему под разработку Android-приложений и даже запустить одно из них на настоящем устройстве.
Если у вас что-то активно не получается или вы запутались, отпишитесь, пожалуйста, в комментариях и я помогу вам разобраться с вашей проблемой.
Использование отладчика Android Studio по максимуму
Это хитрость, о которой я узнал совсем недавно у Senior Android разработчика в моей компании, и теперь я чувствую себя несчастным, сожалея о времени, которое я провел в ожидании сборки Gradle, чтобы проверить свои изменения при написании Android приложений.
Вот типичный сценарий, который каждый Android разработчик мог бы встретить, по крайней мере, один раз в течение своего жизненного цикла разработки. У вас есть список элементов, которые вы хотите показать в ListView или RecyclerView.
Ниже приведен наш возлюбленный метод onBindViewHolder , который связывает вашу модель с вашими view-компонентами RecyclerView.
Теперь, допустим, вы захотели изменить цвет текста для каждого третьего элемента в списке. Таким образом, код будет выглядеть примерно так:
Затем вы нажмёте Run и дождётесь завершения сборки и увидите ваши изменения, так?
Теперь вы бы подумали, существует ли другой путь для достижения этой же цели?
Твой выход, Android Studio! Да, нам не нужен внешний плагин или инструмент для достижения вышеупомянутой задачи и более того, нам даже не придется заново собирать проект. Вы не ослышались, мы обойдёмся без Gradle 🙂 Вот как!
Шаг 1 — Необходимо определить конфигурацию запуска
Такая конфигурация запуска позволит нам запускать наше приложение и присоединять к нему отладчик из Android Studio, а также вы сможете присоединить его к уже запущенному процессу.
Нажмите Run → Edit Configurations.
В верхнем левом углу диалогового окна щелкните значок «+» и выберите Android App.
Теперь дайте ему имя, мне нравится называть его Run-Only, но вы можете называть его как угодно.
Выберите модуль, который содержит код вашего приложения, в приведенном ниже скриншоте он называется app.
Важный шаг:
В разделе Installation Options выберите Nothing;
В Launch Options выберите Default Activity;
В разделе Before Launch удалите Gradle-aware Make.
Таким образом, конфигурация должна выглядеть следующим образом:
Теперь вы можете применить и сохранить эту конфигурацию. Сейчас она должна быть выбрана автоматически. Если нет, то просто выберите её из списка.
Теперь поставьте breakpoint поближе к строке, которую вы хотите проверить. В нашем случае мы разместим ее там, где мы устанавливаем текст.
Щелкните правой кнопкой мыши на breakpoint и снимите флажок Suspend (рус. приостановить).
Как только вы снимете флажок, диалог расширится и покажет больше опций.
Нам интересен раздел Evaluate and log. Мы напишем там выражение, чтобы проверить изменения в нашем элементе RecyclerView. Нажмите на маленький значок голубого цвета справа от окна ввода Evaluate and log, чтобы развернуть его до более крупного редактора, и добавьте выражение для тестирования, и нажмите Ok, а затем Done.
Теперь нажмите на иконку Debug с выбранной конфигурацией Run-Only и посмотрите на эту магию.
Приложение должно запуститься с вашей Activity по умолчанию, и вы должны увидеть внесенные там изменения. Также, если вы уделяете пристальное внимание IDE, в самом низу вы увидите только одну запускаемую задачу: Launching Activity.
Общая информация об отладке в Android Studio
Студия позволяет отлаживать приложения на эмуляторе и на реальных устройствах. Вы можете просматривать системный журнал логов, устанавливать точки останова, проверять значения переменных и вычислять выражения во время работы, делать скриншоты и видеозаписи.
Когда вы разрабатываете приложение, то студия собирает отладочную версию программы, соединяется с устройством/эмулятором, устанавливает и запускает её.
Обычно для запуска приложения вы используете значок с зелёным треугольником Run (Shift+F10) на панели инструментов. Для отладки следует нажимать соседнюю кнопку Debug (Shift+F9) с изображением жучка .
Остальные действия будут идентичными — вам надо выбрать устройство, на котором будет происходить отладка.
Android Studio откроет окно Debug. Можно открыть его вручную через кнопку 5: Debug в нижней части среды разработки. Окно показывает потоки и переменные в вкладке Debugger, статус устройства в вкладке Console и системные логи в вкладке Logcat.
Если приложение уже запущено, то необязательно его перезапускать для работы в отладочном режиме. Вы можете нажать на кнопку Attach debugger to Android proccess , которая идёт сразу после кнопку с жучком.
В вкладке Logcat вы видите системные сообщения, включая сообщения от вашей программы, если вы использовали их своём коде. Для записи логов используется класс Log. Подробнее о нём в отдельной статье.
Логи можно просматривать также через панель Android DDMS (Dalvik Debug Monitor Server) — запускается через кнопку 5: Android в нижней части студии. В Android DDMS вы можете просматривать логи только нужного процесса, если нажмёте на кнопку Only Show Logcat from Selected Process .
Точки останова (Breakpoints)
Точки останова позволяет приостановить выполнение программы на нужной строчке кода, проверить значение переменных, запустить выражение и продолжать выполнение кода строчка за строчкой. Позволяет выявить ошибки, которые не удаётся вычислить простым просмотром кода.
Откройте свой исходник, определите строку кода, в которой хотите поставить точку останова и щёлкните по ней. Строка окрасится в жёлтый цвет. Щёлкните в левой части редактора кода в серой области. В этом месте появится красный кружок (повторный щелчок уберёт его), а строка примет розовый цвет. Точку останова можно ставить не только для исполняемого оператора, но и на комментарии.
Запустите приложение в отладочном режиме. Когда выполнение программы дойдёт до установленной точки останова, то студия прекратит дальнейшее выполнение приложения, кружок станет ещё более красным и строка будет выделена. И затем вы можете попытаться выявить причину ошибки.
Для просмотра всех точек останова и их настроек щёлкните на кнопке View Breakpoints в левой части панели Debug . Появится отдельное диалоговое окно.
После того, как вы установили точки останова, щёлкните кнопку Rerun для повторного запуска программы. Когда выполнение кода дойдёт до установленной точки останова, студия выполнит паузу и подсветить строку кода. Панель Debug позволит проверить переменную и выполнить код шаг за шагом.
Для проверки переменных раскройте список в панели Variables. Если панель не видна, то щёлкните кнопку Restore Variables
Для вычисления выражения в текущей точки щёлкните кнопку Evaluate Expression
Для перехода на следующую строку кода без выполнения щёлкните кнопку Step Over .
Для перехода на первую строку кода внутри метода щёлкните кнопку Step Into .
Для перехода на следующую строку за пределами текущего метода щёлкните кнопку Step Out .
Чтобы продолжить работу приложения в нормальном режиме, нажмите кнопку Resume Program .
Отслеживание потребления памяти
Студия позволяет также отслеживать потребления памяти объектами и показывает, какие классы и потоки используют объекты.
Запустите студия в отладочном режиме, щёлкните 6: Android, чтобы открыть панель Android DDMS. Выберите вкладку Devices | logcat, выберите ваше устройство из выпадающего списка, выберите вашу программу по имени пакета из списка запущенных программ.
Щёлкните кнопку Start Allocation Tracking . Начинайте пользоваться программой.
Повторно нажмите на предыдущую кнопку Stop Allocation Tracking. Студия покажет объекты, выделенные системой для работы.
Android Device Monitor
Для анализа потребления памяти, сетевого трафика, поведения приложения при входящих звонках можно использовать графический инструмент Android Device Monitor. Щёлкните кнопку Monitor на панели инструментов. Android Device Monitor откроется в новом окне. Опытные программисты увидят знакомое окно, когда работали с Eclipse.
Скриншоты и видео
Вы можете делать скриншоты и видео работающего приложения.
Запустите приложение и откройте панель 6: Android. Щёлкните кнопку Screen Capture в левой части панели.
По такому же принципу можно сделать видеозапись через кнопку
Источник https://aristov-vasiliy.ru/knowledge/hello-world-v-android-studio/testirovanie-na-realnom-ustroystve.html
Источник https://habr.com/ru/post/419613/
Источник https://developer.alexanderklimov.ru/android/debug/basic.php