Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
R8 retrace est un outil permettant d'obtenir la trace de pile d'origine à partir d'une trace de pile obscurcie. La trace de la pile est recréée en faisant correspondre les noms de classe et de méthode d'un fichier de mappage avec leurs définitions d'origine.
Utilisation
Pour retracer une trace de pile obscurcie, transmettez le fichier de mappage à retrace :
Si aucun fichier de trace de pile n'est fourni sur la ligne de commande, R8 retrace attend que l'utilisateur la saisisse via une entrée standard. Après l'entrée, arrêtez le flux d'entrée :
Linux et macOS : Ctrl+D
Windows : Ctrl+Z+Entrée
La sortie retracée est ensuite écrite sur la sortie standard.
Options
Le tableau suivant décrit les options de ligne de commande de R8 retrace :
Option
Obligatoire ?
Description
--verbose
non
Affiche d'autres informations, telles que les paramètres et le type renvoyé de la méthode.
--info
non
Définit le niveau de diagnostic sur info. Pour en savoir plus, consultez DiagnosticHandler.
--quiet
non
Réduit la quantité d'informations imprimées afin de pouvoir se concentrer sur l'essentiel.
--regex <regular_exp>
non
Écrase l'expression régulière par défaut pour analyser les lignes de la trace de pile.
Par exemple, l'expression régulière suivante permet d'analyser les traces de la pile de base :
(?:.*? at %c\.%m\(%s(?::%l)?\))|(?:(?:.*?[:"] +)?%c(?::.*)?).
Remarques sur l'utilisation
R8 retrace utilise un fichier de mappage généré pour mapper les noms de classe et de méthode obscurcis à la définition d'origine. Pour en savoir plus sur la minification de votre application afin de pouvoir la retracer correctement, consultez Décoder une trace de pile obscurcie.
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,["# R8 retrace is a tool for obtaining the original stack trace from an obfuscated\nstack trace. The stack trace is reconstructed by matching class and method names\nin a mapping file to their original definitions.\n| **Note:** R8 retrace is a standalone tool in version 4.0 of the command-line tools package, released with Android Studio 4.2.\n|\n| To download the command-line tools package with the SDK Manager, see\n| [Update your tools with the\n| SDK Manager](/studio/intro/update#sdk-manager). The SDK Manager installs R8 retrace in\n| `cmdline-tools/`\u003cvar translate=\"no\"\u003eversion\u003c/var\u003e`/bin/`.\n|\n| To download the command-line tools package using the command line, see\n| [`sdkmanager`](/studio/command-line/sdkmanager).\n\nUsage\n-----\n\nTo retrace an obfuscated stack trace, pass the mapping file to `retrace`: \n\n retrace \u003cvar translate=\"no\"\u003e path-to-mapping-file [path-to-stack-trace-file] [options] \u003c/var\u003e\n\nIf no stack trace file is given on the command line, R8 retrace waits for\nthe stack trace to be entered by the user through standard input. After input,\nterminate the input stream:\n\n- **Linux, macOS:** Control+D\n- **Windows:** Control+Z+Enter\n\nThe retraced output is then written to standard output.\n\nOptions\n-------\n\nThe following table describes the command-line options of R8 retrace:\n\n| Option | Required? | Description |\n|---------------------------------------------------------|-----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `--verbose` | no | Prints more information, such as method parameters and method return type. |\n| `--info` | no | Sets the diagnostic level to `info`. For a more in-depth look, refer to [DiagnosticsHandler](https://r8.googlesource.com/r8/+/refs/heads/main/src/main/java/com/android/tools/r8/DiagnosticsHandler.java). |\n| `--quiet` | no | Reduces the amount of information printed to increase focus. |\n| `--regex `\u003cvar translate=\"no\"\u003e<regular_exp>\u003c/var\u003e | no | Overwrites the default regular expression for parsing stack trace lines. For example, the following is a regex that can parse basic stack traces: `(?:.*? at %c\\.%m\\(%s(?::%l)?\\))|(?:(?:.*?[:\"] +)?%c(?::.*)?)`. |\n\nUsage notes\n-----------\n\nR8 retrace uses a generated mapping file for mapping obfuscated class and\nmethod names back to the original definition. For more information about\nshrinking your app so that it can be retraced correctly, see\n[Decode an obfuscated stack trace](/studio/build/shrink-code#decode-stack-trace)."]]