Evite que o iniciador de casas seja morto

9

Eu tenho um Motorola Milestone e aprendi que ele tem uma memória relativamente baixa (memória de tempo de execução, não capacidade de armazenamento). O problema que vem com isso é que sempre que muitos aplicativos querem rodar em segundo plano, o sistema Android começa a matar coisas e, com o meu Milestone, isso acontece com muita facilidade.

Isso não seria tão ruim, se não fosse o fato de que o Android parece pensar que o lançador doméstico é o aplicativo menos importante de todos (o que é absurdamente errado). Por exemplo, agora eu tenho uma série de aplicativos poluindo o fundo, alguns importantes (como o Swype ) e outros sem sentido (como o Facebook ). Se eu abrir ainda um aplicativo simples, como mensagens ou contatos ou Configurações do homelauncher é morto no fundo. Depois de pressionar o botão Início, sou recebido com uma tela inicial vazia e preciso aguardar 1 ou 2 minutos para que tudo seja carregado novamente.

Isso acontece com todos os lançadores domésticos que eu tentei, embora aconteça mais facilmente com os lançadores mais pesados. Até agora, consegui viver com esse comportamento, evitando religiosamente os aplicativos executados em segundo plano (além dos widgets). Mas essa solução não é perfeita. Ainda acontece com mais frequência do que eu gostaria.

Existe uma maneira de mudar as prioridades do Android quando se trata de matar aplicativos em segundo plano? Mas por que o lançador de classificação casa menor do que o Google Maps 'serviço de localização e Facebook ' s carregador (inativo) e tudo o mais? Eu quero que o iniciador de casa seja a última coisa que é morta quando a memória estiver baixa ou o mais próximo possível da última (por exemplo, obviamente não pode ter uma classificação mais alta que o aplicativo ativo no momento, mas você entende meu ponto).

Atualmente, tenho o Cyanogen mod 6 instalado, mas isso também aconteceu no sistema operacional Android padrão, e estou disposto a instalar QUALQUER ROM ROM personalizada para resolver esse problema.

Malabarba
fonte

Respostas:

5

Eu acho que o ADW Launcher tem uma configuração que deve manter o aplicativo na memória. Além disso, o CM possui uma configuração para forçar o sistema operacional a manter o iniciador na memória. Não me lembro onde está no CM6, mas no CM7 está Settings -> CyanogenMod Settings -> Performancee é chamado de "Lock Home in Memory". Não me lembro se estava no mesmo lugar ou se era chamado o mesmo no CM6.

Ryan Conrad
fonte
Esta opção é útil, mas não ideal. É o que estou usando agora (e obrigado por apontar), mas às vezes causa instabilidades e às vezes trava o aplicativo atual em primeiro plano.
Malabarba
11
Qualquer aplicativo que permanecer na memória como você deseja causará as instabilidades mencionadas. Você está forçando o dispositivo a manter a memória em uso no seu iniciador quando ele precisar ser usado para o aplicativo em execução no momento.
Ryan Conrad
3
Compreendo. É por isso que mencionei na pergunta que o iniciador não deve ter prioridade mais alta que o aplicativo em execução no momento, mas deve ser maior que os aplicativos em segundo plano. É perfeitamente aceitável que o iniciador seja morto se o aplicativo ativo precisar da memória, eu só queria que ele fosse morto depois que os outros aplicativos em segundo plano fossem mortos (em vez de ser o primeiro da fila). Mas é compreensível que essa opção ainda não esteja lá =). Não pode ter tudo.
Malabarba
@BruceConnor, este é provavelmente o único ponto contra o argumento de que "o Android lida com a memória por si só". Eu acho que sim, na maioria das vezes, apenas mata o lançador repetidamente no processo. Não que um assassino de tarefas realmente ajudasse.
Chance
1

Experimente o v6 Supercharger .

Pode tornar o seu Homescreen Launcher "Difícil de Matar" ou "À prova de balas". Se você possui o ICS / JB, certifique-se de obter a versão do ICS / JB .

Além disso, certifique-se de desativar o Lock Home in Memoryativador (se houver) antes de usar a v6.

Mateen Ulhaq
fonte