2012-07-24 2 views
3

응용 프로그램이 연결된 장치에서 실행되는 동안 터미널에서 다음 명령을 실행했습니다. 내가 몇 내 응용 프로그램의 일부를 실행 한 후Android 메모리 정보 해석

Asset Allocations 
zip:/data/app/com.mine.application-1.apk:/resources.arsc: 115K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 
zip:/data/app/com.mine.application-1.apk:/assets/HelveticaBold.otf: 374K 

zip:/data/app/com.mine.application-1.apk:/assets/HelveticaOblique.otf: 3 
85K 

이 발생합니다 ADB 쉘 dumpsys 내가 표를 얻으면, 나는 또한 다음과 같이 "자산 할당"의 목록을 com.mine.application 을 meminfo 파일 타임스. 이것이 Helvetica 글꼴이 여러 번 할당된다는 것을 의미한다고 생각하면 맞습니까? 함께 추가 된 모든 메모리를 모두 사용하고 있습니까? 또한 특정 활동을 종료 한 후에도 이러한 할당이 제거되지 않으므로 메모리 누수라고 생각하는 것이 맞습니까?

이것이 사실이라면 이것을 해결하기 위해 onPause에서 글꼴에 대한 참조를 모두 null로 만들겠습니까? 감사.

+0

너무 많은 로컬 개체를 만들지 않는 것이 좋습니다. 필드로 한 번 글꼴 개체를 만드는 것이 맞을 수도 있습니다. –

답변

4

Typeface.createFromAsset()에 메모리 누수가있는 문서화 된 Android 버그가 있습니다.

http://code.google.com/p/android/issues/detail?id=9904

+0

3 년이 지난 지금도 여전히이 문제가보고 있습니다. 고정되어 있다고해도, 고정되어 있다고 생각합니다. –

+0

로보트 글꼴이로드 된 지금 바로 업데이트가이 문제에 직면했습니다. 반복되는 하중을 피하기 위해 다른 곳에 옮겼습니다. – sudhanshu