Desenvolvimento

7 out, 2010

Task killers para Android: o que eles fazem e por que você não deve usá-los

Publicidade

Os task killers para Android, apps que fecham outros apps, melhoram o desempenho do seu celular e aumentam a duração da bateria – ou pelo menos é isso que eles prometem. Eis uma visão geral de como eles realmente funcionam, quando você deve usá-los (e quando não usá-los), além de como substituí-los por soluções reais.

Um task killer é um app por onde você pode – até mesmo automaticamente – forçar outros apps a fecharem, pois acredita-se que quanto menos apps estiverem rodando no plano de fundo, melhor será o desempenho e duração da bateria do Android. Mas nem todo mundo concorda com isso.

O debate sobre a eficiência dos task killers segue acalorado por toda a internet: fóruns sobre Android estão cheios de tópicos com discussões intermináveis e relatos conflitantes de experiências próprias, tornando difícil para a maioria dos usuários entender direito a situação.

Abaixo, vamos revelar a verdade sobre os task killers para Android: que o sistema gerencia as tarefas direito sem a intervenção do usuário e que os task killers apresentam vários problemas. Vamos ver também os motivos raros onde eles são úteis, e oferecer algumas alternativas que você deveria usar para melhorar o desempenho e duração da bateria do seu aparelho.

Antes disso, eis uma breve explicação de como o Android lida com processos e programas.

Como o Android gerencia processos

No Android, processos e aplicativos são duas coisas diferentes. Um app pode ficar “rodando” no plano de fundo sem que outros processos consumam os recursos do seu celular. O Android mantém o app na memória para que seja aberto mais rapidamente e para retorná-lo a seu estado anterior.

Quando seu celular fica sem memória, o Android automaticamente fecha processos sozinho, começando com aqueles que você não usa há algum tempo. O problema é que o Android usa a memória RAM diferente de sistemas como, por exemplo, o Windows. No Android, ter sua memória quase cheia é algo bom. Quer dizer que, se você reabrir um app que estava aberto antes, ele abre mais rápido e volta a seu estado anterior.

Então, apesar de o Android usar a RAM de forma eficiente, muitos usuários veem que a memória está cheia e acham que isso está deixando o aparelho mais lento. Na verdade, é o processador – usado apenas por apps que estejam de fato funcionando – que quase sempre reduz o desempenho.

Porque task killers (geralmente) são um problema

Apps como o Advanced Task Killer – o task killer mais popular do Market, age com o pressuposto incorreto de que liberar memória em um dispositivo com Android é algo bom. Quando aberto, ele apresenta uma lista de apps “rodando” no aparelho e dá a opção de fechar quantos você quiser.

Você também pode usar o botão Menu para acessar o modo Serviços, que lista exatamente que partes de cada aplicativo estão “rodando”, quanta memória estão ocupando e quanta memória livre está disponível no seu celular.

Esta disposição de informações implica que o objetivo de fechar esses apps é liberar memória. Em nenhum lugar da lista é mencionado o número de ciclos de CPU que cada app está consumindo, só a memória que você vai liberar ao fechá-los. Como vimos, memória cheia não é problema – precisamos monitorar a CPU, o recurso que de fato deixa seu celular mais lento e drena sua bateria.

Resumindo: precisamos fechar todos os apps exceto pelos essenciais ou obrigar o Android a fechar apps mais agressivamente com a função “autokill” – o que geralmente é desnecessário.

É possível que isto piore o desempenho e duração de bateria do seu celular – seja fechando apps manualmente o tempo todo ou configurando o task killer a fechar apps de forma agressiva e constante. Assim você está usando ciclos do processador que não deveria – fechando apps que nem estavam fazendo nada.

Na verdade, alguns dos processos relacionados a eses apps voltam a
abrir imediatamente, usando ainda mais o processador. Se não for o caso,
você pode ter outros tipos de problemas: alarmes não disparam,
mensagens de texto não chegam ao celular, apps que usam esses processos
fecham de repente. No fim, é melhor você deixar seu celular funcionar
como deveria – especialmente se você não for um usuário experiente.
Nesses casos, o task killer cria mais problemas do que elimina.

Vale lembrar que, no Android 2.2, os task killers pararam de funcionar:
o Froyo vem com um gerenciador de tarefas nativo e não permite que apps
fechem outros apps. Ou seja, é um posicionamento oficial, mesmo que
implícito, contra task killers no Android. Então pare de usá-los sempre.

O que fazer então?

Dito isto, nem todos os apps são criados iguais. Muitos de vocês
usaram task killers no passado e perceberam que, depois de liberar
memória, seu celular funcionou um pouco melhor. Isso provavelmente
aconteceu porque você fechou um app ruim – um app mal codificado, que
por exemplo tenta acessar a internet mesmo quando não deveria.

Qualquer
melhora no desempenho aconteceu muito provavelmente porque você fechou o
app certo, não porque você liberou um monte de memória – ou, em muitos
casos, é só efeito placebo. Em vez de fechar todos esses apps, descubra
qual está causando problemas. Se você souber o que está fazendo, um task
killer pode ajudar você a se livrar de um ou dois apps ineficientes no
seu celular. Mas saiba que mesmo isto ainda é contestável.

Muitos desenvolvedores (incluindo o Cyanogen,
que cria as ROMs mais conhecidas para Android) nem olham seu relatório
de bugs se você usa um task killer. Na nossa humilde opinião, sua melhor
aposta é não usar task killers regularmente. Mas se você precisa de um
app que consome muita bateria no seu celular, então continue a usar task
killers – mas saiba que, quando você encontrar um bug no Android mais
tarde, o task killer pode ser o culpado – ou você pode simplesmente
parar de usá-lo e ver se é o caso.

Então sabemos que é melhor nem usar task killers, mas ainda há várias
outras coisas que você pode fazer para preencher esta lacuna,
melhorando o desempenho e a duração da bateria:

Monitore processos rebeldes: o Watchdog é
um tipo diferente de task killer, porque em vez de dizer que seu
celular não tem memória e que é hora de fechar tudo, ele alerta quando um
app começa a consumir CPU sem motivo. Então você pode fechar o app com o
Watchdog e continuar seu dia (se bem que honestamente, quando chega a
isso, eu geralmente reinicio meu celular). Se isso acontecer
frequentemente com o mesmo app, no entanto, você vai querer seguir o
próximo passo.

Desinstale apps ruins: pior que o app que sai de
controle uma vez ou poucas vezes, é o app mal-escrito que consome espaço na sua CPU.
Se você descobrir (com o Watchdog ou por algum outro método) que um app
em particular parece estar drenando sua CPU e bateria, confirme suas
suspeitas desinstalando-o e vendo o que acontece. Se um app estiver
causando problemas no seu celular, melhor nem tê-lo.

Faça root no seu celular: nós defendemos bastante o rooting de aparelhos com Android no Lifehacker, afinal fazer isso é tão útil quanto todos dizem. Você pode fazer overclock e underclock com o SetCPU (para aumentar o desempenho ou economizar bateria), instalar ROMs personalizadas
que melhoram a performance e usar programas para impedir que apps não
abram quando o Android iniciar.

Com apps que fazem root com apenas
um toque, como o já mencionado Universal Androot, disponível para vários aparelhos, rootear é algo que pode levar poucos minutos e que vale muito a pena.

Desative conexões que você não estiver usando: isto
pode parecer óbvio, mas se você não estiver usando algum tipo de widget
para desligar Wi-Fi, Bluetooth, GPS e controlar o brilho da tela, é bom
arranjar um. O Android 2.0 vem com um widget assim por padrão, o
MotoBlur mais recente também disponibiliza widgets desse tipo e você sempre
tem boas opções no Market. Desligue essas conexões quando não precisar
delas, e você vai ver que dá pra obter uma duração maior da sua bateria.

Carregue a bateria do seu celular: um conselho ainda
mais óbvio, mas que poucos levam a sério: carregue sempre seu celular.
Isso não é tão difícil quanto parece para a maioria das pessoas. É claro que às vezes você pode passar 14 horas sem lugar para carregar seu aparelho,
mas a maioria de nós passa o tempo em casa, no escritório e outros
lugares cheios de tomadas disponíveis.

Leve seu carregador sempre com
você, ou compre um carregador extra e deixe um em casa e outro no
trabalho. Quando você estiver em casa ou trabalhando, basta
ligar seu celular na tomada e dar uma carga extra, para não se
preocupar depois.

Quase todo smartphone com Android carrega a bateria via entrada
microUSB, então encontrar um carregador para ele não será problema. Só
não compre carregadores de qualidade duvidosa: eles geralmente
superaquecem a bateria, e nada acaba com a duração da bateria como calor em excesso.

Carregar a bateria constantemente, no entanto, não é um problema:
aquela história de efeito memória é coisa do passado, de baterias de
níquel-cádmio. As baterias atuais são de íons de lítio e na verdade perdem autonomia se você, antes de carregá-la, esperar que ela descarregue totalmente.

Gerenciadores de tarefas são um assunto controverso na Android-lândia.
Nós fizemos essa pesquisa e este é o resultado, mas sempre queremos
saber mais de vocês através dos comentários. Sua experiência é
semelhante? Diferente? Tem mais alguma recomendação a fazer? Participe e compartilhe idéias!