terça-feira, 5 de agosto de 2014

Android Contex



Context

Se voce já programa em Android, certamente ja ouviu falar do Context. Se você é novato na linguagem, uma hora ou outra você irá esbarrar nele.

Bom, mas o que é Context?

Context nada mais é do que uma entidade na qual auxilia utilizar recursos e classes do sistema como: Iniciar uma nova activity, interceptar broadcast e executar operações com arquivos como Leitura/Escrita entre outros.

Application Context

É uma instancia Singleton de context. Ela pode ser acessada via .getApplication() ou via getApplicationContext para qualquer objeto que herde de Context. Neste caso sempre retornará a mesma instância de Context da aplicação.


Base Context

É uma instancia do tipo ContextWrapper na qual delega suas chamadas a outros objetos Context. É utilizado como um “HUB” este delega cada chamada ao seu Context de destino.

getBaseContext é um metodo de ContextWrapper. O método getBaseContext, retorna o Context da activity atual.

Fazendo um comparativo entre Base e Application Context, a diferença entre os dois é que o método getApplicationContext retorna sempre a mesma instancia de Context da aplicação. Já o método getBaseContext retorna o Context da Activity na qual se encontra. O ApplicationContext é Global podendo ser acessado de qualquer parte do aplicativo. Já o BaseContext é especifico de cada Activity.


Acho que com isso já dá para se ter uma ideia básica sobre o funcionamento do objeto Context que tanto se usa no Android.

Qualquer dúvida ou sugestão peço que deixem mensagem!


Abraços!!


Nenhum comentário:

Postar um comentário