Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
En enregistrant les méthodes Java/Kotlin appelées lors de l'exécution du code de votre application, vous pouvez afficher la pile d'appel et l'utilisation du processeur à un moment donné, filtrées sur les méthodes Java/Kotlin. Ces données sont utiles pour identifier les sections de code dont l'exécution prend beaucoup de temps ou consomme beaucoup de ressources système. Si vous souhaitez obtenir une vue complète de la pile d'appels, y compris les frames d'appel natifs, utilisez la tâche de profilage Exemple de pile d'appels.
Lorsque vous enregistrez des méthodes Java/Kotlin à l'aide du profileur Android Studio, vous pouvez choisir le type d'enregistrement :
Traçage : instrumente votre application au moment de l'exécution pour enregistrer un code temporel au début et à la fin de chaque appel de méthode. Les codes temporels sont collectés et comparés pour générer les données de traçage des méthodes, y compris des informations de minutage. Vous devez utiliser le traçage lorsque vous vous souciez des méthodes exactes appelées. Comme le traçage est un processus intensif, si vous utilisez cette option, il est préférable de limiter votre enregistrement à environ cinq secondes ou moins.
Échantillonnage (ancienne version) : capture la pile d'appel de votre application à intervalles réguliers pendant l'exécution du code Java ou Kotlin de votre application. Le profileur compare des ensembles de données capturées pour déduire des informations sur l'horodatage et l'utilisation des ressources liées à l'exécution de code Java ou Kotlin dans votre application. Vous devez utiliser l'échantillonnage si vous accordez plus d'importance au timing qu'aux méthodes exactes appelées.
Utilisation du processeur : affiche l'utilisation du processeur de votre application sous la forme d'un pourcentage de la capacité totale du processeur disponible au fil du temps. Notez que l'utilisation du processeur inclut non seulement les méthodes Java/Kotlin, mais aussi le code natif. Mettez en surbrillance une section de la chronologie pour filtrer les détails de cette période.
Interactions : affiche une chronologie des interactions des utilisateurs et des événements de cycle de vie des applications.
Threads : affiche les threads sur lesquels votre application s'exécute. Dans la plupart des cas, vous devez d'abord vous concentrer sur le thread le plus haut qui représente votre application.
Pour identifier les méthodes ou les piles d'appels qui prennent le plus de temps, utilisez le graphique en flammes ou le graphique de haut en bas.
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 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."]]