Desenvolvimento android
-
Upload
diego-keller -
Category
Technology
-
view
2.347 -
download
2
description
Transcript of Desenvolvimento android
Diego Keller [email protected] @diegokeller
Primeiros conceitos Desafios Ambiente de desenvolvimento Números sobre o Android Buscando Informação Android Ice Cream Sandwich
Android é uma pilha!!!
“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.
Java VM
Dalvik VM
Máquina virtual Java simplificada e otimizada para execução de aplicações em dispositivos com menor poder de
processamento e memória.
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
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.
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
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.
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.
Performance
Menos memória e processador, velocidade de conexão.
Usabilidade
Telas menores
Diversidade
de dispositivos
Compatibilidade
Diferentes versões da API do Android.
Escolha as estruturas de dados corretas dependendo do seu problema.
Assegure-se de utilizar algoritmos eficientes e de rápida execução.
Escolher as estruturas de dados corretas e os algoritmos mais eficientes são a melhor forma de otimizar o seu programa.
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.
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!";
Use a seguinte sintaxe do for for (Foo a : mArray) { // Código }
Threads Estruturas de Dados
API de coleções
Webservices
ANR - Application Not Responding
Tamanho da tela (em polegadas) Densidade da tela (resolução), medida em
pixels por polegada.
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)
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
Emulador
Android SDK and AVD Manager
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
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.
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.
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.
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.
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.
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.
Fonte: http://www.businessinsider.com/chart-of-the-day-android-activations-2011-10
Fonte: http://blog.nielsen.com/nielsenwire/?p=27418
Março de 2011 Fonte: http://blog.nielsen.com/nielsenwire/?p=27418
Agosto de 2011 Fonte: http://goo.gl/k4nm0
Fonte: http://blog.nielsen.com/nielsenwire/?p=27418
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
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
O melhor local para buscar informações é a página do desenvolvedor:
http://developer.android.com/index.html
Lá você entra:
SDK’s
Documentação
Referência da API
Download de exemplos
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.
Unificação do Android para tablets e smartphones.