Це команда ddms, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS
ПРОГРАМА:
ІМ'Я
ddms - графічний інструмент для налагодження для Android
СИНТАКСИС
ddms
ОПИС
Dalvik Debug Monitor Service (DDMS) надає послуги переадресації портів, увімкнення знімків екрана
інформація про пристрій, потік і купу про пристрій, logcat, процес і стан радіостанції
інформація, підробка вхідних дзвінків і SMS, підробка даних про місцезнаходження тощо. Ця сторінка
забезпечує скромне обговорення функцій DDMS; це не вичерпне дослідження всіх
особливості та можливості.
DDMS працюватиме як з емулятором, так і з підключеним пристроєм. Якщо обидва з’єднані і
при одночасному запуску DDMS за замовчуванням використовує емулятор.
Як DDMS працює
DDMS виступає посередником для підключення IDE до програм, що працюють на пристрої. Увімкнено
Android, кожна програма працює у своєму власному процесі, кожен з яких розміщує свій віртуальний
машина (VM). І кожен процес прослуховує налагоджувач на іншому порту.
Коли він запускається, DDMS підключається до adb і запускає службу моніторингу пристрою між
два, які сповіщатимуть DDMS, коли пристрій підключено або відключено. Коли пристрій є
підключено, між adb і DDMS створюється служба моніторингу ВМ, яка сповіщає DDMS
коли віртуальна машина на пристрої запускається або припиняється. Після запуску віртуальної машини DDMS отримує файл
ідентифікатор процесу (pid) віртуальної машини через adb і відкриває підключення до налагоджувача віртуальної машини через
демон adb (adbd) на пристрої. Тепер DDMS може спілкуватися з віртуальною машиною за допомогою спеціального проводу
протокол
Для кожної віртуальної машини на пристрої DDMS відкриває порт, на якому буде прослуховувати налагоджувач. Для
перша віртуальна машина DDMS прослуховує налагоджувач на порту 8600, наступна на 8601 і так далі. Коли
налагоджувач підключається до одного з цих портів, весь трафік пересилається між налагоджувачем
і пов'язаний VM. Налагодження потім може оброблятися як будь-який сеанс віддаленого налагодження.
DDMS також відкриває інший локальний порт, "базовий порт" DDMS (8700, за замовчуванням), після чого він
також слухає налагоджувач. Коли налагоджувач підключається до цього базового порту, весь трафік буде
пересилається на віртуальну машину, вибрану на даний момент в DDMS, тому зазвичай це місце, де ви налагоджуєте
слід підключити.
Порада. Ви можете встановити ряд параметрів DDMS у меню «Файл» > «Параметри». Налаштування збережено
до "$HOME/.ddmsrc".
Відомий налагодження питання з Дальвік
Налагодження програми у віртуальній машині Dalvik має працювати так само, як і в інших віртуальних машинах.
Однак при однократному виході з синхронізованого коду курсор "поточний рядок" може стрибнути
до останнього рядка методу за один крок.
Ліве Панель
У лівій частині монітора налагодження відображається кожен знайдений емулятор/пристрій зі списком
усіх віртуальних машин, які зараз працюють у кожній. Віртуальні машини ідентифікуються за назвою пакета
додаток, який він розміщує.
Використовуйте цей список, щоб знайти та приєднати до віртуальної машини потрібну(-і) діяльність(-и).
відлагоджувати. Поруч із кожною віртуальною машиною у списку є порт "прохідного налагоджувача" (у крайньому правому куті
колонка). Якщо ви підключите свій налагоджувач до одного з перелічених портів, ви будете
підключено до відповідної віртуальної машини на пристрої. Однак при використанні DDMS вам потрібно лише
підключіться до порту 8700, оскільки DDMS пересилає весь трафік тут на поточну вибрану віртуальну машину.
(Зверніть увагу, що коли ви вибираєте віртуальну машину зі списку, перелічений порт включає 8700.) Таким чином, є
немає необхідності переналаштовувати порт налагоджувача щоразу, коли ви перемикаєтеся між віртуальними машинами.
Коли телефонує програма, яка працює на пристрої waitForDebugger() (або ви обираєте це
у параметрах розробника), червона піктограма буде відображатися поруч із назвою клієнта, while
він чекає, поки налагоджувач підключиться до віртуальної машини. Коли налагоджувач підключено, значок з’явиться
зеленіти.
Якщо ви бачите перекреслений значок помилки, це означає, що DDMS не зміг завершити а
з'єднання між налагоджувачем і віртуальною машиною, оскільки вона не змогла відкрити локальну віртуальну машину
порт. Якщо ви бачите це для всіх віртуальних машин на пристрої, ймовірно, у вас є інша
примірник запущеного DDMS (це включає плагін Eclipse).
Якщо ви бачите знак питання замість пакета програми, це означає, що після DDMS
отримав pid програми від adb, чомусь не вдалося здійснити успішне рукостискання
з процесом ВМ. Спробуйте перезапустити DDMS.
правий pane
З правого боку монітор налагодження містить вкладки, які відображають корисну інформацію та
деякі корисні інструменти.
Інформація
У цьому поданні відображається деяка загальна інформація про вибрану віртуальну машину, включаючи ідентифікатор процесу,
ім’я пакета та версія ВМ.
Threads
У перегляді потоків є список потоків, які виконуються в процесі цільової віртуальної машини. Щоб зменшити
кількість даних, надісланих по дроту, оновлення потоку надсилаються лише в явному вигляді
увімкнено за допомогою перемикання кнопки «потоки» на панелі інструментів. Цей перемикач підтримується за
В.М. Ця вкладка містить таку інформацію:
ID унікальний ідентифікатор потоку, призначений ВМ. У Далвіку це непарні числа, починаючи з 3.
Час ідентифікатор потоку Linux. Для основного потоку в процесі це буде відповідати ідентифікатору процесу.
Статус статус потоку ВМ. Потоки демона відображаються зірочкою (*). Це буде
одне з наступних:
run - виконання коду програми
sleeping - називається Thread.sleep()
монітор - очікує отримання блокування монітора
чекати - в Object.wait()
native - виконання рідного коду
vmwait - очікування на ресурс ВМ
зомбі - нитка знаходиться в процесі відмирання
init - потік ініціалізується (ви не повинні цього бачити)
starting - нитка ось-ось почнеться (ви також не повинні цього бачити)
utime кумулятивний час, витрачений на виконання коду користувача, у "миглях" (зазвичай 10 мс). Тільки
доступний під Linux.
час кумулятивний час, витрачений на виконання системного коду, у «кільках» (зазвичай 10 мс).
ІМ'Я назва потоку
"Ідентифікатор" і "Ім'я" встановлюються під час запуску потоку. Решта полів оновлюються
періодично (за замовчуванням кожні 4 секунди).
VM купа
Відображає деяку статистику купи, оновлену під час збирання сміття. Якщо, коли вибрано віртуальну машину,
у поданні VM Heap говорить, що оновлення купи не ввімкнено, натисніть «Показати оновлення купи»
кнопку, розташовану у верхній лівій панелі інструментів. Повернувшись у подання VM Heap, натисніть Викликати GC
виконувати збір сміття та оновлювати статистику купи.
Виділення Tracker
У цьому поданні ви можете відстежувати розподіл пам’яті кожної віртуальної машини. З ВМ
вибрано на панелі ліворуч, клацніть «Почати відстеження», потім «Отримати виділення», щоб переглянути всі
виділення з моменту початку відстеження. Таблиця нижче буде заповнена всім необхідним
дані. Натисніть його ще раз, щоб оновити список.
Emulator Контроль
За допомогою цих елементів керування ви можете моделювати спеціальні стани та дії пристрою. Особливості
включати:
Телефонія Статус змінити стан тарифних планів телефону та передачі даних (дома, роумінг,
пошук тощо) та моделювати різні види швидкості та затримки мережі (GPRS, EDGE,
UTMS тощо).
Телефонія Дії виконувати імітовані телефонні дзвінки та SMS-повідомлення на емулятор.
Місце проведення Controls відправити фіктивні дані про місцезнаходження в емулятор, щоб ви могли виконувати
операції з визначенням місцезнаходження, як-от GPS-картографування.
Щоб використовувати елементи керування розташуванням, запустіть програму в емуляторі Android і відкрийте її
DDMS. Перейдіть на вкладку Емулятори керування та прокрутіть униз до Елементи керування розташуванням. Звідси ти
може:
- Вручну відправити окремі координати довготи/широти на пристрій.
Натисніть Вручну, виберіть формат координат, заповніть поля та натисніть Надіслати.
- Використовуйте файл GPX з описом маршруту для відтворення на пристрої.
Натисніть GPX і завантажте файл. Після завантаження натисніть кнопку відтворення, щоб відтворити маршрут
для вашої програми з визначенням місцезнаходження.
Виконуючи відтворення з GPX, ви можете налаштувати швидкість відтворення з DDMS
панель і керування відтворенням за допомогою кнопок паузи та пропуску. DDMS проаналізує обидва
шляхові точки ( , у першій таблиці), і доріжки ( , у другій таблиці, с
підтримка кількох сегментів, , хоча вони просто з’єднані). Тільки
треки можна відтворювати. Клацання маршрутної точки в першому списку просто надсилає її
координати пристрою, а вибір треку дає змогу відтворювати його.
- Використовуйте файл KML з описом окремих позначок місця для послідовного відтворення на пристрої.
Натисніть KML і завантажте файл. Після завантаження натисніть кнопку відтворення, щоб надіслати координати
до вашої програми з визначенням місцезнаходження.
Під час використання файлу KML він аналізується на a елемент. Значення якого
має бути єдиний набір цифр довготи, широти та висоти. Наприклад:
-122.084143,37.421972,4
У свій файл ви можете включити кілька елементів, кожен із яких містить a
елемент. Коли ви це зробите, колекцію позначок місця буде додано як
доріжки. DDMS надсилатиме на пристрій одну позначку місця в секунду.
Примітка: DDMS не підтримує маршрути, створені за допомогою lat1,
long1, lat2, long2, ... методи. На даний момент також є
немає підтримки для вузол всередині . Майбутні випуски можуть підтримуватися
тимчасове розміщення та маршрути в межах одного елемента координат.
Файл дослідник
За допомогою Провідника файлів ви можете переглядати файлову систему пристрою та виконувати базове керування,
як натискання та витягування файлів. Це обходить використання команд adb push і pull,
з досвідом GUI.
Відкривши DDMS, виберіть Пристрій > Провідник файлів..., щоб відкрити вікно Провідника файлів. Ти можеш
перетягнути в каталоги пристроїв, але не можна перетягнути з них. Щоб скопіювати файли з
пристрою, виберіть файл і натисніть кнопку Витягнути файл з пристрою на панелі інструментів. До
видалити файли, скористайтеся кнопкою Видалити на панелі інструментів.
Якщо ви зацікавлені у використанні зображення SD-карти на емуляторі, вам все одно потрібно це зробити
скористайтеся командою mksdcard, щоб створити образ, а потім змонтуйте його під час завантаження емулятора. Для
наприклад, з каталогу /tools виконайте:
$ mksdcard 1024M ./img $ емулятор -sdcard ./img
Тепер, коли емулятор запущено, DDMS File Explorer зможе читати та записувати
до каталогу sdcard. Однак ваші файли можуть не відображатися автоматично. Наприклад, якщо
якщо ви додасте файл MP3 на SD-карту, медіаплеєр не побачить їх, доки ви не перезавантажите файл
емулятор. (Під час перезапуску емулятора з командного рядка обов'язково змонтуйте sdcard
знову.)
Екран захоплення
Ви можете зробити зображення екрана на пристрої або емуляторі, вибравши «Пристрій» > «Екран».
захоплення... у рядку меню або натисніть CTRL-S.
Дослідження процеси
Ви можете побачити результат ps -x для певної віртуальної машини, вибравши «Пристрій» > «Показати процес».
статус... у рядку меню.
Викликати a GC до Зустрічаються
Викликати збір сміття, натиснувши кнопку кошика на панелі інструментів.
Робота Dumpsys та Dumpstate on Пристрій (logcat)
Щоб запустити dumpsys (logcat) з Dalvik, виберіть «Пристрій» > «Запустити logcat...» у рядку меню.
Щоб запустити dumpstate з Dalvik, виберіть Пристрій > Дампувати стан пристрою... у рядку меню.
Вивчити радіо стан
За замовчуванням стан радіостанції не виводиться під час стандартного logcat (це багато
інформація). Щоб переглянути інформацію про радіо, клацніть Пристрій > Дампувати стан радіо... або запустити
logcat, як описано в розділі Реєстрація радіоінформації.
Стоп a Віртуальний машина
Ви можете зупинити віртуальну машину, вибравши «Дії» > «Зупинити віртуальну машину». Натискання цієї кнопки викликає
ВМ для виклику System.exit(1).
KNOWN ПИТАННЯ
Якщо ви під’єднаєте та від’єднаєте налагоджувач, ddms скине і знову під’єднає клієнта до віртуальної машини
розуміє, що налагоджувач зник. Згодом це буде виправлено.
АВТОРСЬКЕ
Ця сторінка посібника ліцензована за ліцензією Apache, версія 2.0.
Авторські права (C) 2013 www.linuxtopia.org
Copyright (C) 2013 Якуб Адам[захищено електронною поштою]>
Використовуйте ddms онлайн за допомогою служб onworks.net