2013-01-05 14 views
11

Nel tentativo di analizzare una perdita di memoria che mi ha fatto impazzire per settimane, ho scoperto lo strumento eclissi MAT che ti aiuta a capire cosa c'è che non va, il problema è ogni singolo tutorial che ho trovato dice che ho bisogno di convertire il formato del file dal dalvik al formato HPROF, tuttavia non un singolo tutorial che riesco a trovare spiega come effettivamente farlo, invece ottengo cose vaghe come questaCome convertire un dump dell'heap in Android in formato eclipse

Now the file you will get does not conform to the "standard" Sun .hprof format but is written in Dalvik's own format and you need to convert it:

hprof-conv heap-dump-tm-pid.hprof 4mat.hprof

cosa significa in realtà? cosa clicco? dove vado? Sono totalmente perso e frustrato, ogni aiuto andrà molto lontano, grazie.

risposta

27

Sembra che sia necessario utilizzare lo strumento hprof-conv che si trova in [Android-SDK]\platform-tools.

Per fare questo su Windows:

  1. Press WINKEY + R e digitare cmd
  2. Digitare:

    cd "C:\android-sdk\platform-tools" (o qualsiasi directory contiene il vostro Android SDK)

  3. Supponendo di avere il tuo file di Dalvik sul desktop (sto solo cercando di indovinare la directory), digitare:

    hprof-conv "C:\Users\Edmund\Desktop\heap-dump-tm-pid.hprof" "C:\Users\Edmund\Desktop\4mat.hprof"

  4. Questo genererà il file hprof formato standard che è possibile utilizzare chiamato 4mat.hprof
+0

sono andato lì e cliccato su di esso, ma si apre e si chiude immediatamente, non so perché lo fa questo, ma Im in grado di utilizzarlo –

+0

È necessario eseguire dalla riga di comando con questi due parametri . –

+0

Ive non ha mai usato la riga di comando fino ad ora, è la riga di comando regolare trovata nella mia macchina Windows o una console speciale nel sdk? –

3

Giusto per essere Detto: Non è necessario convertire esplicitamente il file .hprof utilizzando hprof-conv. MAT fa questo per voi automaticamente - come described here. In Eclipse,

  1. aprire le Preferenze Finestra,
  2. passare alla Android>DDMS
  3. e cambiare l'azione hprof-"Apri in Eclipse".

enter image description here

+1

Peccato che non funzioni per Android hprof .. ma ne valeva la pena :) –

+0

Grazie per questo. – Sipty

+0

evviva. Stavo aggiungendo il .hprof alla fine di ogni nome di file sul cmd e non stava producendo il file. –

Problemi correlati