O documento apresenta um curso básico sobre desenvolvimento Android, abordando tópicos como ambiente de desenvolvimento, arquitetura, atividades, intents, layouts, interação com componentes e manipulação de telas. A primeira aula introduz o Android e o ambiente de desenvolvimento. A segunda fala sobre atividades, intents e intent filters. A terceira aborda interação com o usuário e permissões.
2. agenda
13/05/2017
Introdução ao Android
Ambiente de Desenvolvimento
Arquitetura
Estrutura da Aplicação
20/05/2017
Activities, Intents e Intent Filters
Leiautes e Componentes (ViewGroups e Views)
03/06/2017
Iterações Com o Usuário (Eventos)
Permissões de Aplicativo
10/06/2017
Armazenamento de Dados
Chamadas Remotas
24/06/2017
Mapas
Sensores
Publicação no Google Play
11. intents e intent filters
Para iniciar/abrir uma Activity:
A Activity representa uma única tela em um aplicativo.
É possível iniciar uma nova instância de uma Activity passando uma Intent a
startActivity().
A Intent descreve a Activity a iniciar e carrega todos os dados necessários.
13. intents e intent filters
Para iniciar um serviço:
O Service é um componente que realiza operações em segundo plano sem
interface de usuário.
É possível iniciar um serviço para realizar uma operação que acontece uma vez
(como baixar um arquivo) passando uma Intent a startService().
A Intent descreve o serviço a iniciar e carrega todos os dados necessários.
15. intents e intent filters
Para fornecer uma transmissão (broadcast):
Transmissão é uma mensagem que qualquer aplicativo pode receber.
O sistema fornece diversas transmissões para eventos do sistema, como
quando o sistema inicializa ou o dispositivo inicia o carregamento.
17. intents e intent filters
explícitas
As intenções explícitas especificam o componente a iniciar pelo nome (o nome
de classe totalmente qualificado). Normalmente, usa-se uma intenção
explícita para iniciar um componente no próprio aplicativo porque se sabe o
nome de classe da atividade ou serviço que se deseja iniciar.
19. intents e intent filters
implícitas
As intenções implícitas não nomeiam nenhum componente específico, mas
declaram uma ação geral a realizar, o que permite que um componente de
outro aplicativo a trate.
21. intents e intent filters
O filtro de intenções é uma expressão em um arquivo de manifesto do
aplicativo que especifica o tipo de intenções que o componente gostaria de
receber.
25. como é organizado o leiaute?
toda interface é construída usando “view” e “viewgroup”
26. groupview
é um agrupador de views e outros groupviews, também determina como os
elementos contidos nele serão apresentados em tela
framelayout, linearlayout, RelativeLayout, …
27. view
é um objeto que desenha na tela algo que o usuário possa interagir
textview, edittext, checkbox, radiobutton, button, menu, progressbar, imageview, …
28. importante!!!!!
Os atributos “layout_width” e “layout_height” são obrigatórios em todos os
tipos de Views e ViewGroups, Eles são utilizados para definir a largura e a
altura dos elementos
match_parent - Esse valor faz o elemento ter a mesma largura ou altura do elemento pai
wrap_content - Esse valor faz o elemento ter a largura ou a altura suficiente englobar o seu
conteúdo
valor - Uma dimensão, ou seja, um valor numérico utilizando uma das unidades de medida
suportadas na plataforma Android
29. importante!!!!!
O atributo id é utilizado para identificar os elementos unicamente. Por serem
considerados recursos, os ids são registrados na classe especial R.
O valor do atributo id deve:
1. Começar com o caractere arroba (@).
2. O sinal de mais (+) pode aparecer depois do arroba (@)
3. Em seguida, aparecem os caracteres “id/”.
4. Por fim, aparece o id propriamente.
31. Linear layout
LinearLayout é um grupo de exibições que alinha todos os filhos em uma única
direção vertical ou horizontal.
Você pode especificar a direção do layout com o atributo android:orientation.
32. absolute layout
absoluteLayout é um grupo de exibições que posiciona os filhos a partir de
coordenadas (x e y) específicas para cada um. são pouco flexíveis por
utilizarem posicionamento absoluto.
33. relative layout
RelativeLayout é um grupo de exibição que mostra os filhos em posições
relativas.
A posição de cada um pode ser especificada em relação aos elementos irmãos (como à esquerda ou
abaixo de outra vista) ou em posições relativas à área RelativeLayout pai (como alinhada à parte
inferior, esquerda ou central).
34. constraint layout
constraintLayout é um grupo de exibição conceitualmente semelhante ao
constraintlayout, porém muito mais flexível.
criado com o objetivo principal de evitar ao máximo layouts aninhados, aumentando assim a
performance na renderização dos apps.