Aller au contenu

Tâche Click In (x, y)

Résumé

  • Nom interne : ClickInXY
  • Catégorie : Android UI
  • Objectif : Cliquer sur l'écran à une coordonnée fixe (x, y) via un geste tactile synthétique.
  • 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 Click In (x, y) envoie un court geste tactile synthétique (dispatchGesture, un tap de 100 ms) à une coordonnée fixe de l'écran. C'est l'une des actions issues de la scission de l'ancienne tâche combinée ScreenAutomator - voir Screen Automator.

Contrairement à Click In Element, cette tâche ne parcourt pas du tout l'arbre d'accessibilité - elle tape aveuglément une position en pixels, donc elle dépend de la résolution et de la mise en page. Préférez Click In Element quand la cible a un texte/content-description/resource-id lisible ; n'utilisez cette tâche que lorsqu'aucun sélecteur de ce type n'est disponible (ex. canvas dessinés sur mesure, jeux).


Paramètres d'entrée

Paramètre Type Requis Valeurs possibles Compatibilité Android Compatibilité AndroMate Défaut
ClickInXY_X Entier (résolvable) Oui ≥ 0 (pixel X de l'écran) Android 13 (API 33) -> Android 16 (API 36) 1.1.0 -> 1.1.0 0
ClickInXY_Y Entier (résolvable) Oui ≥ 0 (pixel Y de l'écran) Android 13 (API 33) -> Android 16 (API 36) 1.1.0 -> 1.1.0 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-004 Invalid X Y Input ClickInXY_X ou ClickInXY_Y est négatif.
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([ClickInXY]) --> CheckConnected{Service d'accessibilité\nconnecté ?}
    CheckConnected -->|Non| E1[SCREEN-AUTOMATOR-ERROR-010\nSERVICE_NOT_CONNECTED]
    CheckConnected -->|Oui| CheckXY{X ≥ 0 et Y ≥ 0 ?}
    CheckXY -->|Non| E2[SCREEN-AUTOMATOR-ERROR-004\nINVALID_X_Y_INPUT]
    CheckXY -->|Oui| Dispatch["dispatchGesture\ntap de 100ms à (X, Y)"]
    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 :

  1. Vérifier la connexion : échoue immédiatement avec SERVICE_NOT_CONNECTED si le service d'accessibilité n'est pas activé.
  2. Valider les coordonnées : un X ou Y négatif lève INVALID_X_Y_INPUT.
  3. Envoyer le tap : un seul geste tactile de 100ms à (X, Y).

Exemples de code

Exemple 1 - Taper un point fixe

{
  "ClickInXY": [
    { "id": "1", "title": "Taper le centre", "ClickInXY_X": 540, "ClickInXY_Y": 1200 }
  ]
}

Détails des paramètres d'entrée

1. Paramètre d'entrée : ClickInXY_X

La coordonnée X en pixels à taper, dans l'espace de coordonnées de l'écran de l'appareil.

Exemple

"ClickInXY_X": 540

2. Paramètre d'entrée : ClickInXY_Y

La coordonnée Y en pixels à taper.

Exemple

"ClickInXY_Y": 1200

Détails des paramètres de sortie

Cette tâche n'a pas de paramètres de sortie.


Exemple JSON complet

{
  "ClickInXY": [
    { "id": "1", "title": "Taper l'icône en haut à gauche", "ClickInXY_X": 60, "ClickInXY_Y": 90 }
  ]
}