Как проверить производительность приложения на Android?
Как я могу проверить приложение на производительность в Android? Какая поддержка предоставляется в Android и как ее использовать?
5 ответов:
если вы хотите профилировать приложение, чтобы найти узкие места производительности вы можете использовать
traceview
инструмент. Это дает вам графическое представление трассировок производительности вашего приложения.чтобы создать трассировку, добавьте в код, где вы хотите начать трассировку, следующее:
Debug.startMethodTracing("myapp");
а затем поставить следующее, Когда вы хотите, чтобы остановить трассировку:
Debug.stopMethodTracing();
это создаст трассировку вызов файла
myapp.trace
в корневом каталоге SD-карты. Как написано на SD-карте:
- если вы используете эмулятор, вам потребуется добавить SD-карту в AVD.
вам нужно будет дать вам разрешение приложения на запись SD-карты, добавив в манифест следующее:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
после того, как файл был создан вам нужно будет скопировать его на ваш компьютер. Вы можете сделать это с помощью :
adb pull /sdcard/myapp.trace c:/my/dir/myapp.trace
наконец, начать
traceview
давая ему полный путь файл трассировки:traceview c:/my/dir/myapp.trace
у меня были некоторые проблемы с
traceview
не сOutOfMemory
исключения. Я исправил это на Windows, изменив последнюю строкуtraceview.bat
от:call java -Djava.ext.dirs=%javaextdirs% -Dcom.android.traceview.toolsdir= -jar %jarpath% %*
to:
call java -Xmx1g -Djava.ext.dirs=%javaextdirs% -Dcom.android.traceview.toolsdir= -jar %jarpath% %*
добавлять позволяет
traceview
использовать больше памяти.
и теоретически, DDMS может получить выделение памяти для вашей программы, а затем вы можете проанализировать дамп с помощью профилировщиков. ссылка DDMS.
Причина, по которой я теоретически выделил курсивом, заключается в том, что я сам еще не пробовал делать ничего подобного.
Я думаю, что traceView содержит слишком много информации, вы можете легко заблудиться.
мое решение - просто зарегистрировать системное время в трех местах в коде.
до и после и центр на potiential медленный код.
как двоичный поиск, в следующий раз, сузить его шаг за шагом, а затем, наконец, найти код виновника.
другой способ проверить это с помощью TruClient на Бегуне нагрузки
шаги, которые необходимо выполнить для мобильного интернета являются:
- Новый Скрипт VuGen
- Мобильная Протоколом
- Выберите TruClient Mobile Web
- Нажмите Кнопку Создать
- теперь вы можете создавать скрипты
- Нажмите кнопку разработать скрипт
- появляется всплывающее окно для выбора устройства
- выберите действия и вы можете записать скрипты
шаги, которые необходимо выполнить для родного мобильного телефона являются:
- Новый Скрипт VuGen
- Мобильная Протоколом
- Выберите TruClient Native Mobile
- Нажмите Кнопку Создать
- теперь вы можете создавать скрипты
- нажмите кнопку разработать скрипт
- появляется окно TruClient, подключенное к Firefox
- Нажмите Общие Настройки
- настройка URL-порта сервера
- если вы не знаете URL-адрес сервера порт означает установку операционной системы мониторинга приложений на вашем устройстве. здесь вы можете найти IP-адрес
- введите имя пользователя и пароль
- Нажмите кнопку Готово
вы можете записывать сценарии и выполнять тестирование....
вы можете использовать load runner.,
используйте эту ссылку, чтобы найти больше об этом.,
необходимо выполнить следующие шаги:
- Создать Новый Скрипт VuGen
- выберите мобильное приложение-HTTP / HTML
- Параметры Записи-- > Выберите Эмулятор Записи
- дайте путь к записи Эмулятор как D:\android\AVD менеджер.exe
- в командной строке - avd AVD_NAME-netspeed full-netdelay нет где AVD_Name-это имя вашего устройства
- выберите рабочий каталог
- нажмите кнопку Готово
теперь вы можете выполнить свой тест.,