Quando as automações são executadas
Uma automação envia na sua cadência, tantas vezes quanto o iOS deixar o Marrow rodar em segundo plano. O Marrow usa todas as formas que a Apple oferece para um app acordar. A Apple decide o momento exato, e nenhum app consegue ler o Apple Health enquanto o iPhone está bloqueado.
Todos os guias do Marrow: MCP · Espelho autohospedado · Automações · Arquivos · Suporte
O que o Marrow faz
- Acorda com dados de saúde novos. O Marrow pede ao Apple Health que o acorde em segundo plano quando chegam dados novos, para cada tipo de dado que ele sincroniza: passos, frequência cardíaca, sono, treinos e todo o resto. Uma leitura nova do seu Apple Watch ou de outro app pode acordá-lo.
- Mantém sempre uma atualização em segundo plano agendada. Quando o Marrow vai para segundo plano, ele pede ao iOS uma atualização para cerca de uma hora depois, e cada atualização agenda a próxima, então sempre há uma esperando.
- Põe tudo em dia quando você o abre. Ao abrir, o Marrow lê tudo o que for novo e envia cada automação que estiver na hora.
- Envia tudo o que estiver pendente sempre que acorda. Toda vez que acorda, o Marrow lê os dados novos para o próprio armazenamento e depois envia cada automação cuja cadência já se cumpriu.
- Cobre as lacunas. Com Desde a última execução, uma execução envia tudo desde a última execução bem-sucedida, mais os dois dias anteriores. Uma execução atrasada ainda envia cada dia que perdeu.
- Registra cada execução. O Registro de atividades guarda as últimas 30 execuções com horário e resultado.
O que a Apple decide
Essas regras vêm do iOS e valem para todo app que exporta dados do Apple Health em segundo plano. Nenhum ajuste do Marrow pode mudá-las.
- Sem horários fixos. O iOS não deixa um app rodar em segundo plano na hora que ele escolhe. Um app pode pedir para ser acordado, e o iOS escolhe o momento com base na bateria, na rede, na frequência com que você usa o app e no que mais o iPhone estiver fazendo. Sua cadência é o intervalo mínimo entre execuções, não uma grade de horários. A cada hora significa no máximo uma vez por hora.
- Nada com o iPhone bloqueado. Os dados do Apple Health ficam criptografados enquanto o iPhone está bloqueado, e nenhum app consegue lê-los até você desbloquear. As execuções ficam em pausa enquanto o iPhone está bloqueado e se põem em dia na próxima vez que você o desbloquear.
- Janelas curtas. Cada vez que o iOS acorda um app em segundo plano, ele tem só alguns segundos, muitas vezes menos de 30. Um payload grande ou um receptor lento pode não terminar nesse tempo.
- O Modo Pouca Energia segura a atualização em segundo plano até ser desativado.
- A Atualização em 2º Plano precisa estar ativada para o Marrow, senão o iOS pula as atualizações agendadas.
- Você fechou o app. Depois que você fecha o Marrow deslizando no seletor de apps, o iOS pode não acordá-lo em segundo plano até você abri-lo de novo.
- Os dados do Apple Watch chegam em lotes. O Apple Watch passa os dados para o iPhone de tempos em tempos, não leitura por leitura, então os dados novos, e o despertar que eles provocam, podem chegar um pouco depois do momento da medição.
O que esperar
- iPhone em uso durante o dia: as execuções seguem sua cadência de forma aproximada. Algumas chegam na hora, outras mais tarde, e uma hora pode ficar sem execução.
- iPhone bloqueado por horas, como durante a noite: nenhuma execução e, depois que você desbloqueia, uma execução que envia tudo desde então.
- Uma cadência de hora em hora não vai dar exatamente 24 execuções por dia. As lacunas vêm da forma como o iOS agenda os apps, e a próxima execução as preenche.
Como ter execuções mais regulares
- Ative a Atualização em 2º Plano para o Marrow: Ajustes, Geral, Atualização em 2º Plano.
- Deixe o Modo Pouca Energia desativado quando as execuções forem importantes.
- Deixe o Marrow no seletor de apps em vez de fechá-lo deslizando.
- Escolha Desde a última execução, ou um intervalo de datas maior que a maior lacuna que você espera, para que uma execução atrasada ainda cubra todos os dias. Guarde do seu lado o valor mais recente por métrica e dia, e as repetições não fazem mal.
- Mantenha cada payload pequeno para que ele termine dentro de uma janela em segundo plano: Totais diários em vez de Amostras brutas, um intervalo de datas menor, uma automação por tipo de dado.
- Faça seu receptor responder na hora e fazer o trabalho depois. Como escrever um receptor tem os detalhes.
- Precisa de uma execução agora? Abra o Marrow ou toque em Executar agora na automação.
Como conferir o que aconteceu
- Registro de atividades (na automação, em Mais opções): as últimas 30 execuções. Uma execução com falha mostra o erro, e a tabela de solução de problemas explica o que cada um significa.
- Nenhuma entrada quando você esperava uma: o iOS não acordou o Marrow naquele momento, ou o iPhone estava bloqueado.
- Ajustes, Acesso ao Apple Health, Lendo do Apple Health: quando o Marrow leu cada tipo de dado pela última vez. Horários recentes ali indicam que o Marrow está sendo acordado.
- Notificar ao executar (Mais opções): uma notificação a cada execução enquanto você confere.
Ainda vê lacunas longas enquanto usa o iPhone? Escreva para o suporte com uma captura de tela do Registro de atividades e os horários que o seu receptor recebeu, e nós vamos verificar.