Debug android app linux

ADB в Linux: установка и настройка

ADB (Android Debug Bridge) — это программа для отладки устройств, работающих под управлением Android. Изначально создание этой утилиты было необходимо для поиска и исправления ошибок в приложениях и системе в целом. Поэтому ее облюбовали разработчики.

С течением времени нашлось много энтузиастов, которые использовали ADB для решения других задач. Например, запрашивали данные об используемой устройством памяти или управляли файлами в дебрях файловой системы. Поэтому утилита прославилась среди поклонников покопаться во внутренностях собственных гаджетов.

С помощью ADB можно делать резервные копии данных, загружать на устройство файлы. Можно удалять данные и устанавливать приложения. При этом через ADB легко получить доступ к журналам с различной полезной информацией об устройстве (в основном для разработчиков).

Причем, узнав о возможностях ADB, ее принялись изучать даже те, кто понятия не имел, что представляет собой командная строка и как с помощью нее можно управлять компьютером или смартфоном. Да и не так уж это сложно, как может показаться на первый взгляд.

Как установить ADB?

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

Но можно вытянуть только Android Debug Bridge без других компонентов. Причем для этого не нужно никаких особых навыков. ADB доступна во всех популярных репозиториях, поэтому для ее загрузки хватает одной команды:

  • В Debian и ей подобных (Ubuntu, Mint) — sudo apt-get install android-tools-adb
  • Для Red Hat Enterprise Linux и CentOS — sudo yum install android-tools-adb
  • В openSUSE — sudo zypper install android-tools-adb
  • Для новых редакций Fedora — sudo dnf install android-tools-adb

Также SDK со всеми необходимыми инструментами можно загрузить на официальном сайте Android Studio. В пакет включена и программа Android Debug Bridge. Этот вариант подходит тем, кто не хочет работать с графической средой Android Studio.

Настройка мобильного устройства для работы с ADB

Для работы с ADB мобильное устройство тоже нужно подготовить. Необходимо перевести смартфон или планшет в специальный режим работы.

  • Открываем настройки устройства.
  • Ищем пункт «О телефоне» и переходим в него.
  • Ищем номер версии операционной системы и нажимаем на него десять раз.
  • После этого переходим в пункт меню «Для разработчиков».
  • И в конце ставим галочку напротив пункта «Разрешить отладку по USB».

Основные функции ADB

Перед тем как начать работу с ADB нужно запустить программу-демон. Некий сервер, который будет обрабатывать команды, передаваемые на смартфон, и позволять работать с файловой системой Android напрямую.

  • Открываем терминал.
  • Вводим команду adb start-server.
  • Нажимаем на клавишу «Ввод» (Enter), чтобы включить сервер.
Читайте также:  Rimworld linux save location

Команда запуска сервера ADB

Начинаем работу с Android Debug Bridge

Cообщение об успешном запуске ADB-сервера

Все, теперь можно управлять мобильным устройством.

Сервер должен оставаться запущен все время, пока вы работаете непосредственно со своим мобильным устройством.

Перед тем как лезть в файловую систему Android, стоит хорошо подумать и осознать, что любые действия нужно выполнять по инструкции. При этом все операции выполняются на свой страх и риск. Потому что существует далеко не нулевой риск что-нибудь сломать.

Работаем со списком устройств

Первое, что вы можете сделать — ввести команду adb device, чтобы проверить количество подключенных устройств и узнать их номера. Это может понадобиться в том случае, если к вашему компьютеру подключено сразу несколько Android-гаджетов и вы хотите ими всеми управлять.

Чтобы это сделать, нужно перед каждой последующей командой вводить -s номер устройства.

Проверяем состояние гаджета

Теперь можно ознакомиться с текущим состоянием гаджетов. Это можно сделать с помощью команды adb get-state.

После ее ввода в ответ вы получите один из маячков:

  • device — это значит, что устройства работает в штатном режиме.
  • bootloader — это значит, что устройство еще не работает, а только загружается.
  • offline — это значит, что устройство не работает и не загружается.

Сразу покажу пример, как использовать эту же команду для конкретного устройства. adb -s номер устройства get-state. И так для любых других команд и опций.

Просматриваем логи устройства

С помощью ADB можно постоянно мониторить состояние устройства, моментально получая информацию об ошибках и изменениях в системе. Для этого используется команда abd logcat.

Если ввести ее без дополнительных опций, то в ответ получите аналог интерактивного чтения файла-журнала.

При желании можно записать все полученные данные в файл. Для этого нужно его создать.

Команда будет выглядеть так: adb logcat -d > /название файла.log

Передаем файлы с компьютера на мобильное устройство и обратно

Для управления файлами на Android-устройстве через ADB используются две команды — pull и push. Первая вытягивает файл с гаджета на компьютер, вторая передает его с компьютера на мобильное устройство.

Для начала передадим файл с компьютера на Android-устройство. Структура команды будет выглядеть так — adb push путь до файла, который нужно передать и путь до папки, куда нужно передать файл с указанием файла, который нужно передать. Выглядит сложновато, но на деле все просто.

Вот наглядный пример: adb push /home/picture.jpg /sdcard/picture.jpg

С помощью этой команды мы передаем файл picture.jpg с компьютера на SD-карту мобильного устройства.

Обратный путь выглядит примерно также. Только вместо push используем pull.

Устанавливаем и удаляем приложения

Приложения для Android распространяются в формате APK. Имея на компьютере такой файл, можно с помощью ADB установить его прямо на мобильное устройство.

Делается это предельно просто. Вводим команду adb Install и путь к файла в формате APK.

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

Важно отметить — если на вашем телефоне или планшете уже есть такая же программа, но вы просто хотите установить более свежую версию, надо перед словом install прописать -r.

Тогда команда будет выглядеть так: adb -r install и путь до файла в формате APK

Чтобы стереть приложение с устройства, надо использовать команду adb uninstall. Она работает по тому же принципу. Прописываем команду, а следом за ней название пакета, который нужно удалить из телефона.

Читайте также:  Can login kali linux

Создаем резервные копии данных

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

Команда для создания резервных копий строится следующим образом:

  • Сначала вводим adb backup.
  • Затем указываем опции для настройки резервной копии.
  • Потом указываем пакеты данных, которые надо сохранить (при желании).
  • Указать имя файла с резервной копией (при желании).

Вот список доступных опций:

  • -apk — добавляет в резервную копию APK-файлы приложений.
  • -obb — добавляет в резервную копию расширения, установленные в систему.
  • -shared — добавляет в резервную копию данные с карт памяти.
  • -system — добавляет в резервную копию все системные компоненты.
  • -all — сохраняет в копию все данные с мобильного устройства.

В итоге команда по созданию полноценной резервной копии всех данных с устройства будет выглядеть так: adb backup -apk -obb -shared -all

Перезагружаем устройство

С помощью ADB Android-гаджет можно быстро перезагрузить или загрузить в режиме восстановления. И то, и другое может оказаться полезным для разработчиков.

Для обычной перезагрузки используйте команду adb reboot

Для перезагрузки в режиме восстановления — adb reboot recovery

Переходим в режим ADB Shell

В этом режиме вам переходит полное управление Android-устройством. По сути, терминал в котором вы работаете, превращается в командную строку подключенного устройства.

В этом режиме вам доступны команды совершенно другого уровня. Например, можно запустить запись экрана или сделать скриншот. Также можно полноценно перемещаться по файловой системе устройства.

Чтобы переключаться на режим управления ADB Shell, нужно ввести в терминал команду adb shell. После этого изменится оболочка, в которой вы работаете, и в ее рамках начнут действовать иные команды.

Источник

How to Remote Debug Android Web Apps and Websites in Linux

Debugging websites and web apps meant for mobile devices can help in fixing issues and improve user experience on handheld devices. This article will explain how to debug any website running in a Chrome / Chromium-based browser or webview on an Android device. Note that Firefox also supports remote debugging from Android devices. However, I couldn’t get it to work on my Linux system, so the article will only cover instructions for debugging websites/web apps rendered in Chrome browser or Chrome / Chromium based webviews on an Android device.

In order to debug any web page currently visible in Chrome browser or webview on an Android device, you will need to enable USB debugging and connect your Android device to a Linux PC via a USB cable.

Enabling USB Debugging on an Android Device

The USB debugging toggle can be found under the hidden “Developer Options” menu on Android devices. To enable the developer options view, you have to tap “Build Number” entry 7 times in system settings. As there are numerous Android devices with different user interfaces and versions, there is no one set standard way to find the build number. You can use the search bar in Android system settings to locate and directly go to the build number option, or you can manually navigate system settings to find it. Usually, it lies in the same menu that shows the Linux kernel version on an Android device.

Читайте также:  Skyrim linux нет звука

Once you have enabled developer options, toggle the switch for USB debugging. Be careful not to touch other settings in developer options as misconfiguration can lead to system breakage. For reference, here is how the USB debugging option looks like on my Samsung Android device:

Installing Android Debug Bridge (ADB) on Linux

ADB is an official debugging tool provided by Google to debug Android OS and Android devices. It facilitates data sharing and communication between a PC and an Android device. ADB is required for remote debugging of a web page currently live on an Android device. It is also used to authenticate and verify your Android device’s connection with your Linux PC.

To install ADB on Ubuntu, run the command below:

ADB packages are available by default on almost all major Linux distributions. If you are using a Linux distribution other than Ubuntu, search for the term “ADB” in the package manager and install it from there.

Now connect your Android device to your Linux system through a USB cable. In case you are connecting your USB debugging enabled Android device for the first time, you will receive an authorization prompt on your Android device. You must accept it to proceed further. Run the command below after accepting the prompt to check the successful connection and authentication status:

The screenshot below shows the output of the command. If you can see a serial number under the “List of devices attached” heading, a successful connection has been made. If there is an “unauthorized” keyword just next to the serial number, unplug the device, reconnect it and then accept the authorization prompt again (you may have missed the prompt or accidentally closed it).

Remote Debugging a Mobile Web Page on Desktop Chrome Browser

Type “chrome://inspect/#devices” URL in the Chrome address bar and hit enter key. Check the “Discover USB devices” checkbox. You will now be able to see a list of all websites/web apps opened in Chrome, Chromium, or any Chrome / Chromium-based browser or webview on your Android device.

Just click on the “inspect” link to start debugging. You will get the same full set of developer tools that is available for debugging websites on a desktop PC.

Note that the website or webapp your debugging should be visible and live on your Android device. If you switch apps, tabs, or turn off-screen, the preview area may be greyed out.

Conclusion

Connecting your Android device to a Linux PC for remote debugging websites is pretty straightforward and takes a couple of steps. While you can debug responsive layouts and simulate mobile views on the desktop itself, remote debugging is especially useful if you are developing hybrid apps for Android or using webviews.

About the author

Nitesh Kumar

I am a freelancer software developer and content writer who loves Linux, open source software and the free software community.

Источник

Оцените статью
Adblock
detector