Tipos de Variables
MacroDroid admite tipos diferentes de variables.
Elegir el tipo correcto para cada variable ayuda a mantener tus macros limpias, eficientes y fáciles de mantener.
Entender estos tipos te permitirá almacenar y manipular datos de forma más efectiva en tus automatizaciones.
Cadena
Almacena texto — cualquier combinación de letras, números, símbolos o espacios.
Ejemplos:
"Hola mundo""Temperatura actual: 25°C""https://api.example.com/login""Usuario123"
Usos comunes:
- Notificaciones y Texto a Voz (TTS)
- Construcción de mensajes dinámicos
- Almacenar respuestas HTTP, rutas de archivos o entradas del usuario
Ejemplo con Magic Text: La hora actual es {hour}:{minute}
Entero
Almacena números enteros (positivos o negativos, sin decimales).
Ejemplos:
0,42,-15,2026
Usos comunes:
- Contadores (ej. cuántas veces se ha ejecutado una macro)
- Control de bucles (repetir X veces)
- Comparaciones numéricas (
si batería > 30)
Ejemplo práctico:
- Acción: Establecer variable →
wifiCount = wifiCount + 1
Decimal
Almacena números con punto decimal para cálculos más precisos.
Ejemplos:
3.14,25.75,-0.5,12.345
Usos comunes:
- Operaciones matemáticas
- Temperatura, distancia, porcentajes, promedios
- Resultados de Calcular expresión matemática
Ejemplo práctico:
- Acción: Establecer variable →
average = (value1 + value2) / 2
Booleano
Almacena un valor lógico simple:
verdero / falso.
Ejemplos:
verderofalso
Usos comunes:
- Flags y estados (
isNightMode,isCharging,hasNotified) - Controlar el flujo de la macro con condiciones If
- Evitar ejecuciones repetidas
Ejemplo práctico:
- Si
{v=nightMode}esverdero, activar modo oscuro y bajar el brillo.
Arreglo
Almacena una lista ordenada de valores. Cada elemento se puede acceder por su posición (índice).
Ejemplos:
[1, 2, 3, 4]["Lunes", "Martes", "Miércoles"]["Manzana", "Plátano", "Naranja"]
Usos comunes:
- Listas de elementos (mensajes, URLs, nombres, configuraciones)
- Selección aleatoria
- Recorrer elementos con la acción Iterar diccionario/arreglo
Ejemplo práctico:
messages = ["¡Buenos días!", "¡Que tengas un gran día!", "¡Hola!"]- Usar Iterar diccionario/arreglo para mostrar un mensaje aleatorio en una notificación.
Diccionario
Almacena pares clave-valor (datos estructurados, similar a un objeto JSON).
Ejemplos:
{"name": "Josue", "age": 28}{"city": "Ciudad de México", "country": "México"}{"user": {"name": "Josue", "premium": true}}
Usos comunes:
- Almacenar respuestas de API
- Configuraciones
- Datos organizados de usuario o dispositivo
Ejemplo de acceso: Después de guardar un diccionario en {v=user}, puedes acceder a sus valores con:
{v=user[name]}{v=user[age]}
Ejemplo práctico:
- Después de una solicitud HTTP, guardar datos del usuario:
user = {"name": "Josue", "level": 4, "premium": true}- Luego usar
{v=user[premium]}en condiciones.
Comparación rápida
| Tipo | Almacena | Mejor uso | Ejemplo |
|---|---|---|---|
| String | Texto | Mensajes, URLs, respuestas | "Hola mundo" |
| Integer | Números enteros | Contadores, bucles, comparaciones | 42 |
| Decimal | Números con decimales | Matemáticas, medidas, promedios | 25.75 |
| Boolean | Verdadero / Falso | Estados y banderas | true |
| Array | Lista ordenada | Listas, selección aleatoria | ["Lun", "Mar", "Mié"] |
| Dictionary | Clave-valor | Datos estructurados, APIs | {"name": "Josue"} |
