Top Banner

Click here to load reader

Desenvolvimento de Aplicativos para Android

Nov 14, 2015

ReportDownload

Documents

Nesse minicurso iremos apresentar a plataforma Android, uma plataforma em ascensão
no desenvolvimento de aplicativos para dispositivos móveis. Nesse minicurso serão
mostrados os passos necessários para a instalação e configuração do ambiente de
desenvolvimento, apresentação da estrutura de arquivos, demonstração do uso dos
principais componentes de layout, implementação de conceitos e por fim execução de
um exemplo no dispositivo móvel.

  • 220

    Captulo

    8

    Desenvolvimento de Aplicativos para Android

    Dyego Carlos Sales de Morais, Ivan Fillipe Rodrigues dos Santos

    Abstract

    In this mini-course will introduce the Android platform, a platform on the rise in

    development applications for mobile devices. In this mini-course will show the steps

    required for installing and configuring the development environment, presentation of

    the file structure, demonstrating the use of the main components of layout,

    implementation of concepts, and finally execution of an example mobile device.

    Resumo

    Nesse minicurso iremos apresentar a plataforma Android, uma plataforma em ascenso

    no desenvolvimento de aplicativos para dispositivos mveis. Nesse minicurso sero

    mostrados os passos necessrios para a instalao e configurao do ambiente de

    desenvolvimento, apresentao da estrutura de arquivos, demonstrao do uso dos

    principais componentes de layout, implementao de conceitos e por fim execuo de

    um exemplo no dispositivo mvel.

    8.1 Dados Gerais

    8.1.1. Objetivos do Curso

    O minicurso tem por objetivos capacitar os alunos ao desenvolvimento de aplicaes

    para dispositivos mveis, atravs da apresentao e implementao de conceitos

    inerentes a plataforma Android, bem como execuo e instalao de aplicativos em um

    dispositivo mvel real.

    8.1.2. Tipo do Curso

    O minicurso tem sua carga-horria dividida entre apresentao de conceitos tericos da

    plataforma Android e demonstrao de prticas de codificao. Importante salientar que

    como sero abordados muitos conceitos tericos, a prtica do curso ter menor carga-

    horria, porm o suficiente para capacitar os alunos a desenvolver, testar e instalar uma

    aplicao bsica para seus dispositivos.

    No permitido fazer cpia integral ou parcial deste trabalho visando o lucro ou vantagem comercial.

    Este trabalho foi publicado nos Anais da XII Escola Regional de Computao dos Estados da Bahia,

    Alagoas e Sergipe, em abril de 2012 UNIVASF -www.erbase2012.univasf.edu.br- ISSN 2177-4692.

  • 221

    8.1.3. Tratamento dado ao tema

    Inicialmente ser realizada uma viso geral sobre o estado da arte no desenvolvimento

    de aplicaes para dispositivos mveis. Em seguida ser apresentado um comparativo

    entre as principais tecnologias de desenvolvimento para plataformas mveis, em

    especial Android. Por fim, ser demonstrada a codificao de alguns conceitos na

    prtica, incluindo instalao em dispositivo real.

    8.1.4. Perfil desejado dos participantes

    O minicurso melhor aproveitado por desenvolvedores (profissionais ou estudantes)

    que dominam o paradigma orientado a objetos, de preferncia Java.

    8.1.5. Infra-estrutura fsica necessria para a apresentao

    1.1 Projetor multimdia; quadro-branco; pincis; apagador.

    8.2 Estrutura prevista detalhada do texto

    Tecnologias mveis produzem vrios benefcios para as diversas reas do

    conhecimento. Em todas as reas tem-se uma vantagem na utilizao desse tipo de

    tecnologia: simplificao do acesso e da atualizao de informaes. Em sade, por

    exemplo, possvel obter uma diminuio de erros e inconsistncias se dispositivos

    mveis forem utilizados estrategicamente para esse objetivo. E em educao, com a

    utilizao de aparelhos portteis pode-se auxiliar no processo de construo do

    conhecimento. Na 15 Bienal do Livro, o Ministro da Educao brasileiro, Fernando Haddad, anunciou que o governo vai distribuir tablets para alunos de escolas pblicas a

    partir de 2012 com o objetivo de universalizar o acesso tecnologia.

    Dispositivos mveis so pequenos computadores com tela menor e mecanismo

    de entrada de dados limitado quando comparados a computadores desktop. Esses

    aparelhos costumam ter a capacidade de conexo via rede sem fio e possuem como

    principal premissa, a permisso de execuo de algumas tarefas enquanto o operador se

    movimenta. J uma aplicao computacional mvel um pedao de software embutido

    em um dispositivo mvel [BFAR 2004] [LEE et al. 2004].

    O poder computacional de dispositivos mveis est em intenso avano e j se

    pode compar-lo ao dos microcomputadores de mesa, visto que j possuem inclusive

    processadores multi-core. Ademais, novos elementos de hardware nos dispositivos

    mveis j so comuns, como:

    acelermetro: funcionalidade que calcula a acelerao utilizada em discos rgidos parando o HD em caso de queda, alm de ser, atualmente, implantado

    em diversos dispositivos mveis, produzindo uma nova interao com a

    mquina;

    GPS: sistema de posicionamento global, popularmente conhecido por GPS (acrnimo do original ingls Global Positioning System, ou do portugus "geo-

    posicionamento por satlite") um sistema de navegao por satlite que

    fornece a um aparelho receptor mvel sua posio;

    display touch-screen: telas sensveis ao toque, ou ecr que capaz de reconhecer o toque na tela como entrada de dados;

  • 222

    entre diversos outros.

    Desse modo j possvel usufruir de aplicaes em smartphones e tablets com

    funcionalidades que seriam inviveis se aplicadas em computadores desktop. Essa

    convergncia de tecnologias em um nico dispositivo faz dos aparelhos mveis, em

    especial os smartphones, a nova tendncia do mercado tecnolgico.

    Segundo a Anatel (2012) o Brasil possui mais de 188 milhes de aparelhos

    celulares, o que resulta numa mdia de quase um celular por habitante. Em 2010, as

    vendas de dispositivos mveis cresceram 31,8% em todo o mundo, somando

    aproximadamente 1,6 bilhes de unidades vendidas entre celulares e smartphones

    [Gartner 2011].

    A ascenso de tecnologias como as plataformas Android e iOS, vem mudando o

    cenrio de dispositivos e tecnologias utilizadas para aplicaes mveis. Isso vem

    ocorrendo, pois juntamente com o obsoleto e descontinuado, porm ainda dominante,

    sistema operacional SymbianOS, essas novas tecnologias j esto presentes na maioria

    dos dispositivos mveis [StatCounter 2012].

    Outro dado relevante que em se tratando apenas de smartphones, o Android j

    o sistema mvel mais utilizado no mundo [InfoGraphic Labs 2012]. Dentre os

    aparelhos mais vendidos, os sistemas operacionais mais utilizados so: Symbian; iOS;

    Android; e BlackBarry (figura 8.1).

    Figura 8.1. Sistemas operacionais mais utilizados em dispositivos mveis no

    primeiro trimestre de 2012 [StatCounter 2012].

    Dentre os 4 lderes de mercado de sistemas operacionais mveis apresentados na

    figura 8.1, apenas um (iOS) no tem suporte a Java. A vantagem da utilizao do Java

    se d por uma srie de fatores, dentre os quais se destacam: portabilidade, por suportar

    uma variedade de dispositivos com diferentes nveis de recursos; flexibilidade, por

  • 223

    oferecer funcionalidades especficas dos diversos dispositivos; uniformidade, para

    manter uma arquitetura comum; alm de ser orientada a objetos, que permite cdigo

    pouco acoplado e altamente coeso.

    As principais caractersticas do Android so:

    Application framework: proporciona a reutilizao e substituio de componentes;

    Dalvik virtual machine: otimizada para dispositivos mveis;

    Browser Integrado: baseado no webkit engine;

    Grficos Otimizados: (acelerao de hardware opcional);

    SQLite: um poderoso e leve engine de banco de dados relacional disponvel para todas as aplicaes

    Suporte multimdia para udio, vdeo e formatos de imagem (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF);

    Telefonia GSM (dependente de hardware);

    Bluetooth, EDGE, 3G, e Wi-Fi (dependente de hardware);

    Cmera, GPS, compasso, e acelermetro (dependente de hardware);

    Rico ambiente de desenvolvimento, incluindo um emulador de dispositivo, ferramentas de depurao, memria, performance e um plugin para o Eclipse

    (ADT).

    Ademais, outros dados relevantes sobre o Android so que ele possui mais de

    200 milhes de dispositivos ativados, com uma mdia de 550 mil ativaes dirias; est

    presente em 137 pases e regies; e, conforme mostra grfico apresentado na figura 8.2,

    apenas no terceiro trimestre de 2011, os usurios baixaram 2,4 bilhes de aplicaes

    para os seus dispositivos mveis com Android [Google 2011].

  • 224

    Figura 8.2. Grfico de download de aplicativos para Android at o terceiro

    trimestre de 2011 [Google 2011].

    Estes dados mostram o potencial do mercado de aplicaes mveis, bem como

    os benefcios que se pode ter ao dominar conceitos de programao para dispositivos

    mveis com Android.

    Diante deste cenrio, o curso de Desenvolvimento de Aplicativos para Android

    visa capacitar, qualificar e potencializar mo-de-obra para o mercado regional no

    desenvolvimento de aplicaes para essa plataforma. O contedo programtico

    oferecido pelo curso est estruturado da seguinte forma:

    8.2.1 Introduo ao Desenvolvimento de Aplicaes Mveis

    Ultimamente diversas plataformas para desenvolvimento vem surgindo com foco em

    sistemas para celulares e smartphones. Dentre estas plataformas se destacam:

    SymbianOS; Cocoa (framework do iPhone); BlackBarry; Android.

    O Symbian foi o primeiro sistema operacional (SO) para celulares, criado pela

    Psion para a srie Palm [Nokia 2010]. A Nokia iniciou a utilizao da plataforma

    Symbiam 60 em seus smartphones em 2002. O Symbiam possui suporte a servio de

    mensagens multimdia (do ingls, Multimedia Messaging Service MMS), Bluetooth,

    wireless, infravermelho, dentre outros. Quanto a desempenho