Проблемы о переполнении размера кучи со звуковыми клипами -- android поле с участием memory-management поле с участием soundpool пол Связанный проблема

Heap size overflow issues with sound clips


4
vote

проблема

русский

Я создаю приложение для Android, которое включает несколько коротких звуковых зажимов. На данный момент я использую SoundPool для загрузки моих звуковых клипов после начала 2-го деятельности по меню меню. Проблема, в котором я, кажется, имею в том, что когда начнется эта вторичная активность, загрузка звуковых клипов вызывает несколько переполнений размера кучи, а затем через некоторое время активность на самом деле нагрузки (эмулятор никогда не дает ошибку или ошибку). Будет использовать <код> MediaPlayer помогать мне здесь и сохранить эти переполнения размера кучи.

Кроме того, на данный момент меню действий начинает 2-й активность, ожидающий результата (используя <код> startActivityForResult() функции). Значит ли это, что меню активность проводится в памяти, а также загрузка 2-й активности в память? Если это так, я могу помочь моим вопросам памяти, вызывая <код> finish() в меню, как только 2-й один запускается (затем перезапустить действие меню, когда пользователь желает вернуться в меню или совершенно новый набор вопросов?)?

Английский оригинал

I'm creating an Android app that involves multiple short sound clips. At the moment, I'm using SoundPool to load my sound clips once a 2nd activity is begun by the menu activity. The problem I seem to be having is that once this secondary activity begins, the loading of the sound clips causes multiple heap size overflows and then after a bit the activity actually loads (the emulator never gives an error or a force quit). Would using the MediaPlayer help me here and keep these heap size overflows from occuring?

Also, at the moment, the menu activity starts the 2nd activity waiting for a result (using the startActivityForResult() function). Does this mean that the menu activity is being held in memory as well as loading the 2nd activity into memory? If so, could I help my memory issues by calling finish() on the menu activity once the 2nd one is started (then restarting the menu activity when the user wishes to go back to the menu or would this bring up a whole new set of issues?)?

</div
        
     
     

Список ответов

5
 
vote
vote
Лучший ответ
 

Да, Soundpool сохранит все звуки в памяти. Один экземпляр медиаплеера, вероятно, будет все, что вам нужно Смотрите здесь . Вы должны сделать это, и ваши вопросы памяти должны уходить, не поехав в любые экстремальные меры.

 

Yes, soundpool will keep all the sounds in memory. A single instance of media player would probably be all you need see here. You should do this and your memory issues should go away without having to go to any extreme measures.

</div
 
 
 
 

Связанный проблема

0  Флаттер на родном приложении Android, сзади не работает  ( Flutter in native android app back pressed not working ) 
Я прочитал много тем, но ничего не работает и был действительно же, что мой. Я пытаюсь добавить вспышки трепетания внутри нативного проекта Android, у меня ...

0  MediaControllerCompat - Java.lang.illegalargumentException: плохое направление 3  ( Mediacontrollercompat java lang illegalargumentexception bad direction 3 ) 
Я выдаю простую команду mediedcontrollerCompat: Controller.adjustVolume (-1, 0); еще мое приложение FCS с ... <код> java.lang.IllegalArgumentException: ...

216  Как использовать пользовательский шрифт в проекте, написанном в Android Studio  ( How to use custom font in a project written in android studio ) 
Я пытался использовать пользовательский шрифт в Android Studio, поскольку мы сделали в Eclipse. Но, к сожалению, не удалось выяснить, где поставить папку «Акт...

1  Как создать стеклянный проект GDK в идее?  ( How to create glass gdk project in idea ) 
До сих пор я не смог найти решение для создания проекта Google Glass GDK в идее, но я должен создать его через Eclipse, следуя Шаги Нажмите File & GT; Но...

0  Android полноэкранный  ( Android fullscreen ) 
Я разрабатываю приложение Android, используя Eclipse. Я заметил одно и то это приложение не показывает на полном экране. Есть пустые черные пространства вокру...

76  Как настроить пункт и элемент текстового цвета внутри навигацииВизнес?  ( How to customize item background and item text color inside navigationview ) 
Я хочу достичь чего-то вроде этого показано в Документы дизайна материалов < / a>. <Код> colorControlHighlight используется для фона на проверенных элемен...

2  Котлин: кастинг объекта к общему классу  ( Kotlin casting an object to generic class ) 
Как получить тип универсального класса и отбрасывать к нему объект? Я хочу использовать эту функцию для передачи класса интерфейса: <код> protected fun <T...

0  Как добавить анимацию на фоне в живых обоях в андроид?  ( How to add animation on background in live wallpaper in android ) 
Я хочу добавить прикосновение эффект с анимацией в живых обоях: <код> Bitmap img = BitmapFactory.decodeResource(getResources(),R.drawable.heart); float x = ...

8  Мобильный WebKit Browser (Chrome) адресная строка изменяет $ (окно). Height (); Изготовление фона-размера: прикрытие вскакивание каждый раз  ( Mobile webkit browser chrome address bar changes window height making ba ) 
Проблема в том, что у меня есть несколько девравлических позиций абсолютно, которые имеют фоновый размер: крышка; И их высота рассчитывается JavaScript для за...

-3  Как прекратить воспроизведение сервиса в Android  ( How to stop playing service in android ) 
У меня есть вопрос о сервисе и трансляции в Android.I Создайте страницу будильника, которые используя класс тревоги Reciver (он расширяет класс трансляции) дл...

1  Можно ли построить ящики Edittext, как ListView?  ( Is it possible to build edittext boxes like a listview ) 
Так что в основном то, что я хотел бы сделать, это уметь создать список редактируемых полей, используя ящики Edittext. Однако вместо того, чтобы войти в мой X...

2  Как получить доступ к поиску детей?  ( How to access searchview children ) 
Я пытаюсь получить доступ <код> EditText поля <код> SearchView (v7) внутри моего приложения, но я всегда заканчиваюсь в исключением NULL указателя. Пока я...

0  Прокрутите вверх относительной макета при прокрутке вверх по просмотру  ( Scroll up relative layout when scrolling up listview ) 
Я создаю приложение. и пользовательская информация отображается в относительной макете. При относительной макете - это список с элементами, создаваемыми польз...

0  Async HTTP-запрос и Arduino  ( Async http request and arduino ) 
Я разрабатываю приложение для Android, которое будет общаться с Arduino Uno, хотя WiFi. Arduino уже запрограммирован, чтобы включить цифровой порт 12, когда я...

16  Обычная задача Android (эквивалент Cronjob)  ( Android regular task cronjob equivalent ) 
Последний раз, когда этот вопрос был задан (другим пользователем), ответ ответа был: Если это работает в беговой активности, вы можете использовать таймер ...

Связанный проблема

0  Флаттер на родном приложении Android, сзади не работает 
0  MediaControllerCompat - Java.lang.illegalargumentException: плохое направление 3 
216  Как использовать пользовательский шрифт в проекте, написанном в Android Studio 
1  Как создать стеклянный проект GDK в идее? 
0  Android полноэкранный 
76  Как настроить пункт и элемент текстового цвета внутри навигацииВизнес? 
2  Котлин: кастинг объекта к общему классу 
0  Как добавить анимацию на фоне в живых обоях в андроид? 
8  Мобильный WebKit Browser (Chrome) адресная строка изменяет $ (окно). Height (); Изготовление фона-размера: прикрытие вскакивание каждый раз 
-3  Как прекратить воспроизведение сервиса в Android 
1  Можно ли построить ящики Edittext, как ListView? 
2  Как получить доступ к поиску детей? 
0  Прокрутите вверх относительной макета при прокрутке вверх по просмотру 
0  Async HTTP-запрос и Arduino 
16  Обычная задача Android (эквивалент Cronjob)