Сколько памяти должно использовать типичное приложение для Android?
Я разработал приложение для анализа файлов на платформе Android. Как проверить, сколько памяти фактически использует мое приложение? Я попробовал команду adb shell cat / proc / meminfo, но это не дает мне, сколько памяти использует мое приложение. он просто дает общую информацию об общей памяти. И сколько памяти должно обычно использовать приложение? что обычно или необычно? Любая помощь приветствуется. Спасибо!
5 ответов
Вы можете использовать DDMS > Allocation Tracker для отслеживания использования памяти и распределения кучи для вашего приложения.
http://developer.android.com/resources/articles/track-mem.html
Для отслеживания общей памяти PID вы можете использовать следующие два метода в ActivityManager
Чтобы получить PID вашего приложения:
List<ActivityManager.RunningAppProcessInfo> getRunningAppProcesses ()
а затем MemoryInfo
MemoryInfo[] getProcessMemoryInfo (int[] pids)
Приложения Android ограничены определенным объемом памяти. Поскольку он довольно (безумно?) Низкий, я думаю, вы не должны испытывать чувство вины за использование всего этого!
Ограничение составляет 16 МБ на очень старых устройствах, 24 МБ или 32 МБ на новых. Похоже, что информация о размерах для разных устройств невелика, и никто не знает, почему этот предел настолько мал, когда современные телефоны имеют 1-2 ГБ ОЗУ.
http://blog.javia.org/how-to-work-around-androids-24-mb-memory-limit/
https://groups.google.com/forum/?fromgroups=
Ага, я нашел несколько конкретных чисел на пределе:
http://dubroy.com/memory_management_for_android_apps.pdf
G1: 16 МБ
Дроид: 24 МБ
Nexus One: 32 МБ
Xoom: 48 МБ
Вы можете взглянуть на это. Как обнаружить использование памяти моим приложением в Android? Или просто попробуйте
ActivityManager.getMemoryInfo()
Вы можете использовать встроенный профилировщик в Android Studio для проверки использования вашей памяти, ЦП, сети и других ресурсов.
Запустите ваше приложение.
Щелкните "Профайлер" на нижней панели окна инструментов.
Для меня обычное дело, когда мое приложение использует около 70–120 МБ памяти.
Профилировщик Android Studio:
Вы можете проверить использование памяти приложения в менеджере приложений, вы можете проверить это по ссылке
Вы можете получить использование памяти вашего приложения для Android с помощью следующей команды: Предположим, у вас есть adb в PATH:
adb shell dumpsys meminfo com.<your.package>
Чтобы увидеть живое обновление используемой памяти, вы можете попробовать
watch "adb shell dumpsys meminfo com.<your.package>"
Надеюсь это поможет