Я создаю приложение для Android, которое включает в себя несколько коротких звуковых клипов. В настоящее время я использую SoundPool
для загрузки своих аудиоклипов, как только 2-е действие начинается с действия меню. Мне кажется, что проблема в том, что, как только начинается это вторичное действие, загрузка звуковых клипов вызывает многократное переполнение размера кучи, а затем через некоторое время действие фактически загружается (эмулятор никогда не выдает ошибку или принудительное завершение). Поможет ли мне использование MediaPlayer
и не допустит ли переполнения размера кучи?
Кроме того, в данный момент действие меню запускает второе действие в ожидании результата (используя функцию startActivityForResult()
). Означает ли это, что действие меню удерживается в памяти, а также загружается второе действие в память? Если да, могу ли я помочь с проблемами с памятью, вызвав finish()
в меню активности после запуска 2-го (затем перезапустите меню, когда пользователь захочет вернуться в меню, или это вызовет целый новый набор вопросы?)