Exécutez Winscope localement ou accédez-y depuis 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 est compatible avec la connexion d'appareils via USB ou Wi-Fi.
Lorsque vous lancez Winscope, l'écran Collect Traces (Collecter les traces) s'affiche.
Connexion de l'appareil
Vous pouvez connecter des appareils dans Winscope à l'aide de Winscope Proxy ou Web Device Proxy. Par défaut, la page d'accueil de Winscope affiche l'interface utilisateur de configuration de la connexion Winscope Proxy.
Pour commencer à capturer des traces, choisissez l'un des mécanismes de connexion d'appareils suivants.
Configuration de Winscope Proxy
Pour configurer Winscope Proxy, procédez comme suit :
Dans la section Collect Traces (Collecter les traces) de la page d'accueil, sélectionnez Winscope Proxy dans le menu Select connection type (Sélectionner le type de connexion) :
Figure 1. Capturer des traces à l'aide de Winscope Proxy.
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.pyNotez 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 Connect (Se connecter).
Figure 2. Se connecter à Winscope Proxy.
Configuration de Web Device Proxy
Pour configurer Web Device Proxy, procédez comme suit :
Dans la section Collect Traces (Collecter les traces) de la page d'accueil, sélectionnez Web Device Proxy dans le menu Select connection type (Sélectionner le type de connexion) :
Figure 3. Capturer des traces à l'aide de Web Device Proxy.
Si le démon Web Device Proxy n'est pas installé sur votre ordinateur, cliquez sur Install (Installer) ou exécutez le programme d'installation.
Approuvez l'accès à l'origine de Web Device Proxy dans la boîte de dialogue.
Figure 4. Autoriser l'origine.
Approuvez 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. Autoriser 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. Collecter des traces dans Winscope.
Pour arrêter la capture, cliquez sur End trace (Terminer la trace) :
Figure 7. Terminer la trace dans Winscope.
Options de trace
Cette section décrit les options de chaque type de trace.
Enregistrement de l'écran
Avec Winscope, vous pouvez enregistrer l'écran de plusieurs écrans. Choisissez un écran dans le menu pour l'enregistrer. Si vous n'effectuez aucune sélection, Winscope enregistre l'écran actif par défaut.
SurfaceFlinger
Buffer size (Taille de la mémoire tampon) : ajuste la taille de la mémoire tampon en anneau en mémoire pour la trace SurfaceFlinger. Une mémoire tampon plus grande permet de collecter plus de données, mais augmente l'utilisation de la mémoire.
Input (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 : suit le type de composition et la région visible.
Metadata (Métadonnées) : suit les métadonnées de surface supplémentaires, y compris les calques hors écran.
HWC : suit les métadonnées supplémentaires non structurées du compositeur matériel.
Trace buffers (Mémoires tampons de trace) : configure SurfaceFlinger pour suivre toutes les modifications de mémoire tampon sur la surface. Par défaut, SurfaceFlinger ne suit un nouvel état que lorsque la géométrie est modifiée.
Virtual displays (Écrans virtuels) : inclut les calques d'écran virtuel dans la trace.
WindowManager
- Buffer size (Taille de la mémoire tampon) : ajuste la taille de la mémoire tampon en anneau en mémoire pour la trace WindowManager. Une mémoire tampon plus grande permet de collecter plus de données, mais augmente l'utilisation de la mémoire.
Tracing type (Type de suivi) : définit les options de fréquence pour la collecte des états :
- frame : dans ce mode, WindowManager vide un seul état par frame, ce qui garantit que seuls les états WindowManager valides sont capturés. Ce mode a la plus faible surcharge de performances.
- 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 WindowManager intermédiaires pendant un frame. Toutefois, ce mode a une surcharge de performances plus élevée que le mode frame.
Tracing level (Niveau de suivi) : détermine le niveau de détail des traces WindowManager :
- verbose : inclut toutes les fenêtres et les informations de configuration pour chaque fenêtre. Ce mode a la plus forte surcharge de mémoire et de performances.
- debug : inclut des informations sur toutes les fenêtres, mais n'enregistre la configuration de la fenêtre que si elle contient une configuration de remplacement demandée.
- critical : inclut les mêmes informations que le mode Debug, mais n'inclut que les fenêtres visibles. Ce mode a la plus faible surcharge de mémoire et de performances.
Vider
Pour effectuer un vidage d'état à l'aide de Winscope, sous Collect Traces (Collecter les traces) sur la page d'accueil , sélectionnez l'onglet Dump (Vider), puis cliquez sur Dump state (Vider l'état) :
Figure 8. Vider l'état dans Winscope.
Configuration de la capture d'écran
Winscope permet de prendre une capture d'écran pour plusieurs écrans. Choisissez un écran dans le menu pour le capturer. Si aucune sélection n'est effectuée, une capture d'écran est collectée pour l'écran actif.