(Added missing pages to version 5.40)
Line 1: Line 1:
An action is something your device can do when a macro runs. A macro must have at least one action to be valid.
+
'''''  An action is something your device can do when a macro runs. A macro must have at least one action to be valid.'''''
  
 
=== Synchronous vs asynchronous ===
 
=== Synchronous vs asynchronous ===
 +
<pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;">
 
Most of MacroDroid actions take a minuscule amount of time to execute. But some actions such as HTTP request or a shell script action can take a significant time to complete. Some of these actions have an option to "Block next action until complete" in their configuration GUI. If this option is enabled subsequent actions will wait until this action completes before continuing. If the option is disabled the action will run asynchronously while other actions continue.
 
Most of MacroDroid actions take a minuscule amount of time to execute. But some actions such as HTTP request or a shell script action can take a significant time to complete. Some of these actions have an option to "Block next action until complete" in their configuration GUI. If this option is enabled subsequent actions will wait until this action completes before continuing. If the option is disabled the action will run asynchronously while other actions continue.
  
 
In conventional programming languages you would probably be able to pass a callback to call when the execution is complete to perform some other actions after the asynchronous action has completed (possibly even work with the data if the asynchronous action returned some), but because MacroDroid inner workings are rather arbitrary there is usually no such systematic option and you need to rely on different workarounds.
 
In conventional programming languages you would probably be able to pass a callback to call when the execution is complete to perform some other actions after the asynchronous action has completed (possibly even work with the data if the asynchronous action returned some), but because MacroDroid inner workings are rather arbitrary there is usually no such systematic option and you need to rely on different workarounds.
 +
</pre>
 +
List of Actions
 +
 +
== Control flow ==
 +
 +
[[Control flow: If clause|If clause]]
 +
 +
[[Control flow: If confirmed then|If confirmed then]]
 +
 +
[[Control flow: Repeat actions|Repeat actions]]
 +
 +
[[Control flow:  Iterate Dictionary/Array| Iterate Dictionary/Array]]
 +
 +
[[Control flow: Break from loop|Break from loop]]
 +
 +
[[Control flow: Continue loop|Continue loop]]
  
 
== List of Actions ==
 
== List of Actions ==
 +
 +
[[Action: Accessibility Service|Accessibility Service]]
  
 
[[Action: Action Block|Action Block]]
 
[[Action: Action Block|Action Block]]
Line 21: Line 40:
  
 
[[Action: Answer Call|Answer Call]]
 
[[Action: Answer Call|Answer Call]]
 +
 +
[[Action: App Enable/Disable|App Enable/Disable]]
 +
 +
[[Action: Authenticate User|Authenticate User]]
  
 
[[Action: Autosync On/Off|Autosync On/Off]]
 
[[Action: Autosync On/Off|Autosync On/Off]]
  
 
[[Action: Battery Saver|Battery Saver]]
 
[[Action: Battery Saver|Battery Saver]]
 +
 +
[[Action: Block Screen Touch|Screen Block Touch]]
  
 
[[Action: Bluetooth Configure|Bluetooth Configure]]
 
[[Action: Bluetooth Configure|Bluetooth Configure]]
Line 39: Line 64:
  
 
[[Action: Car Mode|Car Mode]]
 
[[Action: Car Mode|Car Mode]]
 +
 +
[[Action: Check Text On Screen|Check Text To Screen]]
  
 
[[Action: Clear App Data|Clear App Data]]
 
[[Action: Clear App Data|Clear App Data]]
  
 
[[Action: Clear Call Log|Clear Call Log]]
 
[[Action: Clear Call Log|Clear Call Log]]
 +
 +
[[Action: Clear Dictionary/Array Entry|Clear Dictionary/Array Entry]]
 +
 +
[[Action: Clear MacroDroid Dialog|Clear MacroDroid Dialog]]
  
 
[[Action: Clear Log|Clear Log]]
 
[[Action: Clear Log|Clear Log]]
Line 53: Line 84:
  
 
[[Action: Configure App Notifications|Configure App Notifications]]
 
[[Action: Configure App Notifications|Configure App Notifications]]
 +
 +
[[Action: Configure Quick Tile|Configure Quick Tile]]
  
 
[[Action: Confirm Next|Confirm Next]]
 
[[Action: Confirm Next|Confirm Next]]
Line 73: Line 106:
  
 
[[Action: Disable MacroDroid|Disable MacroDroid]]
 
[[Action: Disable MacroDroid|Disable MacroDroid]]
 +
 +
[[Action: Display Bubble Notification|Display Bubble Notification]]
  
 
[[Action: Display Dialog|Display Dialog]]
 
[[Action: Display Dialog|Display Dialog]]
Line 83: Line 118:
  
 
[[Action: Enable/Disable Macro|Enable/Disable Macro]]
 
[[Action: Enable/Disable Macro|Enable/Disable Macro]]
 +
 +
[[Action: Enable/Disable Trigger|Enable/Disable Trigger]]
  
 
[[Action: Exit Action Block|Exit Action Block]]
 
[[Action: Exit Action Block|Exit Action Block]]
  
 
[[Action: Expand/Collapse Status Bar|Expand/Collapse Status Bar]]
 
[[Action: Expand/Collapse Status Bar|Expand/Collapse Status Bar]]
 +
 +
[[Action: Export Log|Export Log]]
  
 
[[Action: Export Macros|Export Macros]]
 
[[Action: Export Macros|Export Macros]]
Line 93: Line 132:
  
 
[[Action: Fill Clipboard|Fill Clipboard]]
 
[[Action: Fill Clipboard|Fill Clipboard]]
 +
 +
[[Action: Floating Button Configure|Floating Button Configure]]
  
 
[[Action: Floating text|Floating text]]
 
[[Action: Floating text|Floating text]]
Line 101: Line 142:
  
 
[[Action: Force Screen Rotation|Force Screen Rotation]]
 
[[Action: Force Screen Rotation|Force Screen Rotation]]
 +
 +
[[Action: Get Light Level|Get Light Level]]
  
 
[[Action: GPS Enable/Disable|GPS Enable/Disable]]
 
[[Action: GPS Enable/Disable|GPS Enable/Disable]]
Line 113: Line 156:
  
 
[[Action: Immersive Mode|Immersive Mode]]
 
[[Action: Immersive Mode|Immersive Mode]]
 +
 +
[[Action: JavaScript Code|JavaScript Code]]
  
 
[[Action: Invert Colours|Invert Colours]]
 
[[Action: Invert Colours|Invert Colours]]
Line 157: Line 202:
  
 
[[Action: Notification LED Enable/Disable|Notification LED Enable/Disable]]
 
[[Action: Notification LED Enable/Disable|Notification LED Enable/Disable]]
 +
 +
[[Action: Notification Reply|Notification Reply]]
  
 
[[Action: Open Call Log|Open Call Log]]
 
[[Action: Open Call Log|Open Call Log]]
Line 177: Line 224:
  
 
[[Action: Priority Mode / Do Not Disturb|Priority Mode / Do Not Disturb]]
 
[[Action: Priority Mode / Do Not Disturb|Priority Mode / Do Not Disturb]]
 +
 +
[[Action: Read Screen Contents|Read Screen Contents]]
  
 
[[Action: Reboot/Power Off|Reboot/Power Off]]
 
[[Action: Reboot/Power Off|Reboot/Power Off]]
Line 191: Line 240:
  
 
[[Action: Secure Settings|Secure Settings]]
 
[[Action: Secure Settings|Secure Settings]]
 +
 +
[[Action: Selecttion Dialog|SelecttionDialog]]
  
 
[[Action: Send Email|Send Email]]
 
[[Action: Send Email|Send Email]]
Line 201: Line 252:
  
 
[[Action: Set Location Update Rate|Set Location Update Rate]]
 
[[Action: Set Location Update Rate|Set Location Update Rate]]
 +
 +
[[Action: Set Digital Assistant|Set Digital Assistant]]
  
 
[[Action: Set MacroDroid Icon|Set MacroDroid Icon]]
 
[[Action: Set MacroDroid Icon|Set MacroDroid Icon]]
Line 221: Line 274:
  
 
[[Action: Share Last Photo|Share Last Photo]]
 
[[Action: Share Last Photo|Share Last Photo]]
 +
 +
[[Action: Share Text|ShareText]]
  
 
[[Action: Share Location|Share Location]]
 
[[Action: Share Location|Share Location]]
Line 245: Line 300:
  
 
[[Action: Torch On/Off|Torch On/Off]]
 
[[Action: Torch On/Off|Torch On/Off]]
 +
 +
[[Action: Translate Text|Translate Text]]
  
 
[[Action: Touch Screen|Touch Screen]]
 
[[Action: Touch Screen|Touch Screen]]

Revision as of 22:26, 5 January 2024

An action is something your device can do when a macro runs. A macro must have at least one action to be valid.

Synchronous vs asynchronous

Most of MacroDroid actions take a minuscule amount of time to execute. But some actions such as HTTP request or a shell script action can take a significant time to complete. Some of these actions have an option to "Block next action until complete" in their configuration GUI. If this option is enabled subsequent actions will wait until this action completes before continuing. If the option is disabled the action will run asynchronously while other actions continue.

In conventional programming languages you would probably be able to pass a callback to call when the execution is complete to perform some other actions after the asynchronous action has completed (possibly even work with the data if the asynchronous action returned some), but because MacroDroid inner workings are rather arbitrary there is usually no such systematic option and you need to rely on different workarounds.

List of Actions

Control flow

If clause

If confirmed then

Repeat actions

Iterate Dictionary/Array

Break from loop

Continue loop

List of Actions

Accessibility Service

Action Block

Airplane Mode On/Off

Alarm Clock

Ambient Display

Android Shortcut

Android Wear

Answer Call

App Enable/Disable

Authenticate User

Autosync On/Off

Battery Saver

Screen Block Touch

Bluetooth Configure

Brightness

Calendar - Add Event

Call Reject

Camera Enable/Disable

Cancel Macro Actions

Car Mode

Check Text To Screen

Clear App Data

Clear Call Log

Clear Dictionary/Array Entry

Clear MacroDroid Dialog

Clear Log

Clear Notifications

Clear Variables

Clipboard Refresh

Configure App Notifications

Configure Quick Tile

Confirm Next

Connectivity Check

Contact Via App

Control Media

Dark Theme

Daydream/Screensaver On

Delete Macro

Demo Mode

Dim Screen

Disable MacroDroid

Display Bubble Notification

Display Dialog

Display Notification

Empty Action

Enable/Disable Category

Enable/Disable Macro

Enable/Disable Trigger

Exit Action Block

Expand/Collapse Status Bar

Export Log

Export Macros

File Operations V2

Fill Clipboard

Floating Button Configure

Floating text

Font Scale

Force Location Update

Force Screen Rotation

Get Light Level

GPS Enable/Disable

Heads-up Enable/Disable

HotSpot On/Off

HTTP Request

If clause

Immersive Mode

JavaScript Code

Invert Colours

JSON Parse

Keep Device Awake

Keyboard - Set Default

Keyboard Prompt

Kill Application

Kill Background Processes

Launch and Press

Launch Application

Launch Home Screen

Launch Shortcut

Locale/Tasker Plugin

Location Mode

Log Event

MacroDroid Drawer

MacroDroid Settings

Macro run

Make Call

Mobile Data On/Off

NFC Enable/Disable

Notification Interaction

Notification LED Enable/Disable

Notification Reply

Open Call Log

Open File

Open Last Photo

Open MacroDroid Log

Open Website / HTTP GET

Option Dialog

Play/Stop Sound

Popup Message

Press Back Button

Priority Mode / Do Not Disturb

Read Screen Contents

Reboot/Power Off

Record Microphone

Restore Hidden Notifications

Ringtone Configure

Say Current Time

Screen On/Off

Secure Settings

SelecttionDialog

Send Email

Send Intent

Send SMS

Set Button Bar Image

Set Location Update Rate

Set Digital Assistant

Set MacroDroid Icon

Set MacroDroid Mode

Set MacroDroid Notification Text

Set Notification Sound

Set Quick Settings Tile State

Set Screen Lock

Set Screen Timeout

Set Variable

Set Wallpaper

Share Last Photo

ShareText

Share Location

Shell Script

Silent - Vibrate Off

Speak Text

Speakerphone On/Off

Stopwatch

Sync Account

System Setting

Take Picture

Take Screenshot

Text Manipulation

Torch On/Off

Translate Text

Touch Screen

Tweet

UDP Command

UI Interaction

USB Tethering

Vibrate

Vibrate Enable/Disable

Voice Input

Voice Search

Volume Change

Volume Up/Down

Wait Before Next Action

Wait Until Trigger

WhatsApp Send

Widget Button Modify

Wifi Configure

Write to File