6. “Pilha de softwares para dispositivos móveis
que inclui um sistema operacional,
middleware e aplicações chave.”
O Android SDK provê as ferramentas e API’s
necessárias para o desenvolvimento de
aplicações para a plataforma Android usando
a linguagem de programação Java.
7.
8. Dalvik VM
Java VM
Máquina virtual Java simplificada e otimizada para execução
de aplicações em dispositivos com menor poder de
processamento e memória.
9. Não é compatível com a especificação da
JVM:
Não pode rodar aplicativos Java SE nem ME
Executa arquivos no formato próprio .DEX
É Open Source: Apache License 2.0
10. Cada aplicação é executada em uma instância
da VM Dalvik.
Aplicações não compartilham dados (memória)
nem código.
A sistema Android foi adaptado para poder
gerenciar diversas instância da VM
simultaneamente.
11. Existe uma
API para cada
versão do
Android
Novas
versões são
compatíveis
com as
anteriores.
Fonte: http://developer.android.com/guide/appendix/api-levels.html
12. Ao criar sua aplicação, procure compilar
usando a menor versão da API possível.
Novas versões irão rodar sua aplicação sem
problemas. Mas é importante que você teste
a aplicação no maior número de versões
possível.
E usando a menor versão possível, você
aumenta o número de dispositivos que
podem executar sua aplicação.
13. Aplicações Android são empacotadas no
formato .APK.
O Android é um sistema Linux multiusuário,
onde cada aplicação tem o seu usuário.
Permissões são definidas em todos os arquivos da
aplicação, de modo que apenas o usuário da
própria aplicação tenha acesso.
Cada aplicação roda em um processo, que é
uma instância da Dalvik.
14.
15. Performance
Menos memória e processador, velocidade de
conexão.
Usabilidade
Telas menores
Diversidade
de dispositivos
Compatibilidade
Diferentes versões da API do Android.
16. Escolha as estruturas de dados corretas
dependendo do seu problema.
17. Assegure-se de utilizar algoritmos eficientes
e de rápida execução.
18. Escolher as estruturas de dados corretas e os
algoritmos mais eficientes são a melhor
forma de otimizar o seu programa.
19. Prefira os tipos primitivos int aos objetos
Integer.
Prefira dois arrays de objetos ao invés de um
único array de um objeto novo.
Pessoa[] destinatarios
String[] nomes
String[] emails
Evite criar objetos que você não precisa, ou
objetos de vida curta. Quanto menos objetos
você criar, melhor.
20. Não use getters e setter para acesso a
campos dentro da própria classe. Acesse-os
diretamente.
Em comparação ao acesso por getter, o acesso
direto é 3 x mais rápido em VM’s sem o JIT e 7 x
mais rápido em VM’s com JIT.
Sempre que possível use constantes
static final int intVal = 42;
static final String strVal = "Hello, world!";
21. Use a seguinte sintaxe do for
for (Foo a : mArray) {
// Código
}
22. Threads
Estruturas de Dados
API de coleções
Webservices
24. Tamanho da tela (em polegadas)
Densidade da tela (resolução), medida em
pixels por polegada.
25.
26. JDK
JAVA_HOME nas variáveis de ambiente
Adicionar a pasta JAVA_HOME/bin no PATH
Eclipse
Android SDK
Apenas descompactar em um diretório
Plugin ADT para Eclipse
Configurar o caminho do Android SDK (pasta
extraída anteriormente)
27. Eclipse
Editor visual no estilo arrastar e soltar para
construção das telas.
Execução em modo debug
Editor visual para o arquivo Manifest
Compilação, empacotamento e assinatura de sua
aplicação em um arquivo .APK
32. Contém uma séria de informações sobre sua
aplicação.
Nele são feitas definições como:
Permissões que sua aplicação precisa (acesso a
internet, a lista de contatos, etc)
Hardware e software necessários (câmera, bluetooth,
etc)
Versão mínima do Android necessária para rodar a
aplicação
Outras bibliotecas que não as nativas da plataforma.
Versão de sua aplicação
33. O Android Market irá ler todas as
informações do arquivo Manifest de modo a
apresentar para o usuário apenas as
aplicações que o seu dispositivo pode
suportar.
34. Inscrição:
https://market.android.com/publish/signup
Taxa de US$25,00 com cartão de crédito via
Google Checkout.
Taxa de 30% do valor de cada cópia vendida
do Android Market
Esse dinheiro vai para as entidades de pagamento
e outros, não fica para o Google.
35. A plataforma fornece uma ferramenta para
aplicar licenciamento em aplicações.
Disponível apenas para aplicações pagas.
Não tem custo nenhum.
Exige API nível 3 no mínimo.
36. A partir da versão 8 da API, você pode
escolher que sua aplicação seja instalada no
SD Card ao invés da memória interna.
É uma decisão que o desenvolvedor deve
fazer. Para permitir isso, defina o parâmetro
“android:installLocation” no seu arquivo de
manifesto.
A qualquer momento o usuário pode mover a
aplicação para o SD Card ou para a memória
interna.
37. O arquivo .APK fica no SD Card, mas todos os
dados do usuário, bancos de dados e arquivos
.DEX otimizados ficam dentro da memória
interna.
Ao ser instalada no SD Card a aplicação é
criptografada usando uma chave aleatória.
Apenas o dispositivo aonde a aplicação foi
instalada pode descriptografar e acessar a
aplicação.
38. Quando o cartão de memória for
desmontado, ou o dispositivo conectado ao
PC para armazenamento de arquivos, todas
as aplicações instaladas no SD Card são
automaticamente finalizadas.
45. Dispositivos que acessaram o Android Market num período de 14 dias terminando em 3
de Outubro de 2011.
Fonte: http://developer.android.com/resources/dashboard/platform-versions.html
46. Dispositivos que acessaram o Android Market num período de 7 dias terminando em 3
de Outubro de 2011.
Fonte: http://developer.android.com/resources/dashboard/screens.html
47.
48. O melhor local para buscar informações é a
página do desenvolvedor:
http://developer.android.com/index.html
49. Lá você entra:
SDK’s
Documentação
Referência da API
Download de exemplos
50.
51.
52. Lançado dia 19/10/2011
Unificação do Android para tablets e
smartphones.
Aparelhos lançados em 2011 com Android 2.3
de fábrica serão atualizados para o ICS.
53. Unificação do Android para tablets e
smartphones.