Android-Specific Questions

← Back to all categories
Why do I need to enable the "Accessibility Service" permission? What happens if I don't?Android

The Accessibility Service is the core permission for MacroAI on Android. It's used for:

  • Simulating touch actions — injecting tap/swipe gestures into the system via dispatchGesture
  • The floating window editor — displaying the editing interface on top of other apps

If you don't enable it: the script can't perform any tap/swipe actions — it's like "having a brain but no hands".

How to enable it:

  1. Go to your phone's Settings → Accessibility
  2. Find "Downloaded apps" or "Installed services"
  3. Find MacroAI and turn on the switch
  4. The system will show a security notice — tap "OK"

The exact path differs by phone brand (Huawei/Xiaomi/OPPO/vivo each vary). MacroAI will try to jump directly to the corresponding settings page for you.

Why is the "floating window" permission required?Android

On Android, both MacroAI's editor and run controls float on top of other apps (because your automation target is another app/game, and MacroAI can't take up the whole screen).

The floating window permission lets MacroAI:

  • Show the editing bubble and node configuration panel on top of a game/app
  • Show the run control bubble (play/pause/stop)
  • Show the recording overlay

If you don't enable it: MacroAI can't display any interface on top of other apps, and both the editor and run controls become unusable.

How to enable it: Settings → Apps → MacroAI → Floating window (or "Display over other apps") → Allow.

Can I skip the screen recording authorization dialog? It pops up every time and it's annoying.Android

No, it can't be skipped — this is a mandatory Android system requirement.

MacroAI needs to capture the screen to perform image recognition, OCR, color detection, and so on. Android requires that any app capturing the screen must obtain explicit user authorization (the MediaProjection API), and must re-authorize every time the service starts.

This is a system security mechanism that MacroAI cannot bypass.

The good news:

  • The dialog only appears once when you start running/editing — it doesn't pop up repeatedly
  • Some Android 11+ devices support "Don't show again" — once checked, it won't appear again
  • If you're only importing and running someone else's script (no screenshot features needed), you may be able to skip authorization in some scenarios
Why does the Accessibility Service turn itself off after a while on my phone?Android

This is caused by the background management policies of many Android phones (Huawei/Xiaomi/OPPO/vivo/Honor) — to save battery, the system automatically "kills" background services.

Solutions (by brand):

  • General: Settings → Battery → find MacroAI → set to "Unrestricted"/"No restrictions"
  • Xiaomi: Settings → Apps → Manage apps → MacroAI → Battery saver → No restrictions; also lock it in the recent tasks view (pull down to lock)
  • Huawei/Honor: Settings → Battery → App launch → MacroAI → turn off "Manage automatically" and enable all switches manually
  • OPPO/vivo: Settings → Battery → Background power management → MacroAI → allow background running

Extra tip: "lock" MacroAI in the recent tasks / multitasking view (usually by pulling down or long-pressing to lock it) to prevent it from being cleared by a one-tap cleanup.

Where is the editor on the Android version? How do I open it?Android

The Android editor isn't a standalone screen — it appears as a floating bubble on top of other apps.

How to open it:

  1. In the MacroAI main screen (project list), select a project
  2. Tap the "Edit" button
  3. MacroAI minimizes to the background and an editing bubble appears on screen
  4. Tap the bubble to expand the editing menu (add nodes, configure, run, etc.)

Why is it designed this way? Because you need to see the target app/game's screen while editing your script. If the editor took up the whole screen, you wouldn't be able to see the target you're automating.

The bubble can be dragged around, and when you're not using it, it can be collapsed to a very small size so it doesn't block the view.

Which node types does the Android version support? Is it the same as Windows?Android

Most core nodes are supported on both platforms, but there are differences:

Supported on both:

  • Find Image (including click), Color Detection, OCR Recognize/Compare
  • Wait for Change, Wait for Bar Change
  • Mouse Click (touch tap), Mouse Move, Mouse Drag
  • Wait, Loop, Condition, Set Variable, Log
  • Call Function, Call Recorded Macro

Where they differ:

  • Key Press / Input Text: Windows uses virtual key codes, while Android inputs via the Accessibility Service; some special keys aren't supported
  • Background input: Windows has a background/foreground mode switch, while Android always injects via the Accessibility Service (naturally "background")
  • Custom Code: both support Lua, but the available APIs differ slightly

When importing, incompatible nodes are automatically skipped — they won't cause the whole script to fail.