android - studio - error al abrir el archivo HPROF
performance app android (3)
Recibo la siguiente excepción cuando trato de abrir el archivo HPROF (creado por 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)
¿Cómo resuelvo esto?
Gracias
El archivo hprof
que obtienes de Android tiene un formato específico de Android. Debe convertir la hprof
archivo hprof
del sistema operativo Android en formato hprof
estándar. Para esto, puede usar la herramienta hprof-conv
que se encuentra en AndroidSDK/tools/hprof-conv
.
Por ejemplo:
hprof-conv android.hprof mat.hprof
Y luego abra mat.hprof en Memory Analyzer.
EDITAR: hprof-conv puede encontrarse en AndroidSDK/platform-tools/
en algunos paquetes.
Si está utilizando Eclipse, simplemente cambie lo siguiente:
- Abrir Preferencias (desde el menú Ventana)
- Navega a Android-> DDMS
- Cambia la acción HPROF a "Abrir en Eclipse"
hprof-conv
ubicación de la herramienta hprof-conv
cambió.
Ahora se encuentra en AndroidSDK/platform-tools/hprof-conv