Очистка Activity Android

166
07 января 2019, 15:30

У меня есть игра в которой есть несколько activity (Магазин, игровой процесс, меню, регистрация и т.д.).

Как сделать очистку activity? Я перешел, допустим, с регистрации в главное меню; на момент нахождения на экране регистрации тратилось 60 мб ОЗУ устройства, - при переходе на главное меню расход ОЗУ увеличился до 120 мб.

Суть вопроса: как убить предыдущую activity так, чтобы при переходе на следующую с нее не поступало абсолютно ничего (чтобы при вызове activity которую мы убили, она заново создавалась, а не приходила к сохраненному состоянию).

Все рекомендации, - finish(), finishaffinity(), noHistory="true" в манифесте, сетать во все ImageView при переходе пустоту , убивать активити через Intent в самом якобы стеке, - не приводят ни к чему.

Память поедают именно картинки (P.S. картинки оптимизированы по максимуму самая большая картинка весит 20 кб самая маленькая 2кб).

Расход памяти на Java колеблется от 15 до 20 мб. На сам код 6-8 мб.

Answer 1

можно попробовать - finishAffinity()

https://developer.android.com/reference/android/app/Activity.html#finishAffinity()

я использую в основной активити, закрывает все, а до этого были возвраты к старым копиям

@Override
    public void onBackPressed() {
      finishAffinity()
    }
READ ALSO
Смоделировать консольный ввод Enter

Смоделировать консольный ввод Enter

Есть класс TestThread который запускает класс Writer который печатает сообщения и останавливается по нажатию клавиши Enter в консолиВ классе TestMain...

204
Получение сообщений андроидом от firebase

Получение сообщений андроидом от firebase

Есть десяток андроидов, все подписаны на topic firebaseСообщения не содержат заголовка (notification) только date и не много

145
Покрыть тестом значение в методе

Покрыть тестом значение в методе

Есть класс в котором есть методВ методе инициализируется переменная String, ей присваивается ссылка

168