Exécutez Winscope localement ou accédez-y à partir d'un serveur Web.
Vous pouvez capturer des traces à l'aide de Winscope pour le développement et le débogage locaux. Winscope utilise adb, qui prend en charge la connexion d'appareils via USB ou Wi-Fi.
L'écran Collect Traces (Collecter des traces) s'affiche lorsque vous lancez Winscope.
Connexion de l'appareil
Vous pouvez connecter des appareils dans Winscope à l'aide du proxy Winscope ou du proxy Web Device. Par défaut, la page d'accueil de Winscope affiche l'interface utilisateur de configuration de la connexion au proxy Winscope.
Pour commencer à capturer des traces, choisissez l'un des mécanismes de connexion d'appareil suivants.
Configuration du proxy Winscope
Pour configurer Winscope Proxy, procédez comme suit:
Sous Collecter des traces sur la page d'accueil, sélectionnez Winscope Proxy dans le menu déroulant Sélectionner le type de connexion:
Figure 1 : Capturez des traces à l'aide du proxy Winscope.
Lancez le proxy Winscope ADB Connect pour capturer des traces directement depuis votre navigateur en exécutant la commande suivante:
python3 $ANDROID_BUILD_TOP/development/tools/winscope/src/adb/winscope_proxy.py
Notez le jeton de proxy Winscope affiché sur le terminal après l'exécution.
Une fois que vous avez lancé le proxy Winscope ADB Connect, l'écran change comme suit. Pour établir la connexion initiale au proxy, saisissez le jeton de proxy Winscope de l'étape 3, puis cliquez sur Connecter.
Figure 2. Connectez-vous au proxy Winscope.
Configuration du proxy Web Device
Pour configurer le proxy d'appareil Web, procédez comme suit:
Sous Collecter des traces sur la page d'accueil, sélectionnez Proxy d'appareil Web dans le menu déroulant Sélectionner le type de connexion:
Figure 3. Capturez des traces à l'aide du proxy Web Device.
Si le daemon de proxy d'appareil Web n'est pas installé sur votre ordinateur, cliquez sur Installer ou exécutez l'installeur.
Approuvez l'accès de l'origine au proxy Web Device via la boîte de dialogue.
Figure 4. Autorisez l'origine.
Approuver l'accès pour chaque nouvel appareil la première fois que vous vous y connectez Si la boîte de dialogue ne s'affiche pas automatiquement, cliquez sur l'icône
lock_open
à côté de l'appareil:Figure 5. Autorisez l'appareil.
Traces
Pour collecter des traces, procédez comme suit:
Une fois connecté, pour lancer le processus de capture, sélectionnez les cibles et configurez les paramètres. Cliquez ensuite sur Start trace (Démarrer la trace) pour commencer la capture:
Figure 6. Collectez des traces dans Winscope.
Pour arrêter la capture, cliquez sur End trace (Arrêter la trace) :
Figure 7. Arrêtez la trace dans Winscope.
Options de traçage
Cette section décrit les options pour chaque type de trace.
Enregistrement de l'écran
Avec Winscope, vous pouvez enregistrer l'écran de plusieurs écrans. Sélectionnez un écran dans le menu pour enregistrer l'écran. Si vous ne faites aucune sélection, Winscope enregistre l'écran actif par défaut.
SurfaceFlinger
Taille de la mémoire tampon:ajuste la taille de la mémoire tampon en anneau pour la trace SurfaceFlinger. Un tampon plus important permet de collecter plus de données, mais augmente l'utilisation de la mémoire.
Entrée:si la surface contient des données d'entrée, suit les spécificités de la fenêtre d'entrée.
Composition:trace le type de composition et la région visible.
Métadonnées:permet de tracer des métadonnées de surface supplémentaires, y compris des calques hors écran.
HWC:permet de suivre les métadonnées de compilateur matériel non structurées supplémentaires.
Tampons de suivi:configure SurfaceFlinger pour suivre toutes les modifications de tampon sur la surface. Par défaut, SurfaceFlinger ne trace un nouvel état que lorsque la géométrie est modifiée.
Affichages virtuels:inclut les couches d'affichage virtuel dans la trace.
WindowManager
- Taille de la mémoire tampon:ajuste la taille de la mémoire tampon en anneau en mémoire pour la trace WindowManager. Un tampon plus important permet de collecter plus de données, mais augmente l'utilisation de la mémoire.
Type de traçage:définit les options de fréquence pour la collecte des états:
- frame:dans ce mode, WindowManager génère un seul état par frame, ce qui garantit que seuls les états WindowManager valides sont capturés. Ce mode présente le coût sur les performances le plus faible.
- transaction:ce mode enregistre un état WindowManager chaque fois qu'une transaction est validée. Vous pouvez valider plusieurs transactions dans un frame, ce qui permet de déboguer les états intermédiaires de WindowManager pendant un frame. Toutefois, ce mode présente un coût supplémentaire plus élevé que le mode frame.
Niveau de traçage:détermine le niveau d'éloquence des traces WindowManager:
- verbose:inclut toutes les fenêtres et informations de configuration pour chaque fenêtre. Ce mode présente le coût de mémoire et de performances le plus élevé.
- debug:inclut des informations sur toutes les fenêtres, mais n'enregistre que la configuration de la fenêtre si elle contient une configuration de forçage demandée.
- critical:inclut les mêmes informations que le mode débogage, mais ne comprend que les fenêtres visibles. Ce mode présente le coût de mémoire et de performances le plus faible.
Dumps
Pour créer une copie d'état à l'aide de Winscope, sous Collecter des traces sur la page d'accueil, sélectionnez l'onglet Dump (Copie), puis cliquez sur Dump state (Copier l'état) :
Figure 8. État de la copie dans Winscope.
Configuration des captures d'écran
Winscope permet de prendre une capture d'écran pour plusieurs écrans. Sélectionnez un écran dans le menu pour effectuer une capture d'écran. Si aucune sélection n'est effectuée, une capture d'écran est collectée pour l'écran actif.