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 permet de connecter des 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 de 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'appareil suivants.
Configuration du proxy Winscope
Pour configurer Winscope Proxy :
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 : Capturez les 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é dans 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. Connectez-vous au proxy Winscope.
Configurer le proxy Web Device
Pour configurer le proxy Web Device :
Dans la section Collect Traces (Collecter les traces) de la page d'accueil, sélectionnez Web Device Proxy (Proxy pour appareil Web) dans le menu Select connection type (Sélectionner le type de connexion) :
Figure 3. Capturez les traces à l'aide du proxy Web pour les appareils.
Si le daemon Web Device Proxy n'est pas installé sur votre ordinateur, cliquez sur Installer ou exécutez l'installateur.
Approuvez l'accès à l'origine au proxy d'appareil Web via la boîte de dialogue.
Figure 4. Autorisez 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. Autorisez l'appareil.
Traces
Pour collecter des traces, procédez comme suit :
Une fois connecté, sélectionnez les cibles et configurez les paramètres pour lancer le processus de capture. Cliquez ensuite sur Démarrer la trace pour commencer la capture :
Figure 6. Collectez les 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 trace
Cette section décrit les options pour chaque type de trace.
Enregistrement de l'écran
Avec Winscope, vous pouvez enregistrer l'écran de plusieurs affichages. Choisissez un écran dans le menu pour l'enregistrer. Si vous ne faites pas de 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 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.
Entrée : si la surface contient des données d'entrée, elle suit les spécificités de la fenêtre d'entrée.
Composition : indique le type de composition et la région visible.
Métadonnées : suit les métadonnées de surface supplémentaires, y compris les calques hors écran.
HWC : suit les métadonnées non structurées supplémentaires du compositeur matériel.
Tampons de trace : configure SurfaceFlinger pour tracer toutes les modifications de tampon sur la surface. Par défaut, SurfaceFlinger ne suit un nouvel état que lorsque la géométrie est modifiée.
Affichages virtuels : inclut les calques d'affichage virtuel dans la trace.
WindowManager
- Taille du tampon : ajuste la taille du 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.
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 le plus faible en termes 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 intermédiaires de WindowManager pendant un frame. Toutefois, ce mode a un impact plus important sur les performances que le mode Frame.
Niveau de trace : détermine la verbosité des traces WindowManager :
- verbose : inclut toutes les informations sur les fenêtres et la configuration de chaque fenêtre. Ce mode présente la plus grande 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 Débogage, mais uniquement les fenêtres visibles. Ce mode présente la plus faible surcharge de mémoire et de performances.
Vider
Pour effectuer un dump d'état à l'aide de Winscope, sous Collect Traces (Collecter des traces) sur la page d'accueil, sélectionnez l'onglet Dump (Vider), puis cliquez sur Dump state (Vider l'état) :
Figure 8. État de la vidange 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.