Seminário: Plataformas de Desenvolvimento para Dispositivos Móveis Aluna: Juliana França Santos Aquino [email protected] Departamento de Informática/PUC-Rio INF 2541: Introdução à Computação Móvel Prof. Markus Endler [email protected] Rio de Janeiro, 03 de dezembro de 2007. Roteiro Introdução Plataformas Android Qtopia OpenMoko GPE Phone Edtion Comparação entre as Plataformas Considerações Finais 2 Introdução 3 Android 4 Histórico do Android Open Handset Alliance > 30 companhias Força do projeto se baseia no conceito de colaboração Associação de um grupo bastante heterogêneo de empresas De operadoras a fabricantes de celulares Android → Histórico 5 O que é Android? Pilha de softwares para dispositivos móveis: Android SDK: Projetos Ferramentas de desenvolvimento Emulador Conjunto de bibliotecas Linguagem de programação: Um sistema operacional Um middleware Conjunto de aplicações Java Máquina virtual: Dalvik (Kernel GNU/Linux) Android → Definição 6 Características Framewok: Máquina virtual Dalvik: Otimizada para dispositivos móveis Um navegador integrado: Baseado no projeto WebKit (código aberto) Gráficos otimizados: Permite o reuso e a substituição de componentes Bibliotecas gráficas 2D Gráficos 3D baseado na especificação OpenGL 1.0 SQLite: Para armazenamento de dados estruturados Suporte para mídias: Aúdio, vídeo, formatos de imagens (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG e GIF) Android → Características 7 Características Questões dependentes do hardware: Telefonia GSM Bluetooth EDGE 3G WiFi Câmera GPS Compass Acelerômetro Android → Características 8 Arquitetura 9 Arquitetura Android → Arquitetura 10 Aplicações Cliente de email Programa SMS Calendário Mapas Android → Arquitetura → Aplicações Navegador Contatos Entre outros. 11 Framework View Context Providers Resource Manager Notification Manager Ativity Manager Android → Arquitetura → Framework 12 Views (1/3) Android → Arquitetura → Framework → View 13 Views (2/3) Android → Arquitetura → Framework → View 14 Views (3/3) Android → Arquitetura → Framework → View 15 Bibliotecas System C Library Media Libraries Surface Manager LibWebCore Android → Arquitetura → Bibliotecas SGL 3D Libraries FreeType SQLite 16 Android Runtime Aplicação Android: Próprio processo Própria instância da máquina vitual Dalvik Executa arquivos .dex (ferramenta dx) Android → Arquitetura → Android Runtime 17 Linux Kernel Versão do kernel: 2.6 Serviços: O kernel atua como uma camada de abstração entre o hardware e o resto da pilha de software Android → Arquitetura → Linux Kernel Segurança Gerenciamento de memória Gerenciamento de processos Pilha de protocolos de rede Modelo de drives 18 Android SDK 19 Sistemas Operacionais Versão: m3-rc22a (16 de novembro de 2007) Platform Windows Package android_sdk_windows_m3rc22a.zip Size 59MB Mac OS X android_sdk_darwin_m3-rc22a.zip 55MB (intel) Linux (i386) android_sdk_linux_m3-rc22a.zip 55MB Link para instalação: http://code.google.com/android/download.html Android → SDK 20 Ambientes de Desenvolvimento Eclipse IDE Eclipse 3.2, 3.3 (Europa) Eclipse JDT Plugin (included in most Eclipse IDE packages) JDK 5 ou JDK 6 (JRE sozinho não é suficiente) Não é compatível com o Gnu Compiler for Java (gcj) Android Development Tools plugin (opcional) https://dl-ssl.google.com/android/eclipse/ Outros ambientes de desenvolvimento ou IDEs JDK 5 ou JDK 6 (JRE sozinho não é suficiente) Não é compatível com o Gnu Compiler for Java (gcj) Apache Ant 1.6.5 ou superiores para Linux e Mac, 1.7 ou superiores para Windows Data Funneling → Fases 21 Instalação do SDK Após realizar o download do SDK, descompactar o arquivo .zip Por exemplo, android_sdk_windows_m3rc22a.zip Instalando o plugin para Eclipse (ADT) https://dl-ssl.google.com/android/eclipse/ Data Funneling → Fases 22 Desafio do Desenvolvedor Android Desafio da Google Aplicações: 10 milhões em prêmios Submissões de trabalhos: http://code.google.com/android /adc.html 02/01/2008 a 03/03/2008 50 melhores trabalhos: $ 25.000,00 Rede social Gerenciamento, edição ou compartilhamento de mídias (fotos) Produtividade e colaboração Jogo Notícias e informações Novas interfaces de usuário Uso de serviços baseados em localização Benefícios humanitários Aplicações em serviço de desenvolvimento econômico global 23 Para saber mais... Grupos de discussão: http://code.google.com/android/groups.html Licença da Apache Software Foundation http://www.apache.org/licenses/LICENSE-2.0 24 Considerações Finais 25 Conclusões Considerações Finais → Conclusões 26 Ponte Metálica, Fortaleza/CE “Verdes mares bravios de minha terra natal, onde canta a jandaia nas frondes da carnaúba; verdes mares, que brilhais como líquida esmeralda aos raios do sol nascente, perlongando as alvas praias ensombradas de coqueiros. Serenai, verdes mares e alisai docemente a vaga impetuosa, para que o barco do aventureiro manso resvale à flor das águas. ” (Trecho do romance Iracema do escritor cearense José de Alencar, 1865). Obrigada!!! 27