Exercício Introdução a Programação Android
Por: Jose.Nascimento • 7/11/2018 • 3.540 Palavras (15 Páginas) • 412 Visualizações
...
Exercício 6: Explique com suas palavras a arquitetura da plataforma Android. Dê exemplo de recursos presentes nesta arquitetura.
- A plataforma Android trabalha com o sistema de camadas e é baseado em Linux. As camadas serão descritas “de cima para baixo”, ou seja, da parte que se conecta com o usuário até a camada mais interna da arquitetura.
- A primeira camada é a de aplicativos, nela se encontram os apps nativos do Android, aqueles que têm funções básicas como configurações do sistema, calendário, navegador, alarme e etc. A maioria deles pode ser utilizada também pelos programadores, por exemplo: se um aplicativo precisa enviar um SMS, essa função não precisa ser desenvolvida, basta chamar o app nativo com esse propósito.
- Na segunda camada se encontram as APIs programadas em Java, onde se encontram recursos necessários para a criação de aplicativos, como: o sistema de views (fornece botões, listas, caixas de texto, etc.), o gerenciador de recursos (layouts padrão, gráficos), o gerenciador de notificação (permite a exibição de alertas na barra de status), o gerenciador de atividades (controla o ciclo de vida de app) e os content providers (permitem o compartilhar informações e acessar dados de outros aplicativos, como os contatos, por exemplo).
- A terceira camada tem duas partes: as bibliotecas nativas e o Android Runtime (ART). As bibliotecas nativas são necessárias para o funcionamento de alguns componentes do Android, como ART e o HAL (quarta camada) e são escritas em C e C++. Além disso, as Java APIs precisam das bibliotecas para funcionar, por exemplo: o OpenGL ES (biblioteca) é acessada pela Java OpenGL API para a manipulação de gráficos 2D e 3D em aplicativos. O Android Runtime ou ART é responsável por “rodar” os aplicativos e tem recursos que otimizam o uso de memória durante o processo.
- A camada de abstração de hardware (HAL – Hardware Abstraction Layer) fornece as capacidades de hardware do dispositivo para as Java APIs. Consiste em módulos que correspondem a componentes específicos de hardware, como o módulo da câmera ou do bluetooth. Quando uma API tenta acessar o hardware do dispositivo, o sistema Android carrega o módulo da biblioteca para este componente.
- A última camada é o kernel do Linux, nele se encontram principalmente os drivers (que acessam diretamente os componentes de hardware e os interpretam) e o serviço de bateria e controle de energia.
Exercício 7: Explique com suas palavras os conceitos de Activity, Service, View, Intent e Content Provider da plataforma Android.
- Activity: é um componente de aplicativo que fornece uma tela, onde os usuários interagem. Cada activity recebe uma janela que exibe a interface, que é normalmente definida por um arquivo XML, mas que pode ser alterada através do Java.
- Service: não contém interface e serve para realizar operações longas. Se um service for iniciado em um aplicativo, ele vai continuar em execução mesmo que o usuário vá para outro aplicativo. Um exemplo é a reprodução de música, que continua em segundo plano mesmo depois do usuário ter saído do aplicativo de reprodução.
- View: são os componentes da interface e são os meios de interação do usuário com as funções do aplicativo. Ou seja, são os botões, caixas de texto, barras de progresso, etc.
- Intent: é uma descrição abstrata de uma operação a ser realizada. Seu uso mais conhecido é o de iniciar activities, através do método startActivity(), um intent abre outra “tela” sobre aquela que já esta aberta.
- Content Provider: gerenciam o acesso a um conjunto estruturado de dados. Eles encapsulam os dados e fornecem mecanismos para definir a segurança dos dados. Um Content Provider é a interface padrão que conecta dados em um processo com código em execução em outro processo.
Exercício 8: Como podemos garantir a união de uma classe Activity e uma estrutura de View no Android? Explique com suas palavras.
Considerando que a interface foi criada em XML, é necessário dar um ID para a view no arquivo XML, então criar uma variável na activity do tipo View ou do tipo da view criada (TextView ou Button, por exemplo) e fazer a referência através do método findViewById() e converter o seu retorno para o tipo da view.
Exercício 9: Explique com suas palavras o ciclo de vida da Activity no Android. Considere os métodos onCreate(), onStart(), onResume(), onPause(), onStop(), onDestroy(). Como esses métodos são utilizados e declarados em projetos Android.
onCreate() - É a primeira função a ser executada em uma Activity. Geralmente é a responsável por carregar os layouts XML e outras operações de inicialização. É executada apenas uma vez.
onStart() - É chamada imediatamente após a onCreate() – e também quando uma Activity que estava em background volta a ter foco.
onResume() - Assim como a onStart(), é chamada na inicialização da Activity e também quando uma Activity volta a ter foco. Porém a onStart() só é chamada quando a Activity não estava mais visível e volta a ter o foco, a onResume() é chamada nas “retomadas de foco”, portanto é chamada mais vezes.
onPause() - É a primeira função a ser invocada quando a Activity perde o foco (isso ocorre quando uma nova Activity é iniciada).
onStop() - Só é chamada quando a Activity fica completamente encoberta por outra Activity.
onDestroy() - A última função a ser executada. Depois dela, a Activity é considerada “morta” – ou seja, nao pode mais ser relançada. Se o usuário voltar a requisitar essa Activity, um novo objeto será contruído através do onCreate() e o ciclo se reiniciará.
Exercício 10: Explique com suas palavras o que é, e para que serve, o AndroidManifest na plataforma Android.
É um arquivo de apresenta informações essenciais sobre o aplicativo ao sistema Android, informações necessárias antes da execução do código. Serve, entre outras coisas, para: listar as bibliotecas vinculadas ao app, declarar as permissões que o aplicativo precisa (acesso a internet, localização, hardware, etc.) e declarar a versão mínima do Android necessária para o aplicativo funcionar.
Exercício 11: Explique os principais requisitos para o desenvolvimento de projetos Android.
Um computador com os seguintes
...