Налагодження Android програми на смартфоні. Для чого буває потрібна налагодження по USB і як включити? Інструкція для різних версій Android OS

Режим налагодження по USB - особлива функція Android-пристроїв, необхідна в основному для розробників. З її допомогою можна перевірити працездатність програми та протестувати його в різних ситуаціях. Але режим налагодження корисний і для користувачів. Розглянемо, для чого він може стати в нагоді, як включити і вимкнути його на Андроїд-пристроях.

Навіщо потрібен режим налагодження по USB на ОС Android?

Режим налагодження дозволяє користувачам:

  • Протестувати що розробляється.
  • Отримати root-доступ до смартфону або планшету.
  • Скопіювати і перемістити файли з Android-пристрої на комп'ютер.
  • Встановити викачане на комп'ютер стороннє (не з Play Market) Додаток для Android.
  • Встановити різні версії прошивок для пристрою.
  • Відновити непрацююче пристрій.
  • Створити резервну копію файлів і додатків.

Крім того, в режимі налагодження можна отримати доступ до системних процесів, а також проаналізувати зміни в поведінці оперативної пам'яті, Процесора і інших складових.

Як включити режим налагодження по USB на своєму пристрої

Опція «Включити налагодження по USB» знаходиться в «Меню для розробників» (або «Параметри розробника»), яке буває приховано від користувачів в версіях Android вище 4.2. Але, знову ж таки, деякі виробники вирішують відкрити доступ до меню, інші - приховати. Наприклад, на смартфонах компанії Meizu меню розробників відкрито завжди і знаходиться в розділі «Спеціальні можливості», а на пристроях Samsung  доступ до меню закритий. Все залежить не тільки від компанії, але і від конкретної моделі пристрою.

Отже, якщо доступ до меню для розробників закритий на вашому пристрої, зробіть наступні дії: в налаштуваннях пристрою відкрийте вкладку «Інформація про пристрій» і натискайте на пункт «Номер збірки» до тих пір, поки не з'явиться повідомлення про те, що вам надано статус розробника і ви можете використовувати спеціальне меню.

Тепер зайдіть в це меню. Залежно від моделі, вхід в меню може розташовуватися в різних розділах меню налаштувань. Або в налаштуваннях пристрою може відразу ж перебувати розділ «Для розробників» ( «Параметри розробника», «Меню розробника»), або він може бути підрозділом пунктів «Спеціальні можливості», «Інше», «Ще», «Додаткові настройки».

Коли ввійдете в меню для розробників, відзначайте галочкою пункт «Включити налагодження по USB» (або «Режим налагодження по USB»). Зазвичай цей пункт стоїть першим.

Де знаходиться режим в різних версіях Андроїд (фотогалерея)

Меню розробника знаходиться в розділі «Ще» В Android 2.2-3.0 пункт «Налагодження по USB» знаходиться в розділі «Додатки» В Android 4.2 і вище меню для розробників винесено в розділ «Налаштування»

ВІДЕОінструкція: як включити режим налагодження по USB на Android

Як включити режим налагодження по USB, якщо це неможливо зробити з пристрою

Є способи включити режим налагодження навіть, якщо це неможливо зробити на самому пристрої через, наприклад, непрацюючого екрану, зламаного тачскрін, неполадок з пристроєм в цілому.

Головна умова: на вашому пристрої вже має бути встановлено стороннє Recovery - CWM або TWRP.  Це необхідно, щоб була можливість отримати повний root-доступ до операційної системи.



Після перезавантаження з вашим смартфоном або планшетом можна буде працювати за допомогою QtADB, MyPhoneExplorer, ADB і інших подібних програм. Тобто, за допомогою режиму відладки по USB.

Що робити, якщо нічого не працює

Для роботи з налагодженням по USB використовуються спеціальні ADB-драйвери (Android Debug Bridge, дослівно «міст для налагодження Android»), Які можна скачати з сайту Google, офіційна сторінка знаходиться за посиланням: https://developer.android.com/studio/index.html. Давайте розберемося, що робити, якщо ADB не визначає пристрій, чому неможливо використовувати режим налагодження по USB.

Переконайтеся, що мобільний пристрій виявлено комп'ютером. Для цього:

  1. Перевірте USB-кабель на пошкодження. Особливу увагу зверніть на сильні вигини, ділянки кабелю близько штекерів, де часто ламаються з'єднувальні дроти. Спробуйте використовувати для підключення іншого кабель. Якщо проблема дійсно в фізичних дефектах - замініть кабель.
  2. Спробуйте увіткнути штекер в інший USB-порт на комп'ютері. Бажано використовувати порти на задній стороні системного блоку, так як задні порти розташовані безпосередньо на материнської плати. Передні USB-порти не завжди підключені правильно, через що і виникає проблема.
  3. Спробуйте підключити Android-пристрій до іншого комп'ютера. Іноді буває, що якийсь певний ПК неправильно розпізнає смартфон або планшет і не зчитує з нього потрібні дані. Якщо на іншому комп'ютері пристрій розпізнається правильно, несіть свій ПК в ремонт і поясніть проблему, так як причини неполадок можуть бути різні.
  4. Спробуйте відключити всі USB-пристрої від комп'ютера. Деякі з них можуть заважати смартфону або планшету нормально підключитися до ПК.

Переконайтеся, що використовуєте офіційну прошивку виробника пристрою. Якщо ви встановили на смартфон або планшет сторонню прошивку (таку, як CyanogenMod абощо), то налагодження по USB може працювати некоректно.

Переконайтеся, що встановили потрібні ADB-драйвера. Є різні версії драйверів для різних пристроїв. Всі вони розподілені за моделями смартфонів і планшетів на офіційному сайті. Також є й універсальні ADB-драйвера, але використовувати їх краще тільки в тому випадку, якщо для вашого пристрою немає окремого драйвера, так як з універсальними драйверами можливі проблеми з підключенням, які можна вирішити тільки зі службою підтримки Google.

розробникам програмного забезпечення  краще використовувати не окремі ADB-драйвера, а систему Android Studio, яку також можна завантажити з офіційного сайту: developer.android.com. В Android Studio налаштування драйверів відбувається автоматично, крім того, там присутній емулятор Android для комп'ютера, так що налагодження по USB може і не знадобитися.

Як вимкнути налагодження по USB

Щоб відключити режим налагодження по USB на Android-пристроях, відкрийте «Меню для розробників» і зніміть позначку з пункту «Використовувати налагодження по USB».

Режим налагодження по USB - вкрай корисний інструмент не тільки для розробників програмного забезпечення, але і для простих користувачів операційної системи Android. З його допомогою можна встановити або перевстановити прошивки на своїх мобільних пристроях, Переміщати файли зі смартфона або планшета на комп'ютер, завантажувати на Android сторонні додатки. Уміння користуватися режимом налагодження по USB стане в нагоді і в тих випадках, коли пристрій перестало працювати правильно, так як дозволяє копатися в системних процесах, що допоможе знайти неполадки і несправності. А крім того, налагодження по USB допоможе отримати root-доступ до пристрою, що значно розширить можливості операційної системи.

Після написання першої версії коду нашої програми ми, звичайно, захочемо запустити і протестувати його для виявлення потенційних проблем (або щоб просто похвалитися). Зробити це можна двома способами: запустити додаток на реальному пристрої, підключеному до комп'ютера з допомогою USBКабель; викликати емулятор, включений в SDK, і протестувати додаток на ньому.

В обох випадках нам потрібно зробити деякі дії, щоб побачити нашу програму в дії.

підключення пристрою

Перед підключенням пристрою для тестування необхідно переконатися в тому, що воно розпізнається операційною системою. У Windows для цього потрібно встановити відповідний драйвер, який є частиною інсталяції SDK, яку ми встановили раніше. Просто підключіть пристрій і дотримуйтесь інструкцій по установці стандартного драйвера для Windows, вказавши папку driver / в вашому установчому каталозі SDK. Драйвери для деяких пристроїв доведеться завантажити з сайту їх виробників. На Linux і Mac OS X зазвичай немає потреби встановлювати драйвери окремо - вони поставляються з операційною системою. Залежно від версії Linux може знадобитися зробити кілька додаткових дій (зазвичай в частині створення нового файлу правил для udev). Для різних пристроїв набір дій може відрізнятися - веб-пошук вам на допомогу.

Створення віртуального пристрою Android

SDK постачається з емулятором, що запускає так звані віртуальні пристрої Android (AVD). Це віртуальний пристрій складається з образу певної версії операційної системи Android, оболонки і набору атрибутів, що включають дозвіл дисплея, розмір карти пам'яті і т. Д. Для створення нового AVD необхідно запустити SDK and AVD manager. Ви можете зробити це як описаним в інструкції по інсталяції SDK способом, так і безпосередньо в Eclipse, натиснувши кнопку SDK manager (Диспетчер комплекту розробки) на панелі інструментів.

1. Виберіть Virtual Devices (Віртуальні пристрої) зі списку в лівій частині. В результаті ви побачите список доступних віртуальних пристроїв. Якщо ви раніше не користувалися SDK manager, даний список буде порожній; змінимо цей стан речей.

2. Для створення нового AVD натисніть кнопку New (Новий) в правій частині. З'явиться діалог (рис. 2.7).

Мал. 2.7. Діалог створення AVD в SDK manager

3. Кожна віртуальний пристрій володіє ім'ям (поле Name (Ім'я)), за яким ви згодом будете на нього посилатися. В Target (Мета) визначається версія Android, яку повинен використовувати AVD. Крім того, ви можете визначити обсяг карти пам'яті для AVD, а також дозвіл екрана. Для нашого простого проекту hel1о world можна вибрати в якості мети Android 1.5, залишивши інші параметри без змін. В умовах реального тестування зазвичай доводиться створювати кілька віртуальних пристроїв, щоб перевірити роботу програми для різних версій ОС і розмірів дисплея.

ПРИМІТКА

Якщо у вас немає реальних апаратів на Android різних версій  і з різними екранами, для додаткового тестування сумісності додатки зручніше використовувати емулятор.

запуск програми

Тепер після налаштування пристроїв і AVD ви нарешті можете запустити вашу програму. В Eclipse це робиться просто - клацанням правою кнопкою  миші на проекті hel1оworl d в поданні Package Explorer (Диспетчер пакетів) і вибором пункту Run As Android Application (Виконати як додаток Android) (або ж натисканням кнопки Run (Виконати) на панелі інструментів). В результат серед виконає в фоновому режимі  такі дії.

1. скомпілюйте проект в файл АРК (якщо з моменту минулого компіляції відбулися зміни в файлах).

2. Створить нову конфігурацію запуску для проекту Android якщо вона ще не існує (скоро ми поговоримо про конфігурацію запуску).

3. Встановить і запустить програму за допомогою запуску нового або використання вже запущеного емулятора відповідної версії Android або його розгортання і запуску на підключеному пристрої (на якому також встановлена ​​версія ОС не нижчу від визначеної параметром Min SDK Version (Мінімальна версія SDK) При створенні проекту).

Якщо ви тільки що створили AVD для Android 1.5 (як було описано вище), плагін ADT для Eclipse запустить новий екземпляр емулятора, розгорне в ньому АРК проекту hello world і запустить додаток. На виході ви побачите щось, схоже на рис. 2.8.

Емулятор працює майже так само, як реальний пристрій, і ви можете взаємодіяти з ним за допомогою миші, як ніби використовуєте палець. Однак є і кілька відмінностей від роботи з реальним апаратом.

Емулятор не підтримує мультитач. Рухайте покажчиком миші і уявляйте, що це палець. В емуляторі відсутні деякі додатки (наприклад, Android Market).

Для зміни орієнтації екрану марно трясти монітор. Замість цього використовуйте клавішу 7 на додатковому цифровому блоці клавіатури для повороту дисплея. Щоб не набрати замість цього цифру 7, необхідно спочатку натиснути Num Lock.


Мал. 2.8. Приголомшливе додаток hello world в дії.

Емулятор дуже, дуже повільно працює. Не судіть про продуктивність вашого застосування за швидкістю його роботи на емуляторі.

На момент написання і емулятор підтримує тільки OpenGL ES 1.0 з декількома розширеннями. Для наших цілей цього досить (за винятком того, що реалізація графічної бібліотеки на емуляторі страждає похибками і іноді ви можете отримувати не ті результати, що на реальному пристрої). Поки просто запам'ятайте, що не варто тестувати програми, що використовують OpenGL ES, на емуляторі.

Спробуйте різні дії з емулятором, щоб звикнути до нього.

ПРИМІТКА

Запуск нового екземпляра займає чимало часу (до декількох хвилин в залежності від характеристик робочої станції). Щоб заощадити час, залишайте емулятор запущеним весь сеанс розробки, які не перезапуску його кожен раз.

Іноді під час запуску програми Android автоматичний вибір емулятора / пристрої, що виконується плагіном ADT, стає на заваді. Наприклад, ми підключили кілька апаратів або емуляторів і хочемо протестувати проект на якомусь одному з них. Щоб цього домогтися, можна відключити автоматичний вибір емулятора / пристрої в конфігурації запуску проекту Android. До речі, що таке конфігурація запуску?

Конфігурація запуску пропонує спосіб повідомити середовищі Eclipse, яким саме чином вона повинна запускати вашу програму, отримавши відповідну команду. Зазвичай це виражається в можливості визначити аргументи командного рядка, що передаються програмі, аргументи віртуальної машини  (У випадку з настільними додатками на Java SE) і т. Д. Eclipse і сторонні плагіни пропонують різні конфігурації запуску для певних типів проекту. ADT не виняток - він теж додає свою конфігурацію запуску в набір. При першому запуску нашого застосування Eclipse і ADT створили нову конфігурацію Android Application Run з параметрами за замовчуванням.

Щоб отримати доступ до конфігурації запуску вашого проекту, виконайте наступні дії.

1. Клацніть правою кнопкою миші на проекті в поданні Package Explorer (Диспетчер пакетів) і виберіть Run As - Run Configurations (Виконати як - Виконати конфігурацію).

2. Виберіть проект hello world зі списку зліва.

3. У правій частині вікна ви можете змінити назву конфігурації запуску, а також скорегувати інші настройки на вкладках Android, Target (Мета) і Commons tabs (Загальні вкладки).

4. Для перемикання розгортання з автоматичної у ручний режим перейдіть на вкладу Target (Мета) і виберіть Manual (Вручну).

Тепер при запуску програми вам буде запропоновано вибрати відповідний емулятор або пристрій для розгортання. Цей діалог показаний на рис. 2.9. Для наочності я додав кілька віртуальних пристроїв з різними версіями цільової ОС, а також підключив два реальних пристрою.


Мал. 2.9. Вибір емулятора / пристрої для запуску програми

Діалог показує всі запущені емулятори та підключення в даний момент  пристрою, також інші AVD, що не запущені в даний момент.

налагодження програми

Іноді додаток поводиться несподівано або перестає працювати. Щоб визначити причину неприємностей, необхідна можливість налагодження програми. Eclipse і ADT пропонують неймовірно потужні можливості для додатків Android. Ми можемо встановлювати в коді точки переривання, отримувати значення змінних, поточний стан стека і багато іншого.

Перед тим як почати використовувати налагодження, необхідно підкоригувати файл AndroidManifest.xml. Цей момент - свого роду проблема курки і яйця, оскільки раніше ми не вивчали файли маніфестів. На даному етапі нам досить знати, що файл маніфесту визначає деякі атрибути нашого застосування. Один з них - можливість налагодження програми. Даний параметр заданий у формі XML-атрибута тега . Для включення можливості налагодження ми просто додаємо наступний атрибут тегу   в файлі маніфесту: androi d: debuggable = true

У процесі розробки програми ви можете залишити цей атрибут у файлі маніфесту. Однак не забудьте прибрати його, перед тим як передавати пакет на Android Market.

Тепер, включивши для додатка можливість налагодження, ви можете реалізувати її на емуляторі або пристрої. Зазвичай це виражається в установці точок переривання для аналізу стану програми на певних етапах. Щоб встановити точку переривання, відкрийте файл програмного коду в Eclipse і зробіть подвійне клацання в сірій зоні перед тим рядком коду, яка вам потрібна. Для демонстрації цієї можливості зробимо це в рядку 23 класу Не1oWorl dActi vi ty. Це змусить відладчик зупиняти хід виконання програми при кожному натисканні екранної кнопки. Точка переривання відзначається в редакторі коду маленьким кружком перед рядком, на якій ви її встановили (рис. 2.10). Щоб прибрати точку переривання, знову зробіть подвійне клацання на ній в редакторі коду.

Мал. 2.10. Установка точки переривання

Запуск налагодження дуже схожий на процес запуску програми, описаний вище. Клацніть правою кнопкою миші на проекті в поданні Package Explorer (Диспетчер пакетів) і виберіть Debug As - Android Application (Налагодження - Додаток Android). Таким чином ви створите нову конфігурацію налагодження для вашого проекту (точно так само, як ви робили при простому запуску програми). Ви можете змінити налаштування за замовчуванням для даної конфігурації, вибравши Debug As - Debug Configurations (Налагодження - Конфігурація налагодження) в контекстному меню.

ПРИМІТКА

Замість застосування контекстного меню проекту в поданні Package Explorer (Диспетчер пакетів) ви можете використовувати меню Run (Виконати) для запуску і налагодження програми, а також отримувати доступ до налаштувань.

Якщо ви стартуєте сесію налагодження вперше, Eclipse запитає вас, чи не хотіли б ви переключитися в перспективу Debug (Налагодження), на що ви можете погоджуватися без коливань. Розглянемо цю перспективу. На рис. 2.11 показаний її зовнішній вигляд після запуску процесу налагодження нашого застосування hel1о world.


Мал. 2.11. Перспектива Debug (Налагодження)

Якщо ви пам'ятаєте наш короткий огляд Eclipse, то знаєте, що в ній існують кілька перспектив, що складаються з набору уявлень для певних завдань. Перспектива Debug (Налагодження) по виду сильно відрізняється від перспективи Run (Виконати).

Перше з нових уявлень, на яке слід звернути увагу, - Debug (Налагодження) в лівому верхньому кутку. У ньому показані всі запущені в даний момент програми та стеки всіх їх потоків, якщо вони запущені в режимі налагодження.

Нижче уявлення Debug (Налагодження) знаходиться подання для редагування коду, з яким ми вже знайомилися при вивченні перспективи Java.

Подання Console (Консоль) виводить повідомлення від плагіна ADT, інформуючи нас про те, що відбувається.

Подання LogCat стане одним з наших кращих друзів при розробці додатків. У ньому показаний журнал повідомлень, що надходять від системних компонентів, інших додатків і нашої програми. У ньому також можна побачити трасування стека, якщо додаток вийде з ладу, і наші власні повідомлення в реальному часі. Більш докладно LogCat буде розглянуто в наступному розділі.

Подання Outline (Контур) не дуже корисно в даній перспективі. Ви, швидше за все, будете вивчати змінні і точки переривання, і поточний стан в програмі вам буде ні до чого. Я зазвичай закриваю це уявлення з перспективи Debug (Налагодження), щоб залишити більше місця для інших.

Подання Variables (Змінні) особливо корисно для налагоджувальних цілей. Коли відладчик досягає точки переривання, у нас з'являється можливість вивчити і змінити змінні в поточному контексті програми.

Нарешті, уявлення Breakpoints (Точки переривання) демонструє список встановлених нами точок переривання.

Якщо ви допитливі, то, ймовірно, вже натиснули кнопку в працюючому додатку, щоб побачити роботу відладчика. Він зупиниться на рядку 23 відповідно до встановленої точкою переривання. Ви також можете помітити, що в поданні Variables (Змінні) з'явилися змінні поточного блоку програми, що складається з самої активності (this) і параметра методу (v). Розкриваючи список змінних, ви можете досліджувати їх більш детально.

Подання Debug (Налагодження) показує трасування стека, що відноситься до поточного методу. Зверніть увагу: у вас може бути кілька запущених потоків, кожний з яких ви можете припиняти в будь-який час в поданні Debug (Налагодження). Рядок, на якій встановлена ​​точка переривання, підсвічується, вказуючи позицію в коді програми.

Ви можете наказати отладчику виконати поточний вираз (натиснувши F6), зайти в методи, які викликаються поточним методом (натиснувши F5), або продовжити виконання програми звичайним чином (натиснувши F8). Домогтися тих же цілей можна також, використовуючи меню Run (Виконати). Врахуйте, що насправді параметрів налагодження більше, ніж я вам зараз розповів. Як і завжди, я пропоную вам самим поекспериментувати над тим, що вам потрібно.

ПРИМІТКА

Допитливість - основний будівельний матеріал для успішної розробки Android-ігор. Вам доведеться дійсно близько познайомитися з середовищем розробки, щоб отримати від неї найбільшу віддачу. а не може описати всі подробиці Eclipse, тому я знову закликаю вас експериментувати.

LogCat і DDMS

Плагін ADT встановлює багато нових уявлень і перспектив для використання в Eclipse. Одне з найбільш корисних уявлень (про який побіжно згадано в попередньому розділі) називається LogCat.

LogCat - система журналирования подій в Android, що дозволяє системним компонентам і додатків виводити інформацію на різних рівнях. Кожен запис в журналі складається з дати, часу, рівня журналювання, ID процесу-джерела записи, тега (визначеного додатком самостійно) і власне повідомлення.

Подання LogCat збирає і виводить цю інформацію з підключеного емулятора або реального пристрою. На рис. 2.12 показаний приклад виведення в поданні LogCat.


Мал. 2.12. подання LogCat

Зверніть увагу на кнопки у верхньому правому куті LogCat.

Перші п'ять з них дозволяють вибрати рівні журналирования, які ви хочете побачити.

Кнопка зелений плюс дає можливість визначити фільтр, заснований на тезі, ID процесу, рівні журналирования. Він дуже допоможе вам, якщо ви захочете побачити лог тільки вашої програми (яке, ймовірно, буде використовувати особливий тег).

Решта кнопки дозволяють редагувати і змінювати фільтр, а також очищати вікно виведення.

Якщо підключено одночасно кілька пристроїв / емуляторів, LogCat буде виводити інформацію тільки від одного з них. Щоб отримувати більш детальну інформацію, ви можете скористатися перспективою DDMS.

DDMS (Dalvik Debugging Monitor Server) пропонує більш різноманітні відомості про процеси і віртуальних машинах Dalvik, запущених на всіх підключених пристроях. Переключитися на перспективу DDMS можна в будь-який момент за допомогою пункту меню Window - Open Perspective - Other - DDMS (Вікно - Відкрити перспективу - Інші - DDMS). На рис. 2.13 показано, як зазвичай виглядає перспектива DDMS.


Мал. 2.13. DDMS в дії

Як і в інших перспективи, в нашому розпорядженні кілька спеціальних уявлень, що виконують для нас корисну роботу. В даному випадку ми хочемо збирати інформацію про всі процеси, їх віртуальних машинах, потоках, поточний стан пам'яті, даних від LogCat по конкретному пристрою і т. Д. Розглянемо ці уявлення.

Devices (Пристрої) - демонструє всі підключені пристрої і емулятори, а також працюють на них процеси. За допомогою кнопок на панелі інструментів ви можете виконувати різні дії: виробляти налагодження обраного процесу, записувати стан пам'яті і дані від потоків, а також робити знімки екрану.

LogCat - аналогічно описаному в попередньому розділі, з однією відмінністю: виводить інформацію від пристрою, обраного в поданні Devices (Пристрої).

Emulator Control (Контроль емулятора) - дозволяє змінювати поведінку запущеного екземпляра емулятора. Ви можете, наприклад, змусити його гененеріровать пробні GPS-координати для тестування.

Threads (Потоки) - виводить дані про потоках, які використовуються процесом, яка була обрана в поданні Devices (Пристрої). Інформація буде показуватися, лише якщо ви включили відстеження потоків (це можна зробити, натиснувши п'яту зліва кнопку в поданні Devices (Пристрої)).

Heap (Купа) (не показано на рис. 2.13) - постачає інформацією про статус пам'яті пристрою. Як і у випадку з даними про потоках, необхідно явно включити відстеження стану пам'яті в поданні Devices (Пристрої) натисканням другий ліворуч кнопки.

Allocation Tracker (Відстеження розподілів) - показує використані недавно класи. Це дуже допомагає при боротьбі з витоками пам'яті.

File Explorer (Провідник) - дозволяє змінювати файли на підключеному Android-пристрої або примірнику емулятора. Ви можете перетягувати файли в цю виставу так само, як ви робите це при роботі з операційною системою.

DDMS насправді - окремий додаток, інтегроване в Eclipse за допомогою плагіна ADT. Ви можете запускати його і окремо з каталогу $ ANDR0ID H0M Е / tools directory (% ANDROID HOME% / tools при використанні Windows). Воно не підключається до пристроїв безпосередньо, застосовуючи для цього Android Debug Bridge (ADB) - ще одну утиліту, включену в SDK. Розглянемо її, щоб доповнити наші знання про середовище розробки Android.

Використання ADB

ADB дозволяє управляти підключеними пристроями та примірниками емулятора. Вона складається з трьох різних компонентів.

Клієнтську програму, запущене на машині розробника за допомогою команди adb (ця команда буде працювати, якщо ви правильно налаштували ваші змінні оточення). Коли ми говоримо про ADB, то маємо на увазі саме цю утиліту командного рядка.

Сервер, також запущений на комп'ютері розробника. Він встановлюється у вигляді фонового сервісу і відповідає за з'єднання між програмою ADB і будь-яким підключеним пристроєм чи примірником емулятора.

Демон ADB, який також є фоновим процесом і підготовлений до запуску на кожному телефоні або емуляторі. Сервер ADB використовує цей демон для підключення.

Зазвичай ми застосовуємо ADB через DDMS, ігноруючи існування окремої утиліти командного рядка. Але іноді буває корисно запускати його окремо, тому коротко вивчимо деякі його функції.

ПРИМІТКА

Для отримання повного довідника доступних команд зверніться до документації по ADB на сайті Android Developers (http://developer.android.com).

Дуже корисна завдання, що виконується за допомогою ADB, - отримання списку всіх підключених до ADB-сервера (а значить, і до комп'ютера) пристроїв і емуляторів. Для цього виконайте наступну команду консолі (зверніть увагу: символ не є частиною команди):

В результаті на екран буде виведений список всіх підключених пристроїв і емуляторів з відповідними серійними номерами:

Серійний номер пристрою або емулятора використовується для виконання наступних команд. Наприклад, наступна команда встановить АРК-файл myapp. а рк з машини розробника на пристрій з серійним номером НТ019Р803783:

Аргумент -s може використовуватися з будь-якою командою ADB, яка виконує будь-які дії з конкретним пристроєм.

Існують також команди для копіювання файлів між комп'ютером і пристроєм (емулятором). Результат дії наступної команди - копіювання локального файлу myfi1е. txt на карту пам'яті пристрою з серійним номером НТ019Р803783:

Щоб зробити зворотне копіювання fi1е. txt з карти пам'яті, використовуйте наступний набір символів:

Якщо до ADB-сервера в даний момент підключено всього один пристрій або емулятор, ви можете опустити серійний номер - adb визначить його автоматично.

Звичайно, можливості ADB не обмежуються описаними нами функціями. Багато з них реалізуються через DDMS, і в більшості випадків ми не будемо застосовувати командний рядок. Однак для невеликих завдань вона буває ідеальним рішенням.

Підводячи підсумок

Середовище розробки Android іноді може викликати страх. На щастя, для початку роботи вам необхідна тільки частина всього функціоналу.

Найголовніше, що ви повинні зрозуміти після вивчення - як все це працює разом. JDK і Android SDK є основою всієї розробки для Android. Вони пропонують інструменти для компілювання, розгортання і запуску додатків на примірниках емулятора і пристроях. Для прискорення процесу розробки ми використовуємо Eclipse в поєднанні з плагіном ADT, що рятує нас від незручною роботи з JDK і SDK в командному рядку. Сам Eclipse побудований на кількох кореневих концепціях: робочих просторах, керуючих проектами; уявленнях, що пропонують особливу функціональність (наприклад, редагування програмного коду або висновок LogCat); перспективи, які об'єднують уявлення для виконання певних завдань (наприклад, налагодження); конфігураціях запуску та налагодження, що дозволяють визначити параметри запуску або налагодження програми.

Обов'язкова умова оволодіння всім цим багатством - практика, як би нудно це не звучало. В результаті вивчення цієї і ми реалізуємо проекти, які познайомлять вас із середовищем розробки Android. Однак не варто на цьому зупинятися - тільки від вас залежить, чи робити наступні кроки.

Тепер, коли ви засвоїли всю цю інформацію, можете рухатися вперед до того, заради чого все це затіяли: розробці ігор.

Сьогодні спробуємо розібратися з одним цікавим пунктом меню - режим розробника Android (інженерне меню андроїд). У розділі Настройки - «Для розробників» розміщені функції для гнучкого налаштування і глибокого управління своїм пристроєм на Android.

Всі дії по включенню режиму Android розробника проводяться на планшеті другого покоління, який працює під управлінням ОС .0.1. Коментування кожного пункту меню засноване на його ж описі. Якщо читач знає більш детальну інформацію про якійсь команді - діліться досвідом.

Не забувайте, всі зміни в цьому режимі ви вносите на свій страх і ризик!

Як включити режим розробника Android?

  • Заходимо в «Налаштування» і вибираємо розділ «Про телефоні (Про планшет)».
  • Потім Скрол вниз і бачимо «Номер збірки», Тапа по ньому сім разів.
  • Після сьомого тапа система повідомить користувачеві що він став розробником. Так ми включаємо (або відкриваємо) режим для розробників на Android-пристрої.

Меню «Для розробників» з'явиться в налаштуваннях гаджета. На Android 6.0 пункт розміщений в категорії «Система».

Тепер розглянемо список команд і можливостей, які підносить нам режим розробника Андроїд.

Режим розробника Android - Загальний огляд

  • «Звіт про помилку» - кнопка неактивна при нормальній роботі пристрою.
  • «Пароль для резервного копіювання» - можливість захистити повні резервні копії даних смартфона або планшета. Пароль вводиться вручну і створюється самим користувачем.
  • «Не вимикати екран» - активація цієї дії призведе до постійної підсвічування екрану в процесі зарядки пристрою.
  • «Виберіть середу» - доступні для вибору дві робочі середовища: Dalvik і ART. Остання новіша і покликана підвищити рівень продуктивності додатків і пристрої в цілому.
  • «Включити журнал трансляції операцій HCI Bluetooth» - команда служить для збереження всіх пакетів HCI Bluetooth в файлі.
  • «Перевірка HDCP» - ця команда служить для вибору порядку перевірки HDCP (система захисту від копіювання)
  • «Статистика процесів (Працюючі додатки)» - виконання цієї операції дозволить вести статистику запущених процесів.

Режим розробника Android - Налагодження

  • «Налагодження по» - включає режим налагодження при підключенні до комп'ютера за допомогою -Кабелі.
  • «Заборонити доступ для налагодження за допомогою USB на всіх комп'ютерах, на яких ви входили в обліковий запис».
  • «Звіти про помилки» - кнопка неактивна в штатному режимі. При активації, пристрій почне відображати в меню опцію відправки звіту про помилку.
  • «Фіктивне розташування» - дивовижна функція, яка вміє маскувати поточне місце розташування власника з гаджетом і видавати помилкові координати.
  • «Виберіть програму для налагодження» - можна задати певні програми для можливості їх налагодження.
  • «Зачекайте, поки підключиться відладчик» - додаток очікує підключення налагоджувача в штатному режимі. Кнопка неактивна.
  • «Установка через USB» - функція дозволяє перевіряти на безпеку додатки, що встановлюються через ADB / ADT. Кнопка неактивна.
  • «Розмір буфера журналу» - функція дозволяє вибрати розмір буфера журналу.

Режим розробника Android - Мережі

  • «Сертифікація бездротових моніторів» - відображає параметри сертифікації бездротових моніторів.
  • «Докладний журнал Wi-Fi» - функція дозволяє при виборі Wi-Fi вказувати в журналі RSSI для кожного SSID.
  • «Перемикатися на мобільну мережу» - при активації кнопки, функція дозволяє примусово перемикатися на мобільну мережу, якщо сигнал Wi-Fi слабкий.
  • «Завжди включати пошук мереж Wi-Fi» - функція дозволяє включати або відключати пошук мереж Wi-Fi під час передачі даних в залежності від обсягу трафіку.
  • «Використовувати застарілий DHCP-клієнт» - активована функція дозволяє використовувати DHCP-клієнт для .0, а не для нової версії.
  • «Не відключати передачу даних» - включена функція дозволяє не відключати передачу даних по мобільній мережі навіть при активному Wi-Fi-підключення (для швидкого перемикання між мережами).
  • «Конфігурація USB» - вибір режиму за замовчуванням при підключенні по USB до ПК.

Режим розробника Android - Введення тексту

  • «Показувати натискання» - при активації кнопки, реалізується відображення точки в місцях натискання на екран.
  • «Відображати торкання» - проводиться візуалізація на екрані натискання і жестів.

Режим розробника Android - Малювання

  • «Показ. обнов. поверхні »- здійснюється підсвічування вікон повністю при їх оновленні.
  • «Показувати межі елементів» - забезпечує відображення кордонів кліпу, поля і т.д.
  • «Написання справа наліво» - відображає написання текстів справа наліво для всіх мов.
  • «Анімація вікон» - установка масштабу анімації від 0,5х до 10х. Також можна відключити анімацію взагалі.
  • «Анімація переходів» - установка масштабу переходу від 0,5х до 10х. Відключення анімації також можлива.
  • «Тривалість анімації» - можна задати швидкість анімації гаджета в інтервалі від 0,5 х до 10х. Анімацію можна відключити взагалі.
  • «Емуляція додаткових екранів» - цікава опція, яка може провести емуляцію додаткових екранів на основному фізичному екрані пристрою. Включивши цю опцію, користувач побачить ще один екран, який продублює основний. Розміри додаткового екрана налаштовуються самостійно.

Режим розробника Android - Апаратне прискорення візуалізації

  • «GPU-прискорення» - можна поставити галочку і, тим самим, завжди використовувати GPU для двомірного малювання.
  • «Показувати оновлення екрану» - поставлена ​​галочка забезпечить підсвічування області екрану при відображенні GPU.
  • «Показувати апаратні поновлення» - задіяння цієї функції виділить апаратні рівні зеленим при оновленні.
  • «Налагодження накладення» - цей пункт містить три можливих варіанти для вибору: 1) викл .; 2) показувати області накладення; 3) виділяти області певного кольору; 4) показувати число об'єктів.
  • «Налагодити операції непрямокутної усічення» - на цьому етапі можна провести три дії: 1) відключити опцію; 2) непрямокутних перетин; 3) тестування команди малювання зеленим.
  • «Включити 4х MSAA» - поставивши галочку, користувач (або вже розробник) включає 4х MSAA в додатках OpenGL ES 2.0.
  • «Відключити апаратні накладення» - активація пункту спричинить за собою постійне використання GPU при компонуванні екрану.
    • «Включено строгий режим» - даний режим буде підсвічувати екран Android-пристрої під час тривалих операцій.
    • «Показувати завантаження ЦП» - при активації цієї дії, смартфон відобразить на своєму екрані додаткове віконце з графічним відображенням поточної завантаження ЦП.
    • «Запис часу роботи GPU» - назва даного пункту говорить сама за себе.
    • «Включити трасування OpenGL» - має чотири можливим варіанти розвитку подій: 1) немає даних; 2) Logcat; 3) Systrace; 4) Список викликів в glGetError /

    Режим розробника Android - Додатки

    • «Не зберігати дії» - даний пункт меню відноситься до додатків, активація його призведе до видалення зведення дій після їх завершення.
    • «Ліміт фонових процесів» - корисна функція. Вона здатна обмежити кількість працюючих програм у фоновому режимі.
    • «Все ANR» - пташка, поставлена ​​навпроти даного пункту, забезпечить повідомлення користувача про те, що додаток лагает (авт.) Або не відповідає.
    • «Неактивні додатки» - вбудований диспетчер активних додатків з можливістю закриття.

    Так виглядає меню «Для розробників». Наведені скріншоти з згаданого планшета на Android 6.0.

    Як відключити режим розробника Android?

    • Заходимо в «Налаштування» і вибираємо розділ «Додатки».
    • У розділі «Додатки» необхідно знайти додаток «Налаштування».
    • У меню, вибираємо пункт «Сховище.

    •   Хто знає більше про меню режим розробника і його особливості - прохання ділитися своїми знаннями в коментарях.

У багатьох інструкціях отримання root прав і модифікації прошивок, необхідно включити налагодження по USB. Що таке Налагодження по USB і для чого вона потрібна і як її включити, можна дізнатися з цієї статті.

Для чого потрібна Налагодження по USB?

Налагодження по USB служить для того щоб використовувати службу налагодження додатків і пристроїв на ОС Android (перевірити як працює додаток і система в цілому і які виникали збої) яка називається ADB.

Як включити налагодження по USB?

Абсолютно у всіх Android девайсах, незалежно чи це смартфон або планшет, налагодження по USB знаходиться в Меню -> налаштування

Можливі варіанти місцезнаходження опції

Незважаючи що, налагодження по USB знаходиться в настройках, але варіанти розташування в меню може бути різним і мати кілька варіантів як його знайти! Розглянемо 6 можливих варіантів.

варіант №1:

Меню -\u003e Настройки -\u003e Розробка -\u003e

варіант №2:

Меню -\u003e Настройки -\u003e Для Розробників -\u003e Налагодження по USB - поставити галочку


варіант №3:

Меню -\u003e Настройки -\u003e Програми -\u003e Розробка -\u003e Налагодження по USB (Android 2.2 - 3.0)


варіант №4:

Меню -\u003e Настройки -\u003e Ще -\u003e Параметри Розробника -\u003e Налагодження по USB - поставити галочку


Варіант №5 для Android 4.2 і вище:

Меню -\u003e Настройки -\u003e Система -\u003e Про смартфон / Про планшет -\u003e Номер збірки і натисніть по ньому приблизно 7 - 10 разів, після чого поверніться в Настройки -\u003e Для Розробників -\u003e Налагодження по USB - поставити галочку

Варіант №6 для Android 4.2 і вище:

Меню -\u003e Настройки -\u003e Про смартфон / Про планшет -\u003e Номер збірки і натисніть по ньому приблизно 7 - 10 разів, після чого поверніться в Настройки -\u003e Для Розробників -\u003e Налагодження по USB - поставити галочку

Варіант №7 для Android 4.2 і вище (Xiaomi / Samsung / LG):

Меню -\u003e Настройки -\u003e Загальні -\u003e Про смартфон / Про планшет -\u003e Номер збірки і натисніть по ньому приблизно 7 - 10 разів, після чого поверніться в Настройки -\u003e Для Розробників -\u003e Налагодження по USB - поставити галочку


Варіант №8 для Xiaomi (нові версії MIUI):

Меню -\u003e Настройки -\u003e Про телефоне-\u003e Версія MIUI і натисніть по ньому приблизно 7 - 10 разів, після чого поверніться в Настройки -\u003e Додатково -\u003e Для Розробників -\u003e Налагодження по USB - поставити галочку

Після включення Налагодження по USB! (4.2 і вище)

При першому підключення до комп'ютера і введення якої-небудь команди або отримання Root прав у вас з'явитися запит на довіру комп'ютера до якого зараз Android підключений! Даний запит буде з'являтися на будь-якому новому комп'ютері або ноутбуці! Поставте галочку і натисніть кнопку OK. Налагодження по USB включена.

Налагодження по USB включена і пристрій Android не визначається?

Перше що вам потрібно буде повірити це наявність встановлених драйверів   на комп'ютер або ж перевстановити / оновити їх. Детально про встановлення драйверів, а також посилання на свіжі драйвера можна знайти в статті - як встановити USB драйвер. Ще однією проблемою, що Android не визначається це, то що він знаходиться в заблокованому стан - розблокуйте  свій смартфон або планшет! Не використовуйте порт USB 3.0, тільки USB 2.0 .

Якщо налагодження по USB так і не вдасться встановити з комп'ютером, то варто спробувати змінити спосіб підключення до ПК. У момент коли ви вже підключили смартфон або планшет до ПК, потягніть верхній інформаційний бар «шторку» вниз -\u003e вибрати підключення USB   і активувати режим PTP.


Якщо хочете підключитися по WI-FI

Для того щоб підключити Android по WI-FI мережі  необхідно отримати ip адресу і порт пристрою (потрібні root права), В цьому вам допоможе програма ADB Wireless, після цього ввести команду в командний рядок:

    adb connect ip: port

наприклад:

  adb connect 192.168.0.14:5555

Після того як включили дану опцію на Android ви можете підключити смартфон до ПК і вводити необхідні команди adb або отримувати Root права!



Сьогодні спробуємо розібратися з одним цікавим пунктом меню, в розділі Налаштування - для розробників. У цьому меню розміщені 37 підпунктів для гнучкого налаштування і глибокого управління своїм пристроєм на Android. Далі пропонуємо ознайомитися з кожним з них і розглянути скріншоти самого меню для розробників.

Всі дії проводяться на смартфоні Nexus 4, який працює під управлінням ОС Android 4.4. Коментування кожного пункту меню засноване на його ж описі. Якщо читач знає більш детальну інформацію про якійсь команді - діліться досвідом. Не забувайте, всі зміни в цьому режимі ви вносите на свій страх і ризик!

Для того щоб включити отоброженіе пункту "Для розробників" в списку налаштувань, потрібно провести наступні дії:

  1. Заходимо в меню налаштувань
  2. Переходимо до пункту Про телефоні
  3. знаходимо рядок номер збірки
  4. Натискаємо по ньому сім разів.

Якщо з'явилося ось таке повідомлення, то у нас все вийшло!

Меню "Для розробників" тепер буде знаходиться в списку в налаштуваннях гаджета. На Android 4.4 пункт розміщений між "Друк" і "Про телефоні"!

Ось список і опис усіх функцій, яке дає нам приховане меню:

  1. Створення звіту про помилку  - кнопка неактивна при нормальній роботі  пристрою.
  2. пароль для резервного копіювання   - можливість захистити повні резервні копії  даних смартфона або планшета. Пароль вводиться вручну і створюється самим користувачем.
  3. Чи не вимикати екран  - активація цієї дії призведе до постійної підсвічування екрану в процесі зарядки пристрою.
  4. Виберіть середу  - доступні для вибору дві робочі середовища: Dalvik і ART. Остання новіша і покликана підвищити рівень продуктивності додатків і пристрої в цілому. Включити журнал трансляції  - команда служить для збереження всіх пакетів HCI Bluetooth в файлі.
  5. Статистика процесів  - виконання цієї операції дозволить вести статистику запущених процесів.
  6. Налагодження по USB  - включає режим налагодження при підключенні до комп'ютера за допомогою USB-кабелю.
  7. Заборонити доступ для налагодження за допомогою USB на всіх комп'ютерах, на яких ви входили в обліковий запис.
  8. Звіти про помилки  - кнопка неактивна в штатному режимі. При активації, пристрій почне відображати в меню опцію відправки звіту про помилку.
  9. фіктивне розташування  - дивовижна функція, яка вміє маскувати поточне місце розташування власника з гаджетом і видавати помилкові координати.
  10. Виберіть програму для налагодження  - можна задати певні програми для можливості їх налагодження.
  11. Зачекайте поки підключиться  - додаток очікує підключення налагоджувача в штатному режимі. Кнопка неактивна.
  12. Встановлені через USB  - функція дозволяє перевіряти на безпеку додатки, що встановлюються через ADB / ADT. Кнопка неактивна.
  13. Сертифікація бездротових ...  - відображає параметри сертифікації бездротових моніторів.
  14. показувати натискання  - при активації кнопки, реалізується відображення точки в місцях натискання на екран.
  15. Відображати торкання  - проводиться візуалізація на екрані натискання і жестів.
  16. Показ. обнов. поверхні  - здійснюється підсвічування вікон повністю при їх оновленні.
  17. Показувати межі елементів - забезпечує відображення кордонів кліпу, поля і т.д.
  18. Написання справа наліво  - відображає написання текстів справа наліво для всіх мов.
  19. Вікно: масштаб  - установка масштабу анімації від 0,5х до 10х. Також можна відключити анімацію взагалі.
  20. Швидкий перехід: масштаб  - установка масштабу переходу від 0,5х до 10х. Відключення анімації також можлива.
  21. швидкість анімації  - можна задати швидкість анімації гаджета в інтервалі від 0,5 х до 10х. Анімацію можна відключити взагалі.
  22. Емуляція додаткових екранів  - цікава опція, яка може провести емуляцію додаткових екранів на основному фізичному екрані пристрою. Включивши цю опцію, користувач побачить ще один екран, який продублює основний. Розміри додаткового екрана налаштовуються самостійно.
  23. GPU-прискорення  - можна поставити галочку і, тим самим, завжди використовувати GPU для двомірного малювання.
  24. Показувати оновлення екрану  - поставлена ​​галочка забезпечить підсвічування області екрану при відображенні GPU.
  25. Показувати апаратні поновлення  - задіяння цієї функції виділить апаратні рівні зеленим при оновленні.
  26. налагодження накладення  - цей пункт містить три можливих варіанти для вибору: 1) викл .; 2) показувати області накладення; 3) виділяти області певного кольору; 4) показувати число об'єктів.
  27. Налагодити операції непрямокутної усічення  - на цьому етапі можна провести три дії: 1) відключити опцію; 2) непрямокутних перетин; 3) тестування команди малювання зеленим.
  28. Включити 4х MSAA  - поставивши галочку, користувач (або вже розробник) включає 4х MSAA в додатках OpenGL ES 2.0.
  29. Відключити апаратні накладення  - активація пункту спричинить за собою постійне використання GPU при компонуванні екрану.
  30. Включений строгий режим  - даний режим буде підсвічувати екран Android-пристрої під час тривалих операцій.
  31. Показувати завантаження ЦП  - при активації цієї дії, смартфон відобразить на своєму екрані додаткове віконце з графічним відображенням поточної завантаження ЦП. Запис часу роботи GPU  - назва даного пункту говорить сама за себе.
  32. Включити трасування OpenGL  - має чотири можливим варіанти  розвитку подій: 1) немає даних; 2) Logcat; 3) Systrace; 4) Список викликів в glGetError /
  33. Ніколи не зберігати дій  - даний пункт меню відноситься до додатків, активація його призведе до видалення зведення дій після їх завершення.
  34. ліміт фонових процесів - корисна функція. Вона здатна обмежити кількість працюючих програм у фоновому режимі.
  35. все ANR - пташка, поставлена ​​навпроти даного пункту забезпечить повідомлення користувача про те, що додаток лагает (авт.) Або не відповідає.