android - errore durante l'apertura del file HPROF




memory-leaks dump (2)

Il file hprof che ottieni da Android ha un formato specifico per Android. Dovresti convertire il file hprof preso dal sistema operativo Android in formato hprof standard. Per questo è possibile utilizzare hprof-conv strumento hprof-conv che si trova su AndroidSDK/tools/hprof-conv .

Per esempio:

hprof-conv android.hprof mat.hprof

Quindi aprire mat.hprof in Memory Analyzer.

EDIT: hprof-conv potrebbe trovarsi sotto AndroidSDK/platform-tools/ in alcuni pacchetti.

Ricevo la seguente eccezione quando provo ad aprire il file HPROF (creato da Debug.dumpHprofData ) con Memory Analyzer:

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)

Come posso risolvere questo?

Grazie


Se si utilizza Eclipse, è sufficiente modificare quanto segue:

  1. Apri Preferenze (dal menu Finestra)
  2. Passare ad Android-> DDMS
  3. Cambia l'azione HPROF in "Apri in Eclipse"






dump