У меня есть 8 различных действий, которые открывают друг друга на случайном нажатии кнопки. После нажатия кнопки, которая открывает новую активность примерно 15 раз, она сработает. Нужно ли мне закрывать действия или есть другое решение?Как исправить ошибку OutOfMemory в java?
ответ
Вы можете запросить больше размер кучи, добавив это в манифесте:
android:largeHeap="true"
Однако, основываясь на ваш комментарий, я думаю, что этот случай идеально подходит для фрагментов, а не деятельности. Вы можете выполнить все это в одном упражнении с несколькими многократно используемыми фрагментами.
Как сказал Гордый Пандей, вы можете захотеть изучить фрагменты вместо действий. Другой возможный способ - позвонить finish();
сразу после запуска следующего действия. Это закроет предыдущую активность. Однако, если вы когда-либо собираетесь вернуться к этому действию с помощью кнопки «Назад» или чего-то еще, этого не будет.
Когда вы создаете новые действия и закрываете их, GC автоматически очищает память, используемую старыми действиями, когда это необходимо. Вы получаете ошибку из памяти, потому что,
- Ваши действия удерживают ссылку, которая еще жива. Это предотвратит очистку GC от старых действий.
, например,
- Посмотрите на анимации, которые не очищаются должным образом.
Лучший способ справиться с этим - найти утечку памяти.
https://developer.android.com/studio/profile/investigate-ram.html
Предложение:
Как mentined 3kings, попробуйте сделать в одной деятельности. т.е. использовать фрагменты!
- 1. Как исправить ошибку outofmemory в Android?
- 2. Как исправить ошибку Java?
- 3. Можно ли исправить ошибку OutOfMemory, указав флаги GC?
- 4. Как исправить ошибку lingpipe java
- 5. Как преодолеть ошибку java outofmemory при запуске приложения Java?
- 6. Ошибка outofmemory в java
- 7. CreateBitmap вызывает OutOfMemory ошибку
- 8. Как исправить эту ошибку в Java?
- 9. Как исправить плавающую десятичную ошибку в Java?
- 10. Метод вызывает ошибку OutOfMemory
- 11. ArrayList.add() вызывает ошибку OutOfMemory?
- 12. Picasso вызывает ошибку OutOfMemory
- 13. Как исправить проблему 5.0.0x Lollipop OutOfMemory?
- 14. OutOfMemory Java
- 15. Ошибка Java Java OutOfMemory
- 16. Как исправить ошибку в
- 17. Как исправить ошибку?
- 18. Как исправить эту шаблонную ошибку генератора Java?
- 19. Справка по Java: как исправить эту ошибку?
- 20. Как исправить ошибку Java VM WebConnect?
- 21. Как исправить ошибку NullPointerException?
- 22. Исправить ошибку outofmemory при отображении звука в виде графика, кроме увеличения пространства кучи
- 23. Как исправить ошибку «ArrayIndexOutOfBoundsException»?
- 24. Проблемы с OutOfMemory в Java
- 25. Как исправить ошибку JDK?
- 26. Как исправить ошибку «java.util.InputMismatchException»?
- 27. Как исправить ошибку сломанного файла?
- 28. KafkaSpout продолжает бросать ошибку OutOfMemory
- 29. Неверное обнаружение OutOfmemory в Java
- 30. Как исправить эту ошибку Eclipse?
Возможно, проблема в том, что они сначала открывают друг друга? – 3kings
Я хочу, чтобы это было сделано. Я хочу непрерывный цикл. Я ищу что-то похожее на музыкальный плеер на случайном перетасовке и повторяю все, кроме как с действиями. Или я должен искать все это в одном упражнении? –
Вероятно, вы должны решить эту проблему, используя меньше действий .... – FishStix