
Application Class no Android, Entendendo e Utilizando
(3951) (9) (1)

CategoriaAndroid
InstrutorVinÃcius Thiengo
NÃvelTodos os nÃveis
VÃdeo aulas186
PlataformaUdemy

CategoriaDesenvolvimento Android
AutorVinÃcius Thiengo
Edição1ª
Ano2017
CapÃtulos20
Páginas936

CategoriaEngenharia de Software
AutorVinÃcius Thiengo
Edição2ª
Ano2017
CapÃtulos46
Páginas599










Opa, blz?
Nesse vídeo mostro como utilizar a classe Application do Android para podermos utilizar o padrão Singleton (há várias maneiras de fazer isso no Android) e como monitorarmos os estado atual da memória caso o dispositivo esteja com o consumo de memória alto. A classe Application é instanciada pelo Android assim que a APP é aberta (uma Application class para cada APP) e mesma instância permanece até o usuário remover a APP por completo da memória ou até o próprio Android realizar essa operação para liberar memória para algum outro processo (pode ser uma outra APP) que está com prioridade maior na lista de elementos que estão na memória do dispositivo. Não é necessário utilizar o a classe Application apenas quando vc tem entidades que podem ser utilizadas em todo o seu sistema, vc pode utilizar até quando quer apenas passar dados de uma Activity para outra, digo que isso é um atalho, atalho ruim, pois o código de sua APP pode virar uma bagunça, mas funciona. Há várias discussões em sites como stakeoverflow para saber qual a melhor opção de implementar o padrão Singleton em aplicações Android, o Android não fala explicitamente qual é a melhor opção, mas indica que para manter as entidades mais modularizadas utilizar o Singleton na classe correspondente pode ser melhor para organização de código, porém o acesso pela classe Application (minha opinião) é mais fácil, tanto para setar quanto para obter o valor.
Os métodos onLowMemory (para API 13 e abaixo) e onTrimMemory (da API 14 para cima) são chamados quando a memória do dispositivo começa e ficar sem espaço, logo o Android informa as aplicações que estão tanto no foreground quanto no background qual o estado dela, a aplicação, quanto a possibilidade de ser removida ou não da memória para liberar espaço para processos de prioridade maior. O Android nos dá quatro constantes de comparação para verificar o estado da aplicação quanto a possibilidade de ser removida, mas a documentação deixa claro que não devemos adotar a comparação exata com essas constantes, pois os valores de entrada do método (no caso somente o método onTrimMemory()) podem vir entre os valores das constantes, nesse caso o Android recomenda que a comparação seja realizada na forma que se o valor for igual ou maior que uma determinada constante a condicional dessa constante seja processada. O método onLowMemory() é chamado apenas quando o estado da aplicação quanto a possibilidade de ser removida da memória é a mais alta ou seja igual a constante TRIM_MEMORY_COMPLETE. Então é isso, vou evitar mais delongas e deixar vc assistir ao vídeo.
O link para download do projeto se encontra logo abaixo no post.
Segue links das páginas apresentadas no vídeo:
Página da classe Application no site oficial do Android
Página que contém a explicação das constantes apresentadas no vídeo
Página de explicação de funcionamento de Processos e Threads no Android
Página do padrão Singleton, no Wikipédia
Vlw
Relacionado
Comentários Blog (9)









Comentários Facebook