приложение для отладки андроид в меню разработчика
Все о функциях разработчика в вашем телефоне
Константин Иванов
Настройки, которые используются для отладки и для разработки приложений, спрятаны в вашем телефоне – спрятаны в прямом смысле слова. Многие из нас идут в соответствующий раздел меню, чтобы запустить отладку USB или переключиться к рабочему модулю ART, но кроме этого, здесь имеется целый список настроек. Большая часть никогда вам не понадобится, но разве не интересно узнать, что скрывается в недрах вашего устройства?
«Разблокируем» функции разработчика в телефоне
Как говорилось выше, эти функции изначально скрыты. Это имеет смысл, поскольку найти их просто, а большинству людей они попросту не нужны. Для того, чтобы добраться до них, идем в раздел «Об устройстве» и ищем там пункт «Номер сборки». После пяти быстрых тапов появляется диалоговое окно – теперь устройство считает вас разработчиком. Только попробуйте ничего не испортить, ладно? Ну, или делайте что хотите – тоже вариант. Так или иначе, возможность заставить ваш телефон перестать работать всегда имеется.
А теперь посмотрим на предложенные функции повнимательнее.
Настройки
Понятно, что большинству пользователей все эти настройки ни на что не сдались. Кроме того, лезть туда и нажимать на пункты меню ради самого процесса — не лучшая идея. Но всегда стоит знать, что вообще можно сделать, хотя бы и просто для того, чтобы не делать этого никогда.
Надеемся, что наш рассказ просветил вас немного по вопросу этих настроек и опций, записанных непонятными словами. Кстати, в зависимости от выбранного языка системы, производителя и версии ОС Android, набор пунктов может несколько отличаться разделами и их названиями.
Обзор средств запуска и отладки приложений на Android
Разрабатывая свое первое приложение под Android, я столкнулся с проблемой запуска приложения для проверки и отладки. Эта статья должна помочь начинающему пользователю выбрать средство эмуляции.
Содержание:
Android Virtual Device (AVD)
Установка:
Это средство эмуляции встроено в Android SDK.
Настройка:
(на примере использования в Eclipse)
Window > Android SDK and AVD Manager > New
Вписываем имя виртуального устройства, платформу, размер карты памяти, тип дисплея…
Жмем Create AVD.
Запуск:
Первый запуск эмулятор длиться очень долго, особенно на слабых устройствах. Например, я так и не смог дождаться первого запуска на своем нетбуке, а, запуская первый раз на компьютере, был уверен, что эмулятор ушел в вечный цикл.
Последующие запуски эмулятора будут чуть шутрее.
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе проходит в среднем 11 секунд. Замеры проводил на достаточно производительном компьютере.
Преимущества и недостатки:
+ возможность протестировать приложение на разных версиях ОС Android, на устройствах с разными типами дисплея…
+ различные настройки, необходимые для тестирования, например, смена ориентации экрана
+ эмуляция SD-карты
— большой промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
— эмулятор работает очень медленно, например, то, что телефон обрабатывал 1-2 секунды, эмулятор делал за 8-10 секунд
VirtualBox+Android x86
Запуск:
Время между нажатием кнопки «Run» и появлением главного активити тестового приложения на эмуляторе не засекал, но, по субъективным ощущениям, это происходит почти мгновенно.
Преимущества и недостатки:
+ маленький промежуток времени между нажатием кнопки «Run» и запуском приложения на эмуляторе
+ местами шустрая работа
— достаточно длительная и иногда проблематичная установка
— эмулятор работает местами медленно, имеются проблемы с изображением (особенно на MDPI)
— проблемы с эмуляцией SD-карты, сменой ориентацию экрана,…
— только два (три) доступные версии ОС Android и только два доступных типа дисплея
Телефон с ОС Android, подключенный через USB
Запуск:
Между нажатием кнопки «Run» и появлением главного активити тестового приложения на телефоне проходит порядка 5 секунд.
Преимущества и недостатки:
+ возможность увидеть приложение так, как его будет видеть пользователь (очень важным момент, особенно при создании интерфейса и дизайна приложения)
+ мультитач (если есть в телефоне)
+ смена ориентации экрана, акселерометр (если есть в телефоне)
— только одна версия ОС и один тип дисплея
— на физическом рабочем столе появиться еще один объект
Выводы:
Я пробовал работать с каждым из этих средств эмуляции и остановился на таком варианте:
1. написание и тестирование приложения, используя телефон;
2. тестирование приложения на многочисленных Android Virtual Device с различными комбинациями версии ОС и типа дисплея.
Надеюсь, что читающий сделал выбор эмулятора или почерпнул для себя что-то новое.
Удачи в тестировании!
Режим отладки по USB на Android
Содержание
Содержание
Режим отладки — это инструмент для разработчиков. Когда смартфон подключают к ПК, в этом режиме ищут ошибки в программном обеспечении. Однако в некоторых случаях отладка может пригодиться и обычному пользователю. Давайте разберемся, как ее включить и для чего можно использовать.
Как активировать
Чтобы получить доступ к режиму отладки по USB, сперва нужно включить системный раздел «Для разработчиков». Для этого откройте приложение «Настройки» и перейдите в раздел «О телефоне». Затем тапните несколько раз на «Номер сборки», пока не увидите подсказку «режим отладки включен». В зависимости от версии Android и конкретной оболочки, названия опций могут отличаться. Для подтверждения придется ввести код разблокировки устройства.
Теперь зайдите в подраздел «Система» — здесь появится новый пункт. Активируйте режим разработчика, далее прокрутите список и найдите пункт «Отладка по USB».
Настройка ПК
Чтобы воспользоваться отладкой, необходимо установить на компьютер программу ADB. Android Debug Bridge – это одна из составляющих универсального средства разработки Android SDK. Чтобы не устанавливать весь SDK целиком, скачиваем только ADB. Отдельно его можно загрузить, например, на ресурсе XDA-Developers.
Распаковываем архив в легкодоступную папку, например, в корень системного диска:
Теперь надо открыть командную строку из этой папки. Это можно сделать, удерживая Shift и щелкнув правой кнопкой мыши на свободном месте окна, а затем выбрать параметр «Открыть окно PowerShell».
Подключите смартфон к компьютеру. Измените режим USB на режим «передачи файлов (MTP)». В окне командной строки введите команду «adb devices» (без кавычек).
На экране телефона вы увидите всплывающее окошко — нажимайте «разрешить доступ для отладки по USB». Наконец, повторно введите команду «adb devices». Если все прошло успешно, вы должны увидеть серийный номер вашего устройства в командной строке.
Готово: теперь вы можете запускать любую команду ADB на своем устройстве.
Для чего нужен режим отладки
Как было сказано выше, отладка по USB в основном используется мобильными разработчиками. Подключая смартфон к ПК, они получают возможность практически мгновенно протестировать написанное приложение. Но мы разберем, чем может пригодиться отладка обычному пользователю.
Например, получение Root-прав. Android создавался на базе ОС Linux, откуда и перенял основные принципы. Традиционно, Root — это название учетной записи администратора, которая имеет неограниченные права. Получив такой доступ, вы сможете делать со смартфоном что угодно: удалять и редактировать системные файлы, стирать встроенные приложения, устанавливать пользовательские модификации, разгонять процессор и многое другое.
Root-права также позволяют поставить кастомное рекавери (TWRP). Это меню, при помощи которого можно устанавливать альтернативные прошивки. Для каждого телефона способ получения «рута» отличается — нет какой-то универсальной инструкции. Мануалы для конкретного смартфона можно найти, например, на форуме 4PDA.
Важно понимать, что все действия с телефоном вы проводите на свой страх и риск. При получении «рута» вы лишаетесь гарантии, также есть небольшой шанс превратить устройство в «кирпич» — попросту говоря, оно перестанет включаться. Помимо этого, увеличивается риск подхватить вирус, который, используя расширенные права доступа, сможет выполнить гораздо больше зловредных действий.
Ранее режим отладки использовался для доступа к некоторым скрытым функциям системы при помощи командной строки. Однако с появлением Android 10, большинство таких опций можно включить напрямую с телефона — из вышеупомянутого раздела «Для разработчиков». Например, чтобы включить опцию записи экрана, найдите «Экспериментальные функции» и активируйте флажок напротив «settings_screenrecord_long_press toggle»:
Тем не менее, старый способ тоже доступен: введите в PowerShell команду «adb shell settings put global settings_screenrecord_long_press true». Она также активирует возможность записи экрана смартфона.
Полезные команды
Когда смартфон подключен в режиме отладки по USB, можно выполнять различные действия с помощью командной строки. Приведем несколько интересных команд:
Режим отладки может быть полезен пользователям, которые хотят модицифировать Android-смартфон: устанавливать кастомные прошивки и пользовательские патчи, а также получить доступ к административным правам. На альтернативной платформе iOS таких возможностей нет. Однако если вы не до конца понимаете, как это работает, то лучше не экспериментировать, чтобы избежать неприятных последствий.
Как включить режим разработчика на Android
Режим разработчика на Android – это специальный набор функций, который по умолчанию неактивен и скрыт. После активации он открывает доступ к набору вспомогательных настроек и возможностей. Среди них: дополнительные пункты для работы с железом и ПО смартфона, инструменты для отладки, ведения логов, создания отчетов, диагностики устройства и т.д.
В большинстве случаев, функции режима разработчика мало интересны простому пользователю, так как предназначены в первую очередь для профессионалов: программистов, разработчиков прошивок, создателей приложений и мастеров сервисных центров. Но иногда необходимость воспользоваться режимом разработчика возникает и у рядового пользователя. Без обращения к скрытым в этом разделе функциям не обойтись, когда нужно включить отладку по USB, разрешить разблокировку загрузчика или показать касания на экране (к примеру, для записи скринкастов). А как активировать этот режим и попасть в его меню, читайте ниже.
Как включить режим разработчика на Android
На Android 4.1 и ниже, пункт «Для разработчиков» расположен в меню настроек. В новых версиях ОС он по умолчанию скрыт.
Для его активации, начиная с Android 4.2 и заканчивая Android 7.1, зайдите в настройки и найдите раздел «О телефоне» (в конце меню настроек). Отыщите там пункт «Номер сборки» и быстро нажмите по нему 7 раз подряд.
На экране появится сообщение, в котором будет написано, сколько раз осталось кликнуть. Продолжайте, пока не увидите уведомление «Вы стали разработчиком!».
После этого раздел «Для разработчиков» появится в главном меню настроек.
Как активировать пункт «Для разработчиков» на Android 8 и 9
На Android 8.0 и новее, чтобы включить меню для разработчиков, перейдите в разделе «Система» (последний пункт меню настроек). В этом разделе найдите подпункт «О телефоне» (тоже в самом низу).
Кликнув по строке «Номер сборки» 7 раз, вы получите уведомление о том, что стали разработчиком.
Пункт «Для разработчиков» появится в разделе «Система» главного меню настроек.
Режим разработчика в MIUI на Xiaomi
В прошивке MIUI на Xiaomi, меню для разработчиков активируется похожим образом. Пункт «О телефоне» находится первым в меню настроек. Зайдите в него и отыщите параметр «Версия MIUI». Быстро тапнув по нему 7 раз подряд, на экране появится уведомление «Вы стали разработчиком!».
После активации режима, перейдите в главное меню настроек и найдите там пункт «Расширенные настройки» (в группе «Система и устройство»). Меню «Для разработчиков» находится в конце списка, это третий снизу пункт.
Обзор функций меню для разработчиков
Функции в меню для разработчиков сгруппированы по категориям. Краткое описание каждого из них – ниже. Некоторые опции присутствуют не во всех смартфонах, но так как режим разработчика – часть ядра, то большинство параметров доступны вне зависимости от прошивки (чистый Android, MIUI, EMUI, Flyme и т.д.).
Память. Отображает среднее потребление оперативной памяти ОС Android и приложениями за последнее время эксплуатации.
Отчет об ошибке. Может быть интерактивным и подробным. Первый позволяет сделать скриншот, дополнить его сведениями о проблеме, и отслеживать статус. Подробный – собирает детальную информацию о системе, охватывающую много параметров. Используется, если смартфон работает плохо, не реагирует на действия или сильно тормозит.
Пароль для резервного копирования. Позволяет задать пароль для защиты резервных копий данных.
Не выключать экран. Оставляет подсветку экрана постоянно активной когда устройство заряжается.
Включить журнал HCI Bluetooth. Позволяет сохранять пакеты данных Bluetooth HCI в лог-файл BTSNOOP_HCI.log (расположение файла отличается на разных смартфонах и версиях ОС). С помощью специального софт можно проанализировать данные лога, например, определить, в каком режиме передается звук на наушники (SBC, AAC, aptX, и т.д.).
Заводская разблокировка. Разрешает/запрещает разблокировку загрузчика на устройствах с заблокированным оным. Активация требуется, например, для установки неофициальной прошивки.
Работающие приложения. Список запущенных программ и отображение потребления системных ресурсов каждым из них.
Цветовой режим. Активирует цветовую схему SRGB.
Сервис WebView. Выбор движка для обработки веб-страниц приложениями, не имеющими штатных функций браузера.
Автоматические обновления системы. Включает установку обновлений системы при перезагрузке устройства.
Отладка
Пункты режима «Отладка» отвечают за отладку работы ОС с ПК, через кабель USB.
Отладка по USB. Включение/выключение поддержки отладки с компьютера.
Отозвать доступ. Запретить вмешательство в работу системы компьютерам, с которых раньше осуществлялась отладка.
Отчет об ошибке. Отображает соответствующую клавишу в меню.
Выбрать приложение для фиктивных местоположений. Отвечает за выбор приложения, осуществляющего передачу ложных координат местоположения (Fake GPS).
Включить проверку атрибутов. Активирует проверку атрибутов в режиме отладки.
Выбрать приложение для отладки. Выбор отдельного приложения для отладки. Пригодится программистам и софт-девелоперам.
Подождите, пока подключится отладчик. Пункт неактивен, пока не задано приложение для отладки.
Проверять приложение при установке. Проверка безопасности приложений при установке через ADB/ADT.
Размер буфера журнала. Отвечает за размер буфера, в который пишется лог процесса отладки.
Отладка графического процессора. Включает загрузку слоев отладки графического процессора.
Отслеживание обновлений системы. Отслеживание и анализ рабочих процессов, чтобы увеличить производительность ОС.
Этот раздел меню разработчика отвечает за проводные и беспроводные (USB, BT, Wi-Fi) подключения.
Сертификация беспроводных мониторов. Отображает параметры сертификации дисплеев с WiDi/Miracast.
Подробный журнал Wi-Fi. Расширенный лог для сетевых подключений.
Переключаться на мобильную сеть. Автоматически переходит на моб. интернет, если Wi-Fi плохой.
Всегда включать поиск сетей Wi-Fi. Смартфон ищет сети даже когда используется EDGE/3G/4G.
Не отключать мобильный интернет. Постоянно держит активным соединение EDGE/3G/LTE, даже при работе Wi-Fi. Полезно при нестабильном подключении Wi-Fi.
Аппаратное ускорение в режиме модема. Использование ускорения при подключении в роли модема. Может пригодиться при низкой скорости интернета.
Конфигурация USB. Режим подключения к ПК: зарядка, MTP (передача данных), PTP (в режиме фотоаппарата), RNDIS (сетевая карта), источник аудио, MIDI (синтезатор звуков).
Показывать Bluetooth-устройства без названий. Отображает MAC-адреса доступных беспроводных гаджетов.
Отключить абсолютный уровень громкости. Отключение абсолютного уровня громкости. Может помочь, если наушники BT играют слишком тихо/громко.
Включить внутриполосное воспроизведение. Передает звуковые сигналы с телефона в наушники. Активируйте, если гарнитура никак не сообщает о входящем звонке, сообщении.
Версия Bluetooth AVRCP. Выбор версии протокола сигналов управления. Изменение иногда помогает, если смартфон неправильно реагирует на нажатия кнопок (пауза, перемотка, громкость) беспроводных наушников/колонок.
Аудиокодек для передачи через Bluetooth. Выбор режима кодирования аудио. Дает возможность переключаться между SBC, AAC, LDAC, aptX и т.д. Что логично, работает только если наушники поддерживают несколько кодеков.
Частота дискретизации при передаче через Bluetooth. Частота дискретизации звука по BT. Чем выше – тем лучше качество, но работает не всегда, и эффективно только для Lose-less форматов музыки.
Глубина кодирования звука при передаче через Bluetooth. Аналогично: чем выше – тем лучше качество.
Режим аудиоканала Bluetooth. Переключение между моно и стерео. Может быть полезно, если наушники не хотят играть в стерео.
Аудиокодек LDAC для Bluetooth: качество воспроизведения. Выбор баланса между качеством и скоростью подключения. Повышение иногда улучшает звучание, понижение – повышает качество связи.
Раздел, отвечающий за отображение касаний. Позволяет протестировать сенсор экрана.
Визуальный отклик. Показывает точки касания пальца. Проверяется корректность работы сенсора.
Отображать касания. То же самое, но в виде пунктирных линий, а не точек.
Отрисовка
Набор настроек, отвечающих за интерфейс. Полезен, в основном, разработчикам, неопытным юзерам мало интересен, за исключением последнего пункта.
Показывать обновления поверхности. Показывает элементы интерфейса, которые обновляются, с помощью мерцаний.
Показывать границы элементов. Отображает границы элементов интерфейса.
Отразить интерфейс. Принудительно располагает переключатели, ползунки и галочки справа, текст выравнивает по левому краю (на арабский манер).
Анимация окон. Скорость анимации в окнах приложений.
Анимация переходов. Скорость анимации при переключении между пунктами/программами.
Длительность анимации. Примерно то же, что и предыдущий пункт.
Эмуляция дополнительных экранов. Отображение дополнительного экрана, поверх главного, с продублированным интерфейсом.
Минимальная ширина. Самый полезный пункт, предназначен для управления масштабом интерфейса. Если элементы слишком крупные – можно увеличить DPI, чересчур мелкие – уменьшить (минимальное 320). Функция присутствует в Android 7 и новее, но не везде.
Аппаратное ускорение визуализации
Работа с графикой. Помимо разработчиков, может понадобиться при проблемах с 3D.
GPU-ускорение. Включает постоянное использование графического процессора для обработки 2D.
Показывать обновления экрана. Миганием выделяет области интерфейса, обрабатываемые граф. процессором.
Показывать аппаратные обновления. Выделяет зеленым элементы, обрабатываемые аппаратно.
Отладка наложения. Выделяет области, в которых элементы GUI накладываются друг на друга.
Отладка операций усечения сложной формы. Выделение элементов сложной формы в GUI.
Включить 4x MSAA. Включает 4-кратное сглаживание изображения. Делает картинку глаже, но нагружает чипсет.
Отключить аппаратные наложения. Задействует граф. процессор для обработки наложений.
Имитировать аномалию. Адаптирует цветопередачу для людей с нарушенным восприятием цветов (дальтонизм и т.п.). Монохромный режим может быть полезен для устройств с OLED-экранами в режиме чтения (когда цветные картинки не нужны), так как благодаря нему экономится заряд.
Средство визуализации. Выбор движка обработки графики. Пункт присутствует не на всех смартфонах.
Мультимедиа
Отключить передачу аудио (USB). Отключает вывод звука на внешние устройства, наподобие усилителей/ЦАП/звуковых карт/ Type C наушников с цифровым выводом.
Мониторинг
Строгий режим. Заставляет подсветку мерцать при выполнении ресурсоемких задач.
Показывать загрузку ЦП. Отображает данные о загрузке процессора. Доступен не на всех смартфонах.
Профилировать GPU-отрисовку. Отображает активность графического процессора, в виде полос графика, или передает в ADB.
Приложения
Этот подраздел отвечает за работу с приложениями.
Вытеснение фоновых Activity. Удаляет данные приложений после их завершения.
Лимит фоновых процессов. Ограничивает количество процессов, одновременно активных в фоновом режиме. Может помочь избавиться от чрезмерного расхода заряда.
Фоновая проверка. Показывает процессы, работающие в фоновом режиме.
Все ANR. Активирует уведомления о том, что приложение зависло и не отвечает, даже если оно свернуто.
Показывать предупреждения канала передачи оповещения. Включает показ об уведомлениях вне допустимого канала.
Неактивные приложения. Отображает и позволяет менять статус активных/неактивных приложений.
Разрешить сохранение на внешние накопители. Можно устанавливать приложения на флешку, даже если они этого не поддерживают. Может помочь на устройствах с малым (8-16 ГБ) объемом памяти, но не всегда.
Изменение размера в многооконном режиме. Дает возможность принудительно менять размер окон приложений в многооконном режиме, даже если они этого не поддерживают.
Включить оптимизацию MIUI. Пункт, доступный в меню разработчика на Xiaomi. Улучшает работу системы, потому активен, но отключение может помочь при некоторых багах.
Уведомлять об опасных функциях. Доступно на Xiaomi. Предупреждает, если программа проявляет нетипичную активность и хочет сделать что-то подозрительное.
Как отключить режим разработчика
Отключить режим разработчика на Android можно с помощью переключателя в самом верху его меню. Но чтобы полностью скрыть его, может потребоваться очистка данных программы настроек.
На старых версиях Android, чтобы убрать меню «Для разработчиков» из настроек, откройте подменю «Приложения». Выберите «Все» (дважды свайп вправо), откройте карточку приложения «Настройки», нажмите на кнопку «Стереть данные» и подтвердите удаление данных.
На Android 8 и новее выберите в настройках «Приложения и уведомления». Нажмите кнопку «Показать все приложения», найдите в списке «Настройки». Выбрав его, вы увидите среди пунктов параметр «Хранилище». Откройте его и нажмите «Стереть данные».
В MIUI на Xiaomi выберите в настройках «Все приложения». Найдите в списке приложение «Настройки» и откройте его карточку.
Щелкните на кнопку «Очистить» внизу, нажмите «Очистить все» и выберите «ОК».
Готово, режим для разработчиков отключен и удален из настроек. Включить его обратно можно способом, описанным в начале статьи.