quarta-feira, 15 de abril de 2015

Entendendo o framework do Android - Parte 1

Vimos que criar uma aplicação para Android é bastante simples. No entanto é de fundamental importância entendermos como funciona o framework (isto é, a estrutura de trabalho) proposto pela Google para o desenvolvimento.

Neste post vamos "dissecar" a estrutura de diretórios que compõe um projeto de aplicativo Android.

Observemos a imagem abaixo. Ela contém uma descrição das pastas mais importantes do framework Android:




A estrutura é muito bem bolada e torna possível que um mesmo app funcione em aparelhos com tamanhos de tela diferentes e até mesmo configurados com outro idioma.

Mas de nada adianta terem pensado nessa estrutura organizada se não a utilizarmos da forma correta.

A Google inventou essa maneira de organizarmos os arquivos. O que não apenas torna nosso trabalho mais fácil e produtivo, mas também padroniza os projetos e garante que todo app publicado na loja seguirá certa analogia.

Vamos começar com o exemplo do arquivo mais importante da estrutura, o AndroidManifest.xml:

Arquivo AndroidManifest.xml























Este arquivo contém basicamente uma descrição do aplicativo. Armazena o nome do pacote (neste caso com.example.meuprimeiroapp), o número e o nome da versão do APK. Também informa qual a versão mínima de Android que o aplicativo exige (minSdkVersion) e qual a versão para a qual foi desenvolvido (targetSdkVersion).

Algumas descrições do aplicativo também são feitas aqui, como por exemplo o local onde se encontra a imagem do ícone de lançamento (que será mostrado no painel de aplicativos do celular), o texto que representa o nome do aplicativo e o tema (cores de fundo, tipo de fonte, etc.). 

Todas as telas existentes no aplicativo (definidas na pasta res/layout), ou seja, os arquivos xml com a descrição de desenho das telas devem ser discriminados neste arquivo, conforme podemos verificar no caso acima entre as tags
<activity ... </activity>, onde está citada a tela "MainActivity". Se acrescentarmos uma tela ao aplicativo, devemos obrigatoriamente acrescentar também ao AndroidManifest.xml uma citação da mesma. Caso contrário ganhamos um erro na hora de executar o aplicativo (aparece mensagem de erro na tela do celular e um "stack-trace" do Java no Eclipse). É algo bastante comum de se esquecer...

No AndroidManifest.xml é onde também dizemos que recursos do aparelho nosso app utilizará. Se nosso app envia SMS, por exemplo, ou acessa a Internet, então devemos informar nesse arquivo. Se não o fizermos, novamente ganhamos erro em tempo de execução do APK. Chamamos de "descrição das permissões" do app. Têm esse nome porque no momento que o usuário baixa o aplicativo da loja, ele recebe uma mensagem informando o que o aplicativo vai usar de recurso do aparelho e então o usuário decide se aceitará ou não.

É no AndroidManifest.xml também, onde informamos a chave de usuário do Google Maps API que permite o uso de mapas. Além de ser o lugar onde definimos serviços que executarão em background (exatamente como serviços do sistema operacional Windows), sem uma tela correspondente.

Não se preocupe em entender as minúcias do AndroidManifest.xml. Não é necessário escrevê-lo a partir do nada. Como tudo no framework, ele é gerado automaticamente e então vamos acrescentando informações. O importante é saber que o AndroidManifest.xml é um arquivo de configuração/descrição do aplicativo.

No próximo post continuaremos tratando da estrutura do framework Android.

Nenhum comentário:

Postar um comentário