Работа в DDMS Eclipse

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Работа в DDMS Eclipse

Сообщение =bor= » 04 май 2013, 15:29

В DDMS смотрю логи и это пока всё, но чувствую, что там можно делать намного больше. :)
Ничего хорошего на русском по теме не нагуглилось.

Куча вопросов.

- Например, как сохранить в файл список активных приложений, отображённых на рисунке ниже?

Изображение

- Что за вкладки справа - Thread, Heap etc? Перевод понятен, но как с ними работать?

- Из кнопок в окне Devices ясно, что есть Stop Process. :) А остальные?

- Пункты главного меню File, Edit etc используются? Как?

- Допустим, я открыл в данный момент на устройстве какое-то приложение и его определённую вкладку.
Могу я увидеть в DDMS, какая активити/класс в этом диалоге задействована?

И т.д., и т.п.

Может, кому-то известны ресурсы-faqs по работе с DDMS?
Может, кто-то поделится своими рецептами работы с ним?
Несите сюда, плиз, думаю, всем будет полезно.

Upd. Кое-что из нагугленного:
- Debugger Tutorial (англ.)
- Отладчик в Eclipse (рус., но качество видео - отстойное)
- Using DDMS (англ.)
Последний раз редактировалось =bor= 13 май 2013, 17:14, всего редактировалось 3 раза.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Работа в DDMS Eclipse

Сообщение rezak90 » 04 май 2013, 16:09

Ну как бы всё ж интуитивно понятно. Можно смотреть сколько приложение "кушает" памяти; какая часть "кушает" эту память; сколько памяти выделяется под типы, объекты, массивы и т.д. Этого мне вполне достаточно, но есть ещё плюшки что бы просматривать потоки и сеть.
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 04 май 2013, 16:16

rezak90 писал(а):Ну как бы всё ж интуитивно понятно. Можно смотреть сколько приложение "кушает" памяти; какая часть "кушает" эту память; сколько памяти выделяется под типы, объекты, массивы и т.д. Этого мне вполне достаточно, но есть ещё плюшки что бы просматривать потоки и сеть.
Хе-хе, "интуитивно понятно". :D Прошу не забывать, что мы на сайте, который называется "Google Android - это несложно".
Новичкам будут полезны конкретные примеры использования.
У вас есть ответы на вопросы в топике?

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 04 май 2013, 16:34

Вот что полезного мною найдено вот тут Debugger Tutorial:
Lesson 1
● Discuss Tutorial Target Audience
● Introduce Debugger concepts
● Create Java project in Eclipse using Import from archive file
● Run MyLibrary main method in debug mode
● Learn how to use Step Over, Step Into, and Step Return commands to step through program
Lesson 2
● Apply Step Filters
● Learn more about Step commands
● Use multiple breakpoints and Resume command
● Use Run to Line command
● Explore Stack Frames and Variables view
● Inspecting expressions
Lesson 3
● Use the Expressions view and Watch Expressions
● Use the Display view to create Watch Expressions
● Debug with JUnit tests
● Start debugging the MyLibrary class
● Select Expressions using short-cut keys
Lesson 4
● Use Exception Breakpoints
● Set Eclipse Debugger preferences
● Correct bugs with hot code replacement
● Use Drop To Frame to rewind a debug session
● Change the value of variables inside a debug session
Lesson 5
● Implement breakpoints options: conditional breakpoint, hit counts
● Set watchpoints (field breakpoints) and Class Prepare breakpoints
● Use the Stop at main (open debug run dialog)
● Use the Suspend command
● Use the Step into selection command
Lesson 6
● Debug into Java system classes (e.g., ArrayList)
● Use the debugger to illustrate Java object references and the String .equals() method
Lesson 7
● Use the debugger to understand a recursive method
● Use the Drop to Frame command with stack frames to rewind the debug session

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 04 май 2013, 16:36

В zip'ах лежат swf-видеофайлы, так что и без знания языка можно многое понять.
Огромный минус всего этого в том, что это, увы, старьё - 2008-02-17. :(
Используется Eclipse 3.3.
Ну и на англ. языке.
Так что прошу знатоков не стесняться и делиться с юниорами своими сокровенными знаниями. ;)

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Работа в DDMS Eclipse

Сообщение Mikhail_dev » 04 май 2013, 23:03

Запомните кнопочку, что рядом со знаком STOP, слева. Она анализирует работу вашего приложения, его загруженность и после выдает результат в процентах, какой метод сколько потребляет ресурсов. Если метод открыть, то увидите там parents и children. Для работы надо нажать на неё, после чего дать приложению поработать с минут 1-5 (зависит от ситуации), после чего обратно нажать на неё. через некоторое время вывалится то, о чем я уже написал.
Это то, о чем rezak написал в виде
Можно смотреть сколько приложение "кушает" памяти; какая часть "кушает" эту память;
Еще левее кнопка, это обновление информации о потоках в выбранном процессе. Будет удобна для просмотра того, какие потоки крутятся в данном процессе.
Heap нужен вроде для просмотра того, какие объекты создавались. Но по мне первое, о чем я написал, дает такой же результат, только с другой стороны подходит к данному вопросу - загруженности.

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 04 май 2013, 23:51

Спасибо, no--, за полезный коммент.
А ответ на вот этот вопрос из топика - "Допустим, я открыл в данный момент на устройстве какое-то приложение и его определённую вкладку. Могу я увидеть в DDMS, какая активити/класс в этом диалоге задействована?" - вы знаете?
К примеру, залоченный под определённого сотового оператора андроидфон при вставке симки другого сотового оператора выводит диалоговое окно для ввода кода разблокировки. Могу я определить, какая активити/класс/файл инициировала вывод окна?

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Работа в DDMS Eclipse

Сообщение Mikhail_dev » 05 май 2013, 00:08

Хороший вопрос. Никогда не работал с такими моментами. Но практически уверен, что DDMS это делать не умеет.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Работа в DDMS Eclipse

Сообщение rezak90 » 05 май 2013, 00:40

=bor= писал(а):Спасибо, no--, за полезный коммент.
А ответ на вот этот вопрос из топика - "Допустим, я открыл в данный момент на устройстве какое-то приложение и его определённую вкладку. Могу я увидеть в DDMS, какая активити/класс в этом диалоге задействована?" - вы знаете?
К примеру, залоченный под определённого сотового оператора андроидфон при вставке симки другого сотового оператора выводит диалоговое окно для ввода кода разблокировки. Могу я определить, какая активити/класс/файл инициировала вывод окна?
При помощи Eclipse нет. Android это тот же Linux, берёшь putty, подключаешься и творишь все чудеса, особенно если есть рут, если нету то получить не составит труда.
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 05 май 2013, 01:54

rezak90 писал(а):При помощи Eclipse нет.
Спасибо за ответ.
rezak90 писал(а):творишь все чудеса
А насчёт чудес можно поконкретнее. :D

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Работа в DDMS Eclipse

Сообщение rezak90 » 05 май 2013, 02:07

А насчёт чудес можно поконкретнее.
Подробнее не могу, в Андроиде из консоли не ходил, но как я сказал это обычный Linux (хоть и со своими приколами) и соответственно можно подебажить на уровне ядра
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 05 май 2013, 02:45

rezak90 писал(а):Подробнее не могу, в Андроиде из консоли не ходил
Там всё через adb: adb devices, adb install cameraAPI.apk и т.п.
Достаточно набрать в консоли C:\...\android-sdks\platform-tools\adb и вывалится список команд.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Работа в DDMS Eclipse

Сообщение rezak90 » 05 май 2013, 03:30

не, adb то не то
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 05 май 2013, 04:03

rezak90 писал(а):не, adb то не то
Ну, не то, так не то - чудеса давайте. :D

Tamachi
Сообщения: 203
Зарегистрирован: 17 апр 2013, 00:08

Re: Работа в DDMS Eclipse

Сообщение Tamachi » 05 май 2013, 08:55

Да, чудеса в студию!

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Работа в DDMS Eclipse

Сообщение rezak90 » 05 май 2013, 11:48

Та что вам одни примеры подавай. Я выдвинул только теорию, если считаете её более менее адекватной то проверяйте. У меня как то на такие игры времени особо нету, тем более в праздничные дни я могу лишь пофлудить здесь :D
R.id.team
Политика на форуме запрещена

Tamachi
Сообщения: 203
Зарегистрирован: 17 апр 2013, 00:08

Re: Работа в DDMS Eclipse

Сообщение Tamachi » 05 май 2013, 12:57

rezak90 писал(а):Та что вам одни примеры подавай. Я выдвинул только теорию, если считаете её более менее адекватной то проверяйте. У меня как то на такие игры времени особо нету, тем более в праздничные дни я могу лишь пофлудить здесь :D

Увы, чудеса только в сказках бывают! Даже в праздничные дни!

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 05 май 2013, 16:32

Tamachi писал(а):
rezak90 писал(а):Та что вам одни примеры подавай. Я выдвинул только теорию, если считаете её более менее адекватной то проверяйте. У меня как то на такие игры времени особо нету, тем более в праздничные дни я могу лишь пофлудить здесь :D
Увы, чудеса только в сказках бывают! Даже в праздничные дни!
Я правильно понимаю, что ваши слова можно трактовать как "Не подаю даже по праздникам!"? :D
Где ваши советы по работе с Eclipse вообще и с DDMS в-частности? Флудом можно закопать любую тему, даже самую полезную, а пост с практическими приёмами работы с эмулятором, думаю, интересен будет многим.
Попробую немного скомпенсировать понесённый урон. :D
=====================================
Зайдите в меню Refactor/History:

Изображение

Тут показана история работы с проектами (1). К сожалению, из неё нельзя сразу переходить к данной точке времени, отменяя совершённое в тот момент действие, как, например, по Ctl+Z, но историю можно просматривать и редактировать.

Изображение

На примере видим, что в 6:50 поле 'screen_sendnews_btn_selectVideo' было переименовано в 'btn_selectVideo' (2, 3). Удобно, что текст можно копировать в буфер (4) и потом, найдя по Ctrl+F в редакторе (5), вспомнить всё, что натворил под утро и отредактировать. :D
Как в том анекдоте про админов:
- О, ччорт! Как же я ненавижу пятницу!!
- ??
- Пили пиво, меняли пароли...

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Работа в DDMS Eclipse

Сообщение rezak90 » 05 май 2013, 16:54

ладно, уговорили, вот потратил 3 секунды для ленивых что бы нажать кнопку "Search Google" http://developer.android.com/tools/debugging/ddms.html
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Работа в DDMS Eclipse

Сообщение =bor= » 05 май 2013, 17:11

Так бы и давно. :D
Добавил в шапку.
А теперь попрошу перевод. :D

Ответить