제목에서 알 수 있듯이 고해상도 이미지로 가득 찬 레이아웃으로 약 8 회의 활동이 있습니다. RAM 메모리가 적은 약한 안드로이드 운영 체제에서는 각 활동을 단독으로 열지 만 다른 프로그램을 열려고하면 충돌이 발생합니다. 하지만 앱을 다시 시작하고 해당 활동을 열면 작동합니다. 첫 번째 활동에서 이러한 이미지의 앱 메모리를 정리하여 다른 활동을 열려면 어떻게해야합니까? onDestroy()는 그것을 정리합니까?활동을 종료 한 후 메모리를 정리하는 방법
0
A
답변
2
xml 레이아웃의 리소스 이미지가 마음에 들면 정리할 필요가 없습니다. 안드로이드가 대신 해줄 것입니다. 하지만 큰 비트 맵 객체를 사용한다면.
Bitmpap bmp; // not null
bmp.recycle();
bmp = null;
final boolean bmpIsRecycled = bmp.isRecycled()
// Returns true if this bitmap has been recycled.
이 비트 맵과 관련된 기본 객체를 해제하고 픽셀 데이터에 대한 참조를 지 웁니다. 이렇게하면 픽셀 데이터가 동 기적으로 해제되지 않습니다. 다른 참조가 없으면 단순히 가비지 수집을 허용합니다. 비트 맵은 "dead"로 표시되어 getPixels() 또는 setPixels()가 호출되면 예외가 발생하고 아무 것도 그리지 않습니다. 이 작업은 되돌릴 수 없으므로 비트 맵을 더 이상 사용하지 않을 경우에만이 작업을 호출해야합니다. 이것은 고급 호출이며 일반적으로 호출 할 필요가 없습니다. 일반적인 GC 프로세스는이 비트 맵에 대한 참조가 더 이상 없을 때이 메모리를 비 웁니다.
실제로 앱이 중단되면 어떤 오류 로그가 있습니까? 어쩌면 메모리 누수와 관련이 없습니까?
+0
그래, 그것은 기억이났다. 앱에서 모든 활동을 더 많이 열려고 시도한 다음 큰 이미지로 시작하여 추락했습니다 ... 크기를 조정 했으므로 이제는 괜찮습니다. – user3932494
관련 문제
- 1. Theme.Dialog를 종료 한 후 부모 활동을 표시하지 않는 방법
- 2. 인터넷 탐색기에서 JSONP 메모리를 정리하는 방법
- 3. Cplex C++ inferface. 메모리를 정리하는 방법?
- 4. WT에서 메모리를 정리하는 방법은 무엇입니까?
- 5. 메모리를 할당하고 종료 한 후에 메모리에 저장합니다.
- 6. Android : 활동을 종료 한 후 서비스를 종료하는 방법은 무엇입니까?
- 7. 애니메이션을 종료 한 후 새 활동을 시작하는 방법은 무엇입니까?
- 8. 종료 된 작업에서 jbpm 데이터베이스를 정리하는 방법
- 9. SIGKILL 후에 정리하는 방법?
- 10. 다른 활동을 호출 한 후 활동을 마치면 메모리를 확보 할 수 있습니까?
- 11. boundingRect를 종료 한 후 QGraphicsitems를 제거하는 방법
- 12. model()을 사용하여 항목을 삭제 한 후 정리하는 방법
- 13. 종료 응용 프로그램을 종료 한 후 localdb 프로세스를 종료하는 방법
- 14. 속성을 위해 메모리를 정리하는 방법은 무엇입니까?
- 15. iOS에서 시스템 메모리를 정리하는 방법은 무엇입니까?
- 16. 충돌시 정리하는 방법?
- 17. 안드로이드 응용 프로그램을 "강제 종료"한 후 마지막으로 집중된 활동을 얻는 방법
- 18. Android : 활동을 종료 한 후 대화 상자를 닫는 방법? 예를 들어
- 19. 어린이 활동을 종료 할 때 모든 활동을 끝내는 방법
- 20. 아약스 제출 후 양식을 정리하는 방법?
- 21. 디코드 된 오디오 스트림 (모바일)에서 메모리를 정리하는 적절한 방법
- 22. Android. 충돌 후 모든 활동을 닫는 방법
- 23. 테이블을 올바르게 정리하는 방법
- 24. 활동을 변경 한 후 AsyncTask가 다시로드됩니다.
- 25. 메뉴를 클릭 한 후 다른 활동을 호출하십시오.
- 26. 활동을 표시 한 후 코드를 어떻게 실행합니까?
- 27. 알림을 클릭 한 후 활동을 시작하지 않았습니다.
- 28. BaseActivity로 활동을 확장 한 후 메뉴가 사라졌습니다.
- 29. perl에서 message_string()을 수행 한 후 메모리를 지우는 방법
- 30. BitmapImage를 사용하여 이미지 소스를 설정 한 후 메모리를 확보하는 방법?
나는 그것에 대해 걱정할 필요가 없다고 생각합니다. 안드로이드 시스템은 당신을 위해 그것을한다 – Nabin