У меня довольно сложное приложение -
Активность пользовательского интерфейса запускает службу и настраивает 2-сторонние обратные вызовы AIDL, чтобы они могли обмениваться данными.
Служба работает вечно (если не отключится)кнопка в пользовательском интерфейсе).
Проблема в том, что когда пользователь выходит из действия, память действия не освобождается.- Объем памяти, используемой моим приложением, остается неизменным, даже если действие пользовательского интерфейса было закрыто.-Куча по-прежнему показывает mapTiles и прочее дерьмо пользовательского интерфейса на нем, даже если действие пользовательского интерфейса было закрыто.
Так что я предполагаю, что Служба каким-то образом хранит ссылки на это действие.Я знаю много статей, предупреждающих об утечке контекста активности.Служба ссылается на активность только через слабую ссылку, хранящуюся в области приложения.(класс, расширяющий Application)
Есть ли способ найти то, что конкретно ссылается на Activity?Дерево доминирования показывает макеты mapTiles и ListView, которые поглощают всю мою память ... но я не могу найти ссылку на Activity, которая поддерживает эти вещи.
Кроме того, есть способ выгрузитьвещь дампа кучи HPROF, если возникает OutOfMemoryException?