Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
La registrazione dei metodi Java/Kotlin chiamati durante l'esecuzione del codice dell'app consente
di visualizzare lo stack di chiamate e l'utilizzo della CPU in un determinato momento, filtrati in base ai metodi Java/Kotlin. Questi dati sono utili per identificare le sezioni di codice che richiedono molto tempo
o molte risorse di sistema per l'esecuzione. Se vuoi una visualizzazione completa dello
stack di chiamate, inclusi i frame di chiamata nativi, utilizza l'attività di profilazione
Esempio di stack di chiamate.
Quando registri i metodi Java/Kotlin utilizzando il Profiler di Android Studio, puoi
scegliere il tipo di registrazione:
Tracciamento: strumenta l'app in fase di runtime per registrare un timestamp all'inizio e alla fine di ogni chiamata al metodo. I timestamp vengono raccolti e confrontati
per generare dati di tracciamento dei metodi, incluse le informazioni sui tempi. Devi utilizzare
la tracciatura quando ti interessano i metodi esatti chiamati. Poiché la tracciatura è
un processo intensivo, se utilizzi questa opzione è meglio mantenere la
registrazione intorno ai cinque secondi o meno.
Campionamento (legacy): acquisisce lo stack di chiamate della tua app a intervalli frequenti durante
l'esecuzione del codice basato su Java o Kotlin della tua app. Il profiler confronta i set di
dati acquisiti per ricavare informazioni su tempi e utilizzo delle risorse relative all'esecuzione del codice
basato su Java o Kotlin della tua app. Devi utilizzare il campionamento se ti interessa di più
il tempismo rispetto ai metodi esatti chiamati.
Utilizzo CPU: mostra l'utilizzo della CPU da parte della tua app come percentuale della capacità
CPU totale disponibile nel tempo. Tieni presente che l'utilizzo della CPU include non solo i metodi Java/Kotlin, ma anche il codice nativo. Evidenzia una sezione della cronologia per filtrare
i dettagli relativi a quel periodo di tempo.
Interazioni: mostra gli eventi di interazione degli utenti e del ciclo di vita dell'app lungo una cronologia.
Thread: mostra i thread su cui viene eseguita l'app. Nella maggior parte dei casi, ti consigliamo di concentrarti prima sul thread in alto che rappresenta la tua app.
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2025-07-27 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-27 UTC."],[],[],null,["# Record Java/Kotlin methods\n\nRecording the Java/Kotlin methods called during your app's code execution lets\nyou see the callstack and CPU usage at a given time, filtered to Java/Kotlin\nmethods. This data is useful for identifying sections of code that take a long\ntime or a lot of system resources to execute. If you want a full view of the\ncallstack including native call frames, use the\n[callstack sample](/studio/profile/sample-callstack)\nprofiling task.\n\nWhen you record Java/Kotlin methods using the Android Studio profiler, you can\nchoose the recording type:\n\n- Tracing: Instruments your app at runtime to record a timestamp at the\n beginning and end of each method call. Timestamps are collected and compared\n to generate method tracing data, including timing information. You should use\n tracing when you care about the exact methods being called. Because tracing is\n an intensive process, if you're using this option it's best to keep your\n recording around five seconds or less.\n\n | **Note:** The timing information from tracing might deviate from production due to the overhead introduced by the instrumentation itself.\n- Sampling (legacy): Captures your app's call stack at frequent intervals during\n your app's Java- or Kotlin-based code execution. The profiler compares sets of\n captured data to derive timing and resource usage information about your app's\n Java- or Kotlin-based code execution. You should use sampling if you care more\n about timing than the exact methods being called.\n\n| **Note:** If you're interested in tracing methods with lifecycles so short that they're likely to begin and end in between a sampling interval, and thus get missed by the profiler, you should try tracing instead.\n\nJava/Kotlin methods overview\n----------------------------\n\nAfter you [run the **Find CPU Hotspots** task](/studio/profile#start-profiling)\nthe Android Studio Profiler provides the following information:\n\n- **CPU Usage**: Shows CPU usage of your app as a percentage of total available CPU capacity by time. Note that the CPU usage includes not only Java/Kotlin methods but also native code. Highlight a section of the timeline to filter to the details for that time period.\n- **Interactions**: Shows user interaction and app lifecycle events along a timeline.\n- **Threads**: Shows the threads that your app runs on. In most cases, you'll want to first focus on the topmost thread that represents your app.\n\nTo identify the methods or call stacks that take the most time, use the\n[flame chart](/studio/profile/chart-glossary/flame-chart) or\n[top down](/studio/profile/chart-glossary/top-bottom-charts) chart."]]