Утечка памяти в телефоне Android - PullRequest
0 голосов
/ 17 июня 2011

В моем телефоне произошла утечка памяти.

Шаги:

  1. Откройте браузер (домашняя страница: www.google.com).Он извлечет страницу.
  2. Выберите клавишу возврата, чтобы выйти из браузера (закрыть).
  3. Повторите те же шаги (1-2) 5 раз.

Наблюдатель следит за данными по "adb shell dumpsys meminfo PID (браузера):

Первый раз (при первом открытии браузера - после шага 1):

Использование памяти приложениями (кБ):Время работы: 428816 В реальном времени: 434932

** MEMINFO in pid 899 [com.android.browser] **

                  native   dalvik    other    total
          size:    24296     6727      N/A    31023
     allocated:    24241     3955      N/A    28196
          free:       54     2772      N/A     2826
         (Pss):     3455     2259    30025    35739


(shared dirty):     2064     1772     7444    11280

  (priv dirty):     3388      548    21116    25052

 Objects

           Views:        0        ViewRoots:        0
     AppContexts:        0       Activities:        0
          Assets:        3    AssetManagers:        3
   Local Binders:       34    Proxy Binders:       28
Death Recipients:        1
 OpenSSL Sockets:        0

Второй раз (после шага - 4) Открытие - закрытие браузера 5 раз:

Использование памяти приложениями (кБ): Время работы: 473642 В реальном времени: 479758

** MEMINFO in pid 899 [com.android.browser] **

                  native   dalvik    other    total
          size:    45616     7559      N/A    53175
     allocated:    45322     4850      N/A    50172
          free:       29     2709      N/A     2738
         (Pss):     4602     2301    51988    58891

(shared dirty):     2060     1736     7440    11236

  (priv dirty):     4536      584    42360    47480

Objects

            Views:        0        ViewRoots:        0
      AppContexts:        0       Activities:        0
           Assets:        3    AssetManagers:        3
    Local Binders:      113    Proxy Binders:       47
 Death Recipients:        1
  OpenSSL Sockets:        0

Не могли бы вы помочь нам выяснить, какие данные здесь показывают, какая информация (например, что такое размер, выделенный, свободный, локальные связыватели и т. Д.) И где в приведенных выше данных показано, что имеется утечка памяти.

Новое во всем этом анализе, поэтому задайте основные вопросы: - (

Пожалуйста, помогите мне в этом.

Спасибо Rke

1 Ответ

0 голосов
/ 18 июня 2011

Знаете, я не вижу здесь утечки памяти. Самый распространенный способ получить утечку памяти - это иметь ссылки на Activity, которые нужно было уничтожить. В любом случае, есть способ поиска утечек, в блоге разработчиков Android есть хорошая статья об анализе памяти в Eclipse с помощью MAT, а также есть видео из Google IO-2011. Попробуйте, и, возможно, вы обнаружите, что не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...