Aller au contenu

Screen Automator — GlobalAction

Résumé

  • Nom interne : SCREEN_AUTOMATOR
  • Catégorie : Automatisation écran / Accessibilité
  • But : Exécuter des actions système Android prédéfinies (Home, Back, Recents, Notifications, Capture d’écran, etc.) via le service AccessibilityService d’Android.
  • Type de tâche : Normale

Cette tâche permet à un workflow AndroMate de contrôler la navigation système et l’interface système sans se baser sur la détection de texte ou les coordonnées.


Compatibilité

  • Version AndroMate minimale : 1.1.0
  • Version AndroMate maximale : 1.1.0
  • Android minimum : Android 13 (API 33)
  • Android maximum testé : Android 16 (API 36)

Constructeurs supportés

  • ✅ Samsung (One UI 6.x / 7.x / 8.x)

Permissions nécessaires

  • ACCESSIBILITY_SERVICE
  • (Optionnel) WRITE_SECURE_SETTINGS selon le comportement OEM/système

Description détaillée

Le mode GlobalAction de ScreenAutomator exécute des actions système Android de haut niveau exposées par le framework Accessibility.

Cas d’usage typiques :

  • Navigation dans le système :
  • HOME, BACK, RECENTS
  • Ouvrir ou fermer les panneaux système :
  • Panneau de notifications
  • Paramètres rapides
  • Dialogue d’alimentation
  • Liste “Toutes les apps” du launcher
  • Opérations sur l’appareil :
  • Verrouiller l’écran
  • Prendre une capture d’écran
  • Activer/désactiver le mode écran partagé
  • Simuler des touches spécifiques / D-Pad / contrôle média :
  • D-Pad (haut, bas, gauche, droite, centre)
  • Lecture/pause média
  • Touche headset hook

La liste exacte des actions supportées dépend de la version Android (min SDK par action) et du constructeur de l’appareil.


Paramètres d’entrée

Paramètre Type Obligatoire Valeurs possibles Compatibilité Android Compatibilité AndroMate Défaut
Action_type Enum / String Oui Doit être "GlobalAction" Android 13 (API 33) → Android 16 (API 36) 1.1.0 → 1.1.0
GlobalAction_type Enum / Integer Oui Toute action globale supportée Dépend du min SDK de chaque action (16 → 33+) 1.1.0 → 1.1.0

Paramètres de sortie

Ce mode GlobalAction :

  • ne retourne pas stdout/stderr
  • ne définit aucune variable de sortie spécifique

Son objectif est de réaliser une action (effet sur l’UI), pas de produire du contenu.


Détail des paramètres

1. Action_type

Indique le mode ScreenAutomator à utiliser.

  • Pour ce README : il doit être défini sur "GlobalAction".

Exemple

"Action_type": "GlobalAction"

2. GlobalAction_type

Définit l'action globale Android qui sera exécutée.

Cette valeur est stockée sous forme d'entier/énumération interne et associée aux actions globales d'accessibilité d'Android.

Liste des actions (basée sur l'énumération)

Nom logique Description Valeur hex Min SDK
SHOW_LAUNCHERS_ALL_APPS Afficher la liste “Toutes les apps” du launcher 0x0000000B 31
SHOW_SCREEN_AUTOMATOR_BUTTON Déclencher le bouton d’accessibilité 0x0000000A 31
SCREEN_AUTOMATOR_BUTTON_CHOOSER Ouvrir le menu du bouton d’accessibilité 0x0000000C 31
SCREEN_AUTOMATOR_SHORT_CUT Déclencher le raccourci d’accessibilité 0x0000000D 31
ACTION_BACK Revenir en arrière 0x00000001 16
DISMISS_NOTIFICATION_SHADE Fermer le panneau de notifications 0x0000000E 31
GLOBAL_ACTION_DPAD_CENTER Événement D-Pad centre 0x00000014 33
GLOBAL_ACTION_DPAD_DOWN Événement D-Pad bas 0x00000011 33
GLOBAL_ACTION_DPAD_RIGHT Événement D-Pad droite 0x00000013 33
GLOBAL_ACTION_DPAD_UP Événement D-Pad haut 0x00000010 33
GLOBAL_ACTION_HOME Aller à l’écran d’accueil 0x00000002 16
GLOBAL_ACTION_KEYCODE_HEADSETHOOK Événement bouton kit mains-libres 0x0000000F 31
GLOBAL_ACTION_LOCK_SCREEN Verrouiller l’écran 0x00000008 28
GLOBAL_ACTION_MEDIA_PLAY_PAUSE Lecture / pause média 22–36
GLOBAL_ACTION_MENU Déclencher la touche Menu 21–36
GLOBAL_ACTION_NOTIFICATIONS Ouvrir les notifications 0x00000004 16
GLOBAL_ACTION_POWER_DIALOG Ouvrir le menu d’alimentation 0x00000006 21
GLOBAL_ACTION_QUICK_SETTINGS Ouvrir les paramètres rapides 0x00000005 17
GLOBAL_ACTION_RECENTS Ouvrir les applications récentes 0x00000003 16
GLOBAL_ACTION_TAKE_SCREENSHOT Prendre une capture d’écran 0x00000009 28
GLOBAL_ACTION_TOGGLE_SPLIT_SCREEN Activer/désactiver l’écran partagé 0x00000007 24

Exceptions

Code Exception Name Description
SCREEN-AUTOMATOR-ERROR-001 INVALID_CONTROL_SERVICE_GLOBAL_ACTION Action globale reçue invalide ou inconnue
SCREEN-AUTOMATOR-ERROR-002 UNSUPPORTED_CONTROL_SERVICE_GLOBAL_ACTION Action globale non supportée sur ce device ou cette version Android
SCREEN-AUTOMATOR-ERROR-003 INVALID_ACTION_TYPE Type d'action invalide (doit être GlobalAction)
SCREEN-AUTOMATOR-ERROR-008 TIME_OUT Le déclenchement de l’action globale a dépassé le délai autorisé

Complete JSON example

{
  "ScreenAutomator": [
    {
      "id": "1",
      "title": "Go Home",
      "Action_type": "GlobalAction",
      "GlobalAction_type": 10
    },
    {
      "id": "2",
      "title": "Open Notifications",
      "Action_type": "GlobalAction",
      "GlobalAction_type": 7
    },
    {
      "id": "3",
      "title": "Open Recents",
      "Action_type": "GlobalAction",
      "GlobalAction_type": 12
    },
    {
      "id": "4",
      "title": "Take Screenshot",
      "Action_type": "GlobalAction",
      "GlobalAction_type": 18
    }
  ]
}