Passare di recente ad Android Studio da Eclipse. Come controllare l'heap di app e l'allocazione di memoria in Android Studio? In Eclipse abbiamo MAT c'è qualcosa in studio per controllare il dump dell'heap, il file hprof?Come analizzare la memoria tramite Android Studio
risposta
sarò spiegarlo in modo semplice con gradini:
In primo luogo, si deve installare MAT (download) o l'uso:
birra botte installare memoryanalyzer
In Android Studio aperto Android Device Monitor o DDMS.
Selezionare il processo di "com.example.etc .."
fare clic su Aggiorna Heap sopra la lista dei processi.
Nel pannello di destra, selezionare la scheda Heap.
Fare clic su Causa GC.
Fare clic su Scarica file HPROF sopra l'elenco dei processi.
Quando abbiamo scaricato il file HPROF, dobbiamo aprire il Terminale ed eseguire questo comando per generare il file per aprirlo con MAT.
Apri terminale ed eseguire questo comando
./hprof-conv percorso/file.hprof exitPath/mucchio-converted.hprof
Il comando "hprof-conv" è nella cartella degli strumenti di piattaforma di sdk.
- E ready e MAT possono aprire e aprire il file convertito (heap-convert.hprof).
Sono d'accordo con risposta di cui sopra, tranne i passaggi qui sotto
fare clic su Aggiorna Heap sopra la lista dei processi.
Nel pannello di destra, selezionare la scheda Heap.
Fare clic su Causa GC.
Non sono necessari. Seleziona la tua app/processo in DDMS e fai clic per scaricare l'opzione profilo HPROF. Successivamente, segui i passaggi esattamente come sopra.
c'è un altro modo di vedere le allocazioni:
Il pulsante è stato spostato nella scheda "Memoria", ora. – PiTheNumber
Si può anche effettuare le seguenti operazioni per ottenere più opzioni,
- Vai Strumenti
- Quindi a Android
- infine Android Monitoraggio dispositivo
Per prima cosa installare MAT, al fine di utilizzarlo in Android Studio, si deve scegliere il
Stand-alone Eclipse RCP Applications
da installare, che può essere utilizzato come strumento indipendenteIn Android Studio, eseguire l'applicazione
In fondo Pannello -side, selezionare
6:Android
, quindi selezionareMemory Monitor
Clicca
Dump Java Heap
Passare alla scheda Cattura (nel riquadro di sinistra), è possibile trovare il file nella cartella
.hprof
Heap Snapshot
Per aprire il file
.hprof
in MAT, devi convertire il formato: con il tasto sinistro del mouse sul file.hprof
, quindi scegliereExport to standard .hprof
.210
Aperto MAT, quindi aprire il file
.hprof
che si è convertito nel formato
Si noti che nella più recente Studio Android (1.3+), la cattura mucchio (hprof Android) è stato spostato al monitor di memoria sottotabella nella scheda Android (come la prima immagine nella risposta di cVoronin).
Quando l'acquisizione è terminata, verrà automaticamente salvata nella directory "catture" sotto il progetto (è possibile rinominare il file dopo il fatto se lo si desidera). Il file hprof verrà automaticamente aperto nel nuovo hprof viewer in 1.3+.
Ovviamente, hai sempre la possibilità di convertirlo in formato hprof standard e visualizzarlo in MAT. Basta fare clic con il pulsante destro sul file nel browser Acquisisci (sotto il browser Progetto) e selezionare Converti lì. E come al solito, perderesti alcune informazioni aggiuntive specifiche per Android lungo il percorso non utilizzando il nuovo visualizzatore, poiché hprof standard non supporta quelle.
Sono passato da Eclipse ad Android Studio, ma utilizzo ancora MAT in Eclipse, con il plugin DDMS. È molto più facile
Da quando l'ho pubblicato, Android Studio ha notevolmente migliorato i suoi strumenti di analisi. Ora utilizzo AS per l'analisi. – Christine
So che questo è piuttosto una vecchia questione, ma Android Studio 3 ha ora costruito in profiler.
vedere la documentazione qui: Android Profiler in Android Studio 3.0
- 1. come analizzare la memoria golang
- 2. Android Studio - hogging da memoria
- 3. Come analizzare la stringa json in Android?
- 4. Come analizzare la risposta Json in Android?
- 5. Errore memoria insufficiente: memoria heap Java su Android Studio
- 6. Come analizzare JSON in Android
- 7. come analizzare JSONArray in Android
- 8. Come posso analizzare XML Android?
- 9. Come simuli la memoria insufficiente nell'emulatore Android?
- 10. Analizzare i thread tramite la vista di debug di eclipse
- 11. C: Come analizzare XML in Android?
- 12. Come monitorare e analizzare l'app per Android?
- 13. Come analizzare l'utilizzo della memoria da un core dump?
- 14. Come analizzare l'utilizzo effettivo della memoria su App Engine Java?
- 15. Come analizzare questo array JSON in Android
- 16. Perdita di memoria con GoogleApiClient rilevato da Android Studio
- 17. Come ottenere la mia impronta digitale android su Android Studio
- 18. Come compilare la libreria nativa di Android con Android Studio?
- 19. Come registrare la schermata di Android con Android Studio?
- 20. È possibile avviare un'applicazione Android come app ARC tramite Android Studio?
- 21. Come analizzare il file CSV in un array in Android Studio
- 22. Impossibile creare pacchetto Android firmato tramite lo studio visivo cordova
- 23. Perdite di memoria tramite socket.io
- 24. Impossibile ridimensionare la memoria interna dell'emulatore Android tramite AVD, config.ini o resize2fs
- 25. Passo evento click tramite la vista android
- 26. Android: come rilevare la trasmissione "Attiva memoria USB"?
- 27. Android Come si ottiene la memoria RAM totale nel dispositivo?
- 28. Android: come testare la perdita di memoria in un'applicazione?
- 29. Studio Android emulatore non è possibile impostare la memoria guest 'pc.ram': Invalid argument
- 30. Strumenti di analisi memoria/prestazioni per Android
curioso di sapere quello che dovrebbe accadere quando dumping hprof; dopo aver fatto clic su quell'opzione, non sembra che accada nulla. A che punto dovrebbe esserci qualche indicazione che è stato completato il dump e dove mette l'output? Grazie. – wkhatch
@wkhatch, può richiedere del tempo per la visualizzazione della finestra di dialogo. Dovresti vedere una finestra che chiede la posizione di salvataggio. Nel caso in cui aiuti qualcun altro, non mi sono reso conto che il link per il download MAT è un download indipendente (open mat.app). Ho pensato che fosse solo un collegamento al plugin Eclipse. – loeschg
Grazie a @loeschg. L'ho fatto lavorando a un altro tentativo. Per qualche ragione, ha semplicemente bloccato le prime volte che l'ho provato. – wkhatch