Sobre o Colméia: Grupo de pesquisa em Software e Hardware Livre. Software Livre não é só Linux!
Assuntos que serão abordados Android é Software Livre? Arquitetura Android Maquina Virtual Dalvik Evolução do Android até os dias de hoje Novidades no ICS (Ice Cream Sandwich) Novidades recentes com o Android Como fazer um aplicativo de Sucesso
ANDROID Plataforma para dispositivos movéis Baseado em Linux Ferramentas de desenvolvimento Linguagem mais usada: JAVA Maquina virtual Dalvik Recursos gráficos otimizados Principais fabricantes: - Samsung - HTC - Motorola Rica interatividade
Android é Linux - Muito otimizado para Smartphone. - Versão : 1.5 - Kernel : 2.6.27. - Versão : 1.6 - Kernel : 2.6.29. - Versão : 2.0 - Kernel : 2.6.29. - Versão : 2.2 - Kernel : 2.6.32. - Versão : 2.3 - Kernel : 2.6.35. - Versão : 3.0 - Kernel : 2.6.36. - Versão : 4.0 - Kernel : 3.0.1.
Kernel 3.3 do Linux incorpora núcleo do Android Agora drivers escritos para o Linux poderão funcionar nativamente no Android, e vice-versa, tornando a vida de todos muito mais fácil e permitindo que os usuários tenham acesso a mais recursos.
Software Livre Liberdade de executar, copiar, alterar e re-distribuir Não é cerveja grátis - Richard Stallman O que é Copyleft?
Software Livre X Android O código fonte do android é publico! Licença predominante: GPL e Apache
Software Livre X Android Entendendo ainda mais as camadas de licenças
Arquitetura Android Funcionamento interno da plataforma. Aplicativos Framework Bibliotecas Kernel À grosso modo, o Android é uma máquina vir-tual Java rodando sobre o kernel do Linux (com pequenas mudanças)
Maquina Virtual Dalvik - É uma maquina virtual criada por Dan Borntein e alguns engenheiros do Google. - Nome devido a uma vila de pescadores na Islândia. - Máquina Virtual Java (ou quase)
Maquina Virtual Dalvik - O intuito de "Reinventar a Roda" era melhorar o gerenciamento de processos e o isolamento de threads. - Requer pouca memória. - Multiplas Instâncias (Isolamento de threads)
Comparação.jar x.apk
.apk ->.dex -> dey -> DVM -> ANDROID
Comparação.jar x.apk Code Arquivo JAR descompactado Arquivo JAR compactado Arquivo APK descompactado Bibliotecas Comuns 21.445.320 (100%) 10.662.048 (50%) 10.311.972 (48%) App Web Browser 470,312 (100%) 232.065 (49%) 209.248 (44%) App Relógio Alarme 119.200 (100%) 61.658 (52%) 53.020 (44%)
Evolução do Android
Evolucao do Android Versão 1.5 - CupCake - Abre rapidamente aplicativo da camera e captura de imagem e filmagem. - Fazer upload de vídeos para o YouTube e Picasa. - Copiar e Colar.
Evolucao do Android Versão 1.6 - Donut - Busca por voz. - Busca por gestos. - Grande melhoria no text-to-speech. - O novo Android Market para aplicativos.
Evolucao do Android Versão 2.1 - Eclair - Velocidade de hardware otimizada. - Live wallpapers. - Teclados virtuais melhorados. - Mais opções de tamanhos e resolução de telas.
Evolução do Android Versão 2.2 - Froyo - Suporte ao Flash 10.1 completo. - Processamento até 5x mais rápido. - Hotspot para até 8 aparelhos. - Possiblidade de salvar aplicativos no cartão SD. - Múltiplas linguagens para teclados.
Evolucao do Android Versão 2.3 - Gingerbread - Suporte à NFC. - Teclado padrão multitouch. - Melhorias no controle de aplicações rodando em background. - Gerenciador de Downloads.
Evolucao do Android Versão 2.3 - Gingerbread - Suporte a câmera frontal e vídeo conferência nativo. - Suporte a giroscópio.
Android 4.0 ICS (Ice Cream Sandwich)
Android 4.0 ICS (Ice Cream Sandwich) Video
Evolucao do Android Versão 4.0 - Ice Cream Sandwich
Tela Tecnologia: Super Amoled HD Resolução: 720 x 1280 Tamanho: 4.65"
Ice Cream Sandwich Galaxy Nexus ou Galaxy X 4.65" Super Amoled HD 16 GB Dual Core de 1.2 GHz
Ice Cream Sandwich - Foi lançado em 19 de Outubro de 2011. - Lançado com intuito de unificar tablets e smartphones, acabando com fragmentação. - Fortes modificações no visual.
Ice Cream Sandwich APIs 15 - Notificações acessadas sem o desbloqueio de tela - Reconhecimento facial - Google+ com Messenger e Hangout - Gerenciador de dados nativo - Finalização de aplicativos mais fácil
Ice Cream Sandwich APIs 15 - Navegação na Internet com até 16 abas - Android Beam - Busca offline no Gmail - Screenshot da tela - Ditado
Notificações acessadas sem o desbloqueio de tela - Notificações em tempo real são mostradas sem a necessidade de o smatphone esta desbloqueado.
Gerenciador de dados nativo Um ótimo recurso para internet 3G por exemplo.
COMO CONSTRUIR UM APLICATIVO DE QUALIDADE?
COMO CONSTRUIR UM APLICATIVO DE QUALIDADE? Foco no Usuário. "Usuário é uma ferramenta de Debug!"
A cada 6,1 segundos surge um novo usuário! Google Play ja tem mais de 450 mil aplicativos 700 mil aparelhos Android são ativados
Como fazer seu aplicativo ter sucesso?
Como fazer seu aplicativo ter sucesso? Fazer algo que o usuário não tinha em mente que precisava. Fazer com que o usuário tenha uma experiência de qualidade.
Como? Compatibilidade Economia Conveniência
Compatibilidade: Telas Configurações
Compatibilidade: Telas: Use <Supports-screens> Preste atenção no espaço ao invés de pixels. Não use Absolut-Layout
Compatibilidade: Mobile = celular + tablet +... Cuidado com as diferenças! Por exemplo: - rotação - tablets não têm telefonia - etc...
Compatibilidade: Use o melhor de cada dispositivo, permita que o usuário configure a aplicação. Permita que o usuário use o seu aplicativo offline!
Econômia Economize bateria, processador e rede. Delete o que você não precisa. Default razoável.
Econômia Use BroadCast Receivers para saber sobre uma mudança de conectividade.
Conveniência Permita que o usuário configure o seu aplicativo ( Settings )
Conveniência Torne seu aplicativo intuitivo: demonstre ao invés de explicar. Fácil de aprender x Prático de usar
Conveniência Use ícones que transmitem ideias com clareza.
Conveniência Use ícones que transmitem ideias com clareza. Mostre o tipo de teclado apropriado para o campo. ( android: imputtype = "... ")
Conveniência Use ícones que transmitem ideias com clareza. Mostre o tipo de teclado apropriado para o campo. ( android: inputtype = "... ") Sempre permita que o usuário desfaça uma operação (inclusive de rede)
Conveniência Não impeça o usuário de usar algo só porque outra coisa não funciona.
Conveniência Não impeça o usuário de usar algo só porque outra coisa não funciona. Economize espaço na tela. (Todo componente que está na tela deve fazer algo importante)
Conveniência Não impeça o usuário de usar algo só porque outra coisa não funciona. Economize espaço na tela. (Todo componente que está na tela deve fazer algo importante) Espaço é tudo para uma tela pequena. (No máximo acima na tela deve ter uma barra dizendo qual é a tela que o usuário se encontra)
Conveniência Tenha sempre um layout para Portrait e LandScape. (PELO MENOS FICAR IGUAL AO VIRAR) * Exeção em games.
Conveniência Usuário querem clareza. (Muita informação em uso eficiente do espaço)
Conveniência Usuário querem clareza. (Muita informação em uso eficiente do espaço) Contrate um designer (Interface clara, bonita, intuitiva)
Seja esperto! Colete dados da aplicação. Para verificar erros.
Seja esperto! Colete dados da aplicação. Para verificar erros. Grave as compras feitas do usuário.
Perguntas?
Contato: Wellington Fuck Rutes: netorutes@gmail.com Weskley Migliorini: wesklei@colmeia.udesc.br UDESC-CCT / Colméia
Curiosidades!
Hugo Barra - Brasileiro - Minas Gerais - Graduação de Engenharia Eletrica na UFMG. - Diretor de gerenciamento de projetos do Android.
Sony smartwatch 1,3'. Compativel apenas com Xperia S e Arc S
Asus Pad Phone
Samsung Galaxy Beam
Geladeira integrada com Android
Microondas integrado com Android
Contato: Wellington Fuck Rutes: netorutes@gmail.com Weskley Migliorini: wesklei@colmeia.udesc.br UDESC-CCT / Colméia