Tâche Scroll
Résumé
- Nom interne :
Scroll - Catégorie : Android UI
- Objectif : Balayer l'écran une fois dans une direction (haut, bas, gauche, droite).
- Type de tâche : Normal
Compatibilité
- Version AndroMate minimale :
1.1.0 - Version AndroMate maximale :
1.1.0 - Android minimum :
Android 13 (API 33) - Android testé maximum :
Android 16 (API 36) -
Fabricants supportés :
- Samsung (One UI 6.x / 7.x / 8.x)
- Autres fabricants - pas encore supportés (Xiaomi HyperOS et Google Pixel en cours d'adaptation)
- Permissions requises :
ACCESSIBILITY_SERVICE
Description détaillée
La tâche Scroll effectue un seul geste de balayage plein écran dans une direction choisie via dispatchGesture - le même mécanisme que Click In (x, y), pas ACTION_SCROLL_FORWARD/ACTION_SCROLL_BACKWARD (qui ne fonctionnent que sur des nœuds explicitement marqués comme scrollables et ne se généralisent pas à des conteneurs arbitraires comme RecyclerView, ScrollView ou WebView).
Le balayage couvre 60% de l'écran (de 20% à 80% selon l'axe concerné, centré sur l'autre axe), en partant près du bord opposé à la direction voulue - ex. faire défiler vers le bas balaie le doigt depuis près du bas vers le haut, exactement comme un vrai défilement tactile. Pour un défilement répété jusqu'à l'apparition d'un élément, voir Scroll To Element.
Paramètres d'entrée
| Paramètre | Type | Requis | Valeurs possibles | Compatibilité Android | Compatibilité AndroMate | Défaut |
|---|---|---|---|---|---|---|
Scroll_direction |
Enum / String (résolvable) | Oui | Up, Down, Left, Right |
Android 13 (API 33) -> Android 16 (API 36) | 1.1.0 -> 1.1.0 | "" |
Paramètres de sortie
Cette tâche ne produit aucune variable de sortie. Elle retourne un VoidResult en cas de succès.
Exceptions
| Code | Nom de l'exception | Description |
|---|---|---|
SCREEN-AUTOMATOR-ERROR-003 |
Invalid Action Type | Scroll_direction n'est ni Up, Down, Left, ni Right. |
SCREEN-AUTOMATOR-ERROR-010 |
Screen Automator Service Not Connected | Le service d'accessibilité AndroMate n'est pas activé/connecté. |
SCREEN-AUTOMATOR-ERROR-011 |
Screen Automator Action Failed | L'envoi du geste a échoué (rare - dispatchGesture est un tir-et-oublie qui réussit normalement toujours au niveau API). |
Diagramme d'exécution
flowchart TD
Start([Scroll]) --> CheckConnected{Service d'accessibilité\nconnecté ?}
CheckConnected -->|Non| E1[SCREEN-AUTOMATOR-ERROR-010\nSERVICE_NOT_CONNECTED]
CheckConnected -->|Oui| Resolve{Scroll_direction\nvalide ?}
Resolve -->|Non| E2[SCREEN-AUTOMATOR-ERROR-003\nINVALID_ACTION_TYPE]
Resolve -->|Oui| Dispatch[dispatchGesture\nbalayage 60% dans cette direction]
Dispatch --> Success([VoidResult])
E1 --> Error([Exception])
E2 --> Error
style Start fill:#e3f2fd
style Success fill:#c8e6c9
style Error fill:#ffcdd2
style Dispatch fill:#fff9c4
Fonctionnement :
- Vérifier la connexion : échoue immédiatement avec
SERVICE_NOT_CONNECTEDsi le service d'accessibilité n'est pas activé. - Résoudre la direction : convertit
Scroll_directionenUp/Down/Left/Right; toute autre valeur lèveINVALID_ACTION_TYPE. - Envoyer : un seul geste de balayage couvrant 60% de l'écran dans cette direction.
Exemples de code
Exemple 1 - Défiler une liste vers le bas
Détails des paramètres d'entrée
1. Paramètre d'entrée : Scroll_direction
Dans quel sens le doigt balaie - décrit du point de vue du contenu (ex. Down révèle le contenu en dessous, en balayant le doigt vers le haut).
| Valeur | Effet |
|---|---|
Up |
Révèle le contenu au-dessus (le doigt balaie vers le bas). |
Down |
Révèle le contenu en dessous (le doigt balaie vers le haut). |
Left |
Révèle le contenu à gauche (le doigt balaie vers la droite). |
Right |
Révèle le contenu à droite (le doigt balaie vers la gauche). |
Exemple
Détails des paramètres de sortie
Cette tâche n'a pas de paramètres de sortie.