Os aplicativos de monitoramento como o mSpy podem funcionar normalmente logo após a instalação, mas depois que o telefone é bloqueado e fica inativo por um tempo, os dados podem parar de atualizar. Muitas pessoas pensam que é um problema de rede ou servidor, mas a causa real geralmente está no dispositivo: o mSpy é essencialmente um aplicativo Android comum, e o Android não garante que aplicativos comuns possam permanecer em segundo plano indefinidamente.
Causa raiz: aplicativos Android comuns são interrompidos pelo sistema
Depois que o aplicativo sai da tela, o Android gradualmente restringe sua execução em segundo plano. Quanto mais tempo o telefone ficar bloqueado, maior a probabilidade de o sistema fechá-lo para economizar bateria ou liberar memória. Alguns fabricantes de telefones também limpam proativamente aplicativos que não são abertos há muito tempo.
Problema do mSpy: falta de ponto de reinicialização após ser interrompido
Quando um aplicativo comum é interrompido, a maneira mais direta de restaurá-lo é o usuário tocar no ícone da área de trabalho para reabri-lo. Outra forma é iniciá-lo por meio de outro aplicativo. Para ocultar sua execução, o mSpy oculta o ícone da área de trabalho. A documentação oficial do mSpy afirma claramente que, após a instalação, nenhum ícone visível aparece no dispositivo de destino. Embora isso reduza a possibilidade de ser descoberto, também remove o ponto de entrada manual mais simples: uma vez que o aplicativo é fechado, o usuário do dispositivo não pode reiniciá-lo tocando no ícone. Para resolver esse problema, o mSpy precisaria que o fabricante do telefone ou outro aplicativo de longa duração o reiniciasse. Até a data de consulta dos materiais públicos deste artigo, o mSpy não indica a existência de tal cooperação.
Assim, forma-se um estado difícil de recuperar:
- O mSpy é interrompido pelo Android após ficar em segundo plano;
- O ícone da área de trabalho está oculto, o usuário não pode abri-lo manualmente;
- Não há outro aplicativo para reiniciá-lo.
É por isso que softwares como o mSpy podem parar de atualizar após uma ou duas horas de funcionamento. O problema não está necessariamente no painel de controle ou no servidor, mas no fato de que o aplicativo no telefone foi fechado e não há um ponto de reinicialização confiável.
Por que o Teralivo é diferente
O Teralivo não requer a instalação de um aplicativo; em vez disso, ele inicia diretamente um programa em segundo plano usando a tecnologia ADB. O Android não gerencia o Teralivo como um aplicativo comum, portanto, não é afetado pelas regras de economia de energia, limpeza em segundo plano ou parada forçada. O oom_score_adj do Teralivo é -1000, que está no mesmo nível de proteção dos processos principais do Android em termos de prioridade de recuperação de memória. Assim, mesmo quando o telefone fica bloqueado por muito tempo ou a memória está baixa, o sistema não fecha o Teralivo como faria com um aplicativo em segundo plano comum, permitindo que ele funcione em segundo plano por longos períodos como um programa do sistema. Esse valor pode ser verificado lendo /proc/self/oom_score_adj. Portanto, o Teralivo pode continuar funcionando após o bloqueio da tela e longos períodos de inatividade, sem perder a conexão como um aplicativo comum em segundo plano devido à economia de energia, agrupamento de espera, parada forçada ou recuperação normal de memória.
Diferenças principais entre os dois mecanismos de execução
| Item de comparação | Aplicativo Android comum como o mSpy | Teralivo |
|---|---|---|
| Modo de inicialização | Instala e inicia um aplicativo comum | Inicia programa em segundo plano via ADB |
| Execução em segundo plano | Pode ser fechado pela economia de energia e limpeza em segundo plano | Não afetado pelo gerenciamento de aplicativos comuns |
| Recuperação após interrupção | Depende do ícone da área de trabalho ou de outro aplicativo para iniciar | Não para, portanto não precisa de recuperação |
| Entrada na área de trabalho | Documentação do mSpy afirma que oculta o ícone | Não depende de ícone da área de trabalho para iniciar |
| Quando falta memória | Pode ser fechado pelo sistema | oom_score_adj é -1000, não é limpo |
Situações que ainda requerem atenção
Independentemente da solução adotada, ela só deve ser usada para gerenciar dispositivos de sua propriedade ou para os quais você obteve autorização explícita e legal, e você deve informar as partes relevantes sobre os dados coletados, sua finalidade e o período de retenção.
Aviso de marca registrada: mSpy é uma marca registrada de seus respectivos proprietários. Este artigo não tem afiliação ou parceria com o mSpy; o conteúdo da comparação é baseado em materiais públicos e no mecanismo de funcionamento do Android.
Referências
- Android Developers: Como os aplicativos são executados no sistema
- Android Developers: Economia de energia e restrições em segundo plano no Android
- Android Developers: Estado de parada forçada de aplicativos
- Firebase: Após saída forçada no Android, é necessário reabrir manualmente
- mSpy: Modo oculto no Android e ícone da área de trabalho
- Android Open Source Project: Low Memory Killer Daemon