Debug.dumpHprofData
Memory Analyzer를 사용 하여 HPROF 파일 (에서 만든 ) 을 열려고 할 때 다음 예외가 발생합니다 .
java.io.IOException: Unknown HPROF Version (JAVA PROFILE 1.0.3)
at org.eclipse.mat.hprof.AbstractParser.readVersion(AbstractParser.java:124)
at org.eclipse.mat.hprof.Pass1Parser.read(Pass1Parser.java:69)
at org.eclipse.mat.hprof.HprofIndexBuilder.fill(HprofIndexBuilder.java:65)
at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.parse(SnapshotFactoryImpl.java:203)
at org.eclipse.mat.parser.internal.SnapshotFactoryImpl.openSnapshot(SnapshotFactoryImpl.java:114)
at org.eclipse.mat.snapshot.SnapshotFactory.openSnapshot(SnapshotFactory.java:143)
at org.eclipse.mat.snapshot.SnapshotFactory.openSnapshot(SnapshotFactory.java:123)
at org.eclipse.mat.ui.snapshot.ParseHeapDumpJob.run(ParseHeapDumpJob.java:56)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
이 문제를 어떻게 해결합니까?
답변
hprof
당신이 안드로이드에서 얻을 파일은 안드로이드 특정 형식을 가지고있다. hprof
Android OS에서 가져온 파일을 표준 hprof
형식 으로 변환해야 합니다. 이를 위해에있는 hprof-conv
도구를 사용할 수 있습니다 AndroidSDK/tools/hprof-conv
.
예를 들면 :
hprof-conv android.hprof mat.hprof
그런 다음 메모리 분석기에서 mat.hprof를 엽니 다.
편집 : hprof-conv는 AndroidSDK/platform-tools/
일부 번들 아래 에 있을 수 있습니다 .
답변
Eclipse를 사용하는 경우 다음을 변경하십시오.
- 환경 설정 열기 (창 메뉴에서)
- Android-> DDMS로 이동합니다.
- HPROF 조치를 “Eclipse에서 열기”로 변경하십시오.
답변
hprof-conv
도구 위치가 변경되었습니다.
현재 위치 AndroidSDK/platform-tools/hprof-conv