Uma macro longa costuma nascer como uma rotina curta e, aos poucos, acumular preparação, tarefa principal, caminhos de recuperação e encerramento. Ela pode continuar funcionando, mas alterar uma parte fica mais difícil porque todo teste precisa atravessar o fluxo inteiro.
O EmuloMobile oferece a ação Executar outra automação para organizar esse cenário em módulos. Quando a ação roda, a automação atual é encerrada e a automação escolhida começa. A passagem é sequencial: somente uma automação executa por vez.
Este guia mostra como separar uma preparação reutilizável da rotina principal, ligar as duas macros e testar essa fronteira sem criar um ciclo escondido.
Automatize somente rotinas permitidas pelo aplicativo ou serviço envolvido. Encadear macros organiza o fluxo; não contorna regras nem confirmações de terceiros.
Quando encadear macros é melhor do que adicionar mais passos
Mantenha a rotina em uma macro quando os passos fazem parte da mesma tarefa pequena e normalmente mudam juntos. Separe quando um trecho tiver estado inicial, resultado e manutenção próprios.
Alguns bons candidatos são:
- uma macro de preparação que chega a uma tela conhecida antes de rotinas diferentes;
- uma macro de recuperação que devolve a interface a um estado seguro;
- uma etapa de login ou navegação seguida por um fluxo operacional separado;
- duas etapas longas que precisam ser testadas de forma independente;
- uma preparação compartilhada que deve ter uma única versão mantida.
Encadear não é o mesmo que copiar ações. Uma ação copiada vira uma duplicata independente. Executar outra automação transfere a execução para outra macro, que continua editável por conta própria.
Se você precisa apenas reunir alguns passos sob a mesma condição, uma ação composta costuma ser mais simples. Se o fluxo precisa guardar uma contagem ou rota dentro de uma execução, use variáveis e ações condicionais.
Desenhe a passagem antes de abrir o construtor
Escreva a cadeia como um contrato curto:
Preparar tela → confirmar que o painel está pronto → executar Rotina principal
A macro de origem cuida de tudo antes da seta. A macro de destino precisa começar exatamente na tela deixada pela origem. Essa fronteira deve ter um resultado observável, como um título, uma imagem ou uma cor estável, e não apenas um atraso fixo.
No exemplo deste guia, crie duas automações:
- Preparar painel começa no aplicativo alvo e navega até o painel.
- Processar painel cuida do trabalho repetitivo que começa nessa tela.
Crie e salve primeiro a automação de destino. O EmuloMobile só pode oferecer como alvo outra automação que já existe no aparelho.
Como executar outra automação no EmuloMobile
Abra a macro de origem no construtor. O último passo útil dela deve deixar o aplicativo alvo no estado esperado pela automação de destino.
1. Adicione a ação de passagem
Selecione Adicionar Ação, escolha Nova Ação e depois Executar outra automação. O editor informa que a automação atual será encerrada e a escolhida começará, uma por vez.
Essa ação é uma passagem de bastão, não uma chamada temporária. O EmuloMobile não volta ao passo seguinte da macro de origem quando o destino termina. Trate a ação como o fim daquele caminho na origem.
2. Escolha a macro de destino
Selecione Processar painel na lista de automações do aparelho. A própria macro atual não é um destino útil: apontar a cadeia de volta para si cria um ciclo, não uma sequência reutilizável.
Se o editor informar que não há outra automação disponível, volte à lista de automações, crie e salve o destino e então reabra a macro de origem.
Use a anotação opcional para deixar a fronteira explícita, por exemplo: Painel pronto — passar para processamento. Uma anotação descritiva facilita a revisão da cadeia mais tarde.
3. Proteja a passagem com uma condição
Adicione à ação Executar outra automação uma condição que confirme a tela inicial esperada pelo destino. Conforme a interface, essa condição pode procurar um título com OCR no aparelho, reconhecer uma imagem de referência ou conferir uma cor estável.
No exemplo do painel, use uma condição como Texto na Tela: Painel e limite a região ao cabeçalho. A troca só acontece depois que a macro de origem realmente alcança essa tela.
Evite depender apenas de uma espera longa antes da passagem. O atraso termina mesmo se o aplicativo ainda estiver carregando; uma condição de tela descreve o estado que o destino realmente exige.
4. Salve explicitamente
Confirme a ação, volte ao construtor e selecione Salvar. O EmuloMobile mantém as alterações pendentes até esse comando. Sair sem salvar pode descartar a nova ligação entre as macros.
O que acontece durante a passagem
Quando a condição é atendida e Executar outra automação roda, o EmuloMobile para a origem e prepara o destino escolhido na mesma sessão de execução. A macro de destino começa automaticamente. A captura de tela e o controle flutuante continuam fazendo parte dessa sessão, portanto duas macros não passam a rodar em paralelo.
O destino ainda precisa corresponder à resolução e à orientação atuais do aparelho. O EmuloMobile registra essas propriedades em cada macro e as confere durante a passagem. Se não coincidirem com o modo atual, a macro de destino não é iniciada.
Crie as duas macros no mesmo modo do aparelho quando elas fizerem parte da mesma cadeia. Se uma origem em retrato apontar para um destino criado em paisagem, o aparelho precisa estar no modo registrado pelo destino no momento da troca; não presuma que a passagem girará o aplicativo por você.
Exemplo prático: separe preparação e trabalho repetitivo
Imagine uma rotina que precisa chegar a um painel antes de processar uma lista. Separe as responsabilidades.
Em Preparar painel:
- comece na tela inicial esperada do aplicativo alvo;
- feche um aviso inicial esperado, se ele aparecer;
- navegue até o painel;
- confirme o título do painel;
- execute Processar painel.
Em Processar painel:
- confirme se a lista está visível;
- processe um item;
- atualize um contador ou outra variável de estado;
- continue conforme as condições da própria macro;
- pare em um estado de conclusão explícito.
Essa organização permite testar o processamento a partir de um painel conhecido sem repetir a navegação inicial depois de cada edição. Outra macro de origem também pode passar para Processar painel, desde que estabeleça o mesmo estado inicial.
O destino também deve conferir seu próprio estado de entrada. A condição na origem protege a saída; a primeira condição no destino protege a entrada. Essa pequena sobreposição facilita o diagnóstico da fronteira se o aplicativo alvo mudar.
Evite ciclos acidentais entre automações
Desenhe a cadeia antes de executá-la:
A → B → C → parar
Depois, confira cada ação Executar outra automação. Uma cadeia como A → B → A não tem macro terminal e pode trocar repetidamente. O EmuloMobile inclui uma proteção que interrompe uma sequência excessiva de trocas rápidas, mas ela é uma última barreira, não uma ferramenta para desenhar o fluxo.
Siga estas regras:
- dê um resultado terminal a toda cadeia;
- não faça o destino voltar à origem sem uma condição que torne esse retorno finito e testável;
- deixe a passagem no fim de um caminho claro;
- use anotações que nomeiem a tela esperada e o destino;
- revise a cadeia inteira ao renomear, substituir ou excluir uma macro.
Se um ciclo for realmente necessário, controle-o com contador e condição de saída explícitos. O guia de variáveis em macros Android mostra como limitar tentativas dentro de uma macro; para várias macros, a estrutura mais segura continua sendo uma sequência finita com parada clara.
Teste cada macro e depois a cadeia
Não transforme o primeiro teste em uma execução completa e sem supervisão. Use uma sequência controlada:
- Coloque o aplicativo alvo na tela inicial esperada pelo destino e teste essa macro sozinha.
- Teste a origem até o passo anterior à passagem.
- Confirme que a condição da troca falha na tela errada.
- Coloque o aplicativo na tela correta e confirme que o destino escolhido começa.
- Verifique que a macro de origem não continua depois da passagem.
- Confira se as duas macros foram criadas para a resolução e a orientação atuais.
- Siga todas as saídas e confirme que a cadeia tem um resultado terminal.
- Execute a sequência completa mantendo visíveis os controles flutuantes de Play, Pausa e Parar.
Se o destino não começar, primeiro confirme se ele ainda existe no aparelho e depois compare a resolução e a orientação salvas com o modo atual. Se a troca acontecer na tela errada, torne a condição da origem mais específica em vez de adicionar uma espera maior.
Deixe a fronteira tão clara quanto as ações
Uma boa cadeia não é apenas uma macro longa cortada em pedaços. Cada macro deve cuidar de uma tarefa coerente, declarar a tela que espera e deixar um estado que a próxima consiga confirmar. Com essas fronteiras, Executar outra automação transforma macros independentes do EmuloMobile em uma rotina sequencial sem esconder duas execuções simultâneas.
Conheça o EmuloMobile e crie automações Android modulares diretamente no aparelho.