SlideShare uma empresa Scribd logo

Android - Notas de aula

antonio sérgio nogueira
antonio sérgio nogueira
antonio sérgio nogueirasoftware engeneering em Home

Usando o MIT App Inventor para desenvolver aplicativos Android. O uso do Eclipse para desenvolver em Android.

Android - Notas de aula

1 de 46
Baixar para ler offline
Desenvolvendo Aplicações em Android




Esta apostila é uma coletânea de páginas da internet testadas e analisadas.




                            Prof. Antonio Sérgio Nogueira
  Veja em: http://www.thecodebakers.org/p/licao-1-desenvolvimento-para-android.html
 http://www.tecmundo.com.br/google/11458-google-app-inventor-o-criador-de-apps-para-
                     android-para-quem-nao-sabe-programar.htm
                             http://www.appinventor.org
Sumário

1. Plataforma Android.............................................................3

2. Google App Inventor.........................................................................7

3. Ambiente de desenvolvimento Android........................................36
1. Plataforma Android

       A plataforma Android é baseada em sistema operacional Linux, adaptada para
funcionamento em dispositivos móveis, como: smart phones, PDAs e Tablets.
 Para o desenvolvimento de aplicativos, foi disponibilizada uma máquina virtual Dalvik,
especialmente otimizada para uso em dispositivos móveis, além de um ambiente de
programação completo, com componentes visuais, de acesso a dados e redes.
       Interessante notar é que a máquina virtual Dalvik é um projeto Open Source
(http://code.google.com/p/dalvik/), e NÃO É UMA MÁQUINA VIRTUAL JAVA ® !
Isso mesmo: DALVIK NÃO É JAVA! Existe uma aplicação, chamada “dx”, que pode
converter o bytecode compilado a partir da máquina virtual Java (especificação da Oracle), no
bytecode                         da                          Dalvik.
       A Google disponibilizou um ambiente de programação baseado em Java ®, que
permite o desenvolvimento de aplicações para a plataforma Android. Ele possui emuladores
de dispositivos Android e conversores de bytecode.

             Segundo pesquisa da empresa Canalys, no quatro trimestre de 2010, quase 33
       milhões de smartphones equipados com o sistema Android foram entregues,
       comparado com 31 milhões equipados com o sistema Symbian, da Nokia.



                                 Arquitetura do ambiente Android




       A arquitetura do ambiente de desenvolvimento Android é dividida em camadas. Sua
aplicação roda na camada superior, por exemplo: contatos, telefone, jogos, calendário, seu
programa etc. Abaixo desta camada, vem um framework de componentes, que formam uma
API de gerenciamento e serviços para uso das aplicações.

      Abaixo da camada de framework, temos as bibliotecas de serviços, como OpenGL e
SQLite, e as bibliotecas principais do ambiente, além da própria máquina virtual Dalvik.

       Finalmente, abaixo de tudo, temos o Kernel Linux.Embora seja possível, devido a
grande diversidade de dispositivos, não é recomendado programar aplicações em C/C++. O
ambiente de programação Android fornece tudo o que você necessita para criar aplicações
sinistras! Você não precisa programar em C/C++ ou usar chamadas ao Kernel. Tudo o que
necessita para criar aplicações Android, é do SDK e de um ambiente de programação Java.

      Cada aplicação Android é executada por uma instâncla da máquina virtual Dalvik,
rodando em um processo separado dentro do sistema operacional.


Componentes

Uma aplicação Android é um conjunto de componentes, que podem ser:
    •   Activities – atividades ou telas;
    •   Services – serviços em background;
    •   Content Providers – disponibilizam dados;
    •   Broadcast Receivers – respondem a avisos gerais do sistema;
       Uma aplicação Android é orientada a eventos. Um evento é um sinal, que pode ter sido
originado pelo usuário (um toque) ou não (o timer, o bloqueio de tela etc). Logo, uma
aplicação dividida em diversos tipos de componentes (activities, services etc), que
compartilham um nome de pacote (sim, é muito importante) e de aplicação comum, por
exemplo:

br.com.thecodebakers.hpp.Hppfree

Os tipos de componentes são declarados e implementados na camada “framework”, e você os
estende para criar seus componentes específicos.


View e ViewGroups




       Uma View é um elemento de interface. Comparando com uma página HTML, seriam
os elementos de formulário, como: botões, caixa de texto, radio buttons etc. As Views podem
gerar e receber Eventos, que podem ser interceptados no código-fonte. As Views podem ser
agrupadas em ViewGroups, que fornecem o layout de arrumação na tela. Existem Views
fornecidas pelo framework, que já agregam a parte visual e algum tipo de comportamento.
São chamadas de “Widgets”.
Se a sua aplicação possuir algum tipo de interface visual, o que é o caso para a maioria
delas, então conterá algumas Telas (activities), com Layouts (ViewGroups) e Views
arrumadas nelas. É através das Views que você e o usuário se comunicam.
Activity




       Uma Activity é uma tela onde o usuário pode fazer algo. Note que o relacionamento
entre Activity e caso de uso não é 1 para 1. Um caso de uso pode envolver várias activities.

        Para criar uma Activity é necessário criar um arquivo de layout, que contém um
ViewGroup e um ou mais ViewGroups ou Views internos, todos arrumados de acordo com a
usabilidade da sua aplicação. Depois, é necessário criar a subclasse de Activity, que será
invocada quando o usuário solicitar. A parte de código é quem comanda o espetáculo, usando
a parte de layout.

Todos os eventos gerados pelas Views do Layout, e pelos controles do aparelho (botão de
“menu”, “menu de contexto” e botão “back”) poderão ser tratados no código de sua activity.

Uma activity pode iniciar outros componentes de sua aplicação, como: outras Activities,
Services etc;

Service

       http://developer.android.com/guide/topics/fundamentals/services.html

       Um componente que executa operações de longo prazo e em background;
Podemos iniciar um service em outro componente. Ele continuará a executar mesmo que o
usuário mude de aplicação. Outros componentes podem se conectar com o nosso service.
Exemplos: I/O, serviços de rede, de GPS, de alerta etc.
       Imagine uma aplicação de vendas. Os vendedores recebem atualizações de Clientes e
as acessam através da sua aplicação, o download automático de atualizações poderia ser feito
por um Service de sua aplicação. Um service, uma instância de: android.app.Service, fica
rodando em Background e pode executar tarefas longas, repetitivas ou a intervalos
determinados. E também pode ser acessado por outras aplicações. Um Media Player, por
exemplo, utiliza um Service, que fica tocando a música mesmo que a interface do media
player seja fechada. Sua aplicação pode criar seus próprios Services ou usar Services
fornecidos                                  por                                outros.



Content Provider


       http://developer.android.com/guide/topics/providers/content-providers.html

       Amazenam e recuperam dados, disponibilizando-os para outras aplicações. Exemplos:
Contacts, Agenda etc. Você também pode criar Content Providers para outras aplicações;
       O Android vem com vários Content Providers, como por exemplo as informações de
contato. Você pode obter a lista de contatos do usuário (desde que autorizado por ele),
acrescentar, remover etc. Você não precisa criar um Content Provider para lidar com os dados
de sua aplicação, mas, se quiser compartilhá-los, então terá que pensar nisto. Como as
aplicações Android são muito relacionadas com “MashUps”(aplicação que usa conteúdo de
um outro site- ex: inserir mapas na sua aplicação), é bom pensar em compartilhar os dados de
suas aplicações, tornando-as mais populares.



Broadcast Receiver


       http://developer.android.com/reference/android/content/BroadcastReceiver.html

        Classe que recebe alertas gerais do sistema. Podem ser gerados pelas activities ou não.
Exemplo: SCREEN_OFF – gerado pelo sistema quando a tela é bloqueada. Você pode tomar
atitudes de acordo com o tipo de alerta recebido.
        Um Broadcast Receiver (derivado de: android.content.BroadcastReceiver) segue o
padrão GoF “Observer”. Ele se registra e fica observando se determinado evento geral
acontece. É diferente da classe de uma Activity, que somente observa eventos gerados pelas
suas Views. Este tipo de componente pode receber eventos gerados pelo código de sua
aplicação, de outras aplicações ou mesmo do sistema Android. Quando a tela é desligada, por
exemplo, é possível tomar algumas atitudes.
Anúncio

Recomendados

Mais conteúdo relacionado

Mais procurados

Tutorial de como Instalar o App Inventor
Tutorial de como Instalar o App InventorTutorial de como Instalar o App Inventor
Tutorial de como Instalar o App InventorMichel de Souza
 
Appinventor - Faça simples apps android
Appinventor - Faça simples apps androidAppinventor - Faça simples apps android
Appinventor - Faça simples apps androidPedro Cardoso
 
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneEntenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneHenrique Perticarati
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - BásicoHugoDalevedove
 
Tutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para AndroidTutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para AndroidSidney Roberto
 
Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para AndroidClaudio Pereira
 
Apostila passo a passo como programar em android edição03
Apostila passo a passo como programar em android edição03Apostila passo a passo como programar em android edição03
Apostila passo a passo como programar em android edição03Horacio Diamante Mondlane
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidJosé Alexandre Macedo
 
Programando Android - Aula 1
Programando Android - Aula 1Programando Android - Aula 1
Programando Android - Aula 1Kalil Maciel
 
Desenvolvendo Para I Phone Em Linux
Desenvolvendo Para I Phone Em LinuxDesenvolvendo Para I Phone Em Linux
Desenvolvendo Para I Phone Em LinuxErisvaldo Junior
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4Jose Berardo
 
Introdução à programação para Android
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para AndroidJorge Cardoso
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOSDevmedia
 

Mais procurados (19)

Tutorial de como Instalar o App Inventor
Tutorial de como Instalar o App InventorTutorial de como Instalar o App Inventor
Tutorial de como Instalar o App Inventor
 
Minicurso de App Inventor
Minicurso de App InventorMinicurso de App Inventor
Minicurso de App Inventor
 
Appinventor - Faça simples apps android
Appinventor - Faça simples apps androidAppinventor - Faça simples apps android
Appinventor - Faça simples apps android
 
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhoneEntenda porque seu aplicativo de Android não deve ser igual ao de iPhone
Entenda porque seu aplicativo de Android não deve ser igual ao de iPhone
 
Programação Android - Básico
Programação Android - BásicoProgramação Android - Básico
Programação Android - Básico
 
Android Aula 2
Android Aula 2Android Aula 2
Android Aula 2
 
Android Aprendiz
Android AprendizAndroid Aprendiz
Android Aprendiz
 
Tutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para AndroidTutorial - Como criar sua primeira app para Android
Tutorial - Como criar sua primeira app para Android
 
Desenvolvendo para Android
Desenvolvendo para AndroidDesenvolvendo para Android
Desenvolvendo para Android
 
Apostila passo a passo como programar em android edição03
Apostila passo a passo como programar em android edição03Apostila passo a passo como programar em android edição03
Apostila passo a passo como programar em android edição03
 
Introdução ao Desenvolvimento Android
Introdução ao Desenvolvimento AndroidIntrodução ao Desenvolvimento Android
Introdução ao Desenvolvimento Android
 
Android Aula 3
Android Aula 3Android Aula 3
Android Aula 3
 
Programando Android - Aula 1
Programando Android - Aula 1Programando Android - Aula 1
Programando Android - Aula 1
 
Desenvolvendo Para I Phone Em Linux
Desenvolvendo Para I Phone Em LinuxDesenvolvendo Para I Phone Em Linux
Desenvolvendo Para I Phone Em Linux
 
Curso de Android Aula 4
Curso de Android Aula 4Curso de Android Aula 4
Curso de Android Aula 4
 
Introdução à programação para Android
Introdução à programação para AndroidIntrodução à programação para Android
Introdução à programação para Android
 
Android Aula 4
Android Aula 4Android Aula 4
Android Aula 4
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOS
 
Empreendedori$mo com Android
Empreendedori$mo com AndroidEmpreendedori$mo com Android
Empreendedori$mo com Android
 

Destaque

AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneAppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneSérgio Souza Costa
 
Capítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telasCapítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telasMarcio Palheta
 
Introdução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo SistemáticoIntrodução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo SistemáticoSylvio Silveira Santos
 
Trilhas Sonoras & Vídeo Game
Trilhas Sonoras & Vídeo GameTrilhas Sonoras & Vídeo Game
Trilhas Sonoras & Vídeo GameFábio Flatschart
 
Aula 01 criação de jogos
Aula 01 criação de jogosAula 01 criação de jogos
Aula 01 criação de jogosRicardo neves
 
Projeto viagem a fernando de noronha entregar dia 14-04-13
Projeto   viagem a fernando de noronha entregar dia 14-04-13Projeto   viagem a fernando de noronha entregar dia 14-04-13
Projeto viagem a fernando de noronha entregar dia 14-04-13Keila Feltran
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3Jose Berardo
 
Capítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundCapítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundMarcio Palheta
 

Destaque (13)

AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphoneAppInventor - Blocos condicionais e explorando alguns recursos do smartphone
AppInventor - Blocos condicionais e explorando alguns recursos do smartphone
 
Capítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telasCapítulo 03 - Formulários, menus e navegação entre telas
Capítulo 03 - Formulários, menus e navegação entre telas
 
GSOIII Aula 8 - ANDROID - CRIANDO UMA CALCULADORA
GSOIII Aula 8 - ANDROID - CRIANDO UMA CALCULADORAGSOIII Aula 8 - ANDROID - CRIANDO UMA CALCULADORA
GSOIII Aula 8 - ANDROID - CRIANDO UMA CALCULADORA
 
Introdução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo SistemáticoIntrodução ao Pensamento Inventivo Sistemático
Introdução ao Pensamento Inventivo Sistemático
 
Trilhas Sonoras & Vídeo Game
Trilhas Sonoras & Vídeo GameTrilhas Sonoras & Vídeo Game
Trilhas Sonoras & Vídeo Game
 
App inventor
App inventorApp inventor
App inventor
 
App inventor - aula 03
App inventor  - aula 03App inventor  - aula 03
App inventor - aula 03
 
Aula 01 criação de jogos
Aula 01 criação de jogosAula 01 criação de jogos
Aula 01 criação de jogos
 
Projeto viagem a fernando de noronha entregar dia 14-04-13
Projeto   viagem a fernando de noronha entregar dia 14-04-13Projeto   viagem a fernando de noronha entregar dia 14-04-13
Projeto viagem a fernando de noronha entregar dia 14-04-13
 
Curso de Android - aula 3
Curso de Android - aula 3Curso de Android - aula 3
Curso de Android - aula 3
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Capítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundCapítulo 09 - Serviços em Background
Capítulo 09 - Serviços em Background
 
Apostila Redes
Apostila RedesApostila Redes
Apostila Redes
 

Semelhante a Android - Notas de aula

Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Androidjgbirk
 
Android Palestra
Android PalestraAndroid Palestra
Android PalestraRenato
 
Aula01 - introdução, Activity
Aula01 - introdução,  ActivityAula01 - introdução,  Activity
Aula01 - introdução, ActivityArthur Emanuel
 
Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Cesar Luis Teixeira
 
Introdução ao android
Introdução ao androidIntrodução ao android
Introdução ao androidPaulo Remoli
 
Minicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CEMinicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CERonildo Oliveira
 
Aprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma práticaAprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma práticaJosué Rockefeller
 
Aprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma práticaAprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma práticaJosué Rockefeller
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma AndroidÉdipo Souza
 
Android Core Aula 6 - Desenvolvimento de aplicações Android
Android Core Aula 6 -  Desenvolvimento de aplicações AndroidAndroid Core Aula 6 -  Desenvolvimento de aplicações Android
Android Core Aula 6 - Desenvolvimento de aplicações AndroidFelipe Silveira
 
Minicurso de Android
Minicurso de AndroidMinicurso de Android
Minicurso de AndroidEdgar Eler
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012guisester
 

Semelhante a Android - Notas de aula (20)

Desenvolvendo Soluções com Android
Desenvolvendo Soluções com AndroidDesenvolvendo Soluções com Android
Desenvolvendo Soluções com Android
 
Android Palestra
Android PalestraAndroid Palestra
Android Palestra
 
Android - Conceito e Arquitetura
Android - Conceito e ArquiteturaAndroid - Conceito e Arquitetura
Android - Conceito e Arquitetura
 
Aula01 - introdução, Activity
Aula01 - introdução,  ActivityAula01 - introdução,  Activity
Aula01 - introdução, Activity
 
Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02Appinventor 120429141244-phpapp02
Appinventor 120429141244-phpapp02
 
Android
AndroidAndroid
Android
 
Introdução ao android
Introdução ao androidIntrodução ao android
Introdução ao android
 
Android
AndroidAndroid
Android
 
Programe seu androide
Programe seu androidePrograme seu androide
Programe seu androide
 
Programe seu androide
Programe seu androidePrograme seu androide
Programe seu androide
 
Programe seu androide
Programe seu androidePrograme seu androide
Programe seu androide
 
3
33
3
 
Minicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CEMinicurso de Desenvolvimento Android - Iguatu - CE
Minicurso de Desenvolvimento Android - Iguatu - CE
 
Aprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma práticaAprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma prática
 
Aprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma práticaAprenda a usar os recursos “câmera” do android, criando um app de forma prática
Aprenda a usar os recursos “câmera” do android, criando um app de forma prática
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma Android
 
Android Core Aula 6 - Desenvolvimento de aplicações Android
Android Core Aula 6 -  Desenvolvimento de aplicações AndroidAndroid Core Aula 6 -  Desenvolvimento de aplicações Android
Android Core Aula 6 - Desenvolvimento de aplicações Android
 
Minicurso de Android
Minicurso de AndroidMinicurso de Android
Minicurso de Android
 
Introdução intel XDK
Introdução intel XDKIntrodução intel XDK
Introdução intel XDK
 
Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012Introdução à programação em Android Senac 15/05/2012
Introdução à programação em Android Senac 15/05/2012
 

Mais de antonio sérgio nogueira

Montagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem ganchoMontagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem ganchoantonio sérgio nogueira
 
Montagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem ganchoMontagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem ganchoantonio sérgio nogueira
 
Montagem capota Saveiro cross coretissima fls 02
Montagem capota Saveiro cross coretissima fls 02Montagem capota Saveiro cross coretissima fls 02
Montagem capota Saveiro cross coretissima fls 02antonio sérgio nogueira
 
montagem capota Strada simp estend-dupla novo 2014
montagem capota Strada simp estend-dupla novo 2014montagem capota Strada simp estend-dupla novo 2014
montagem capota Strada simp estend-dupla novo 2014antonio sérgio nogueira
 
Montagem Capota Strada simples e est.perfil novo 2014
Montagem Capota Strada simples e est.perfil novo 2014Montagem Capota Strada simples e est.perfil novo 2014
Montagem Capota Strada simples e est.perfil novo 2014antonio sérgio nogueira
 
Montagem Capota Altas grande fechada -detalhe
Montagem Capota Altas grande fechada -detalheMontagem Capota Altas grande fechada -detalhe
Montagem Capota Altas grande fechada -detalheantonio sérgio nogueira
 

Mais de antonio sérgio nogueira (20)

Montagem capota Montana 2008
Montagem capota Montana 2008Montagem capota Montana 2008
Montagem capota Montana 2008
 
Montagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem ganchoMontagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem gancho
 
Montagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem ganchoMontagem capota Saveiro 2010 correta sem gancho
Montagem capota Saveiro 2010 correta sem gancho
 
MOntagem capota Saveiro cross folha o1
MOntagem capota Saveiro cross folha o1MOntagem capota Saveiro cross folha o1
MOntagem capota Saveiro cross folha o1
 
Montagem capota Saveiro cross coretissima fls 02
Montagem capota Saveiro cross coretissima fls 02Montagem capota Saveiro cross coretissima fls 02
Montagem capota Saveiro cross coretissima fls 02
 
Montagem capota Saveiro 1997
Montagem capota Saveiro 1997 Montagem capota Saveiro 1997
Montagem capota Saveiro 1997
 
montagem capota Strada simp estend-dupla novo 2014
montagem capota Strada simp estend-dupla novo 2014montagem capota Strada simp estend-dupla novo 2014
montagem capota Strada simp estend-dupla novo 2014
 
Montagem Capota Strada simples e est.perfil novo 2014
Montagem Capota Strada simples e est.perfil novo 2014Montagem Capota Strada simples e est.perfil novo 2014
Montagem Capota Strada simples e est.perfil novo 2014
 
Montagem capota Mitsubshi antiga
Montagem capota Mitsubshi antigaMontagem capota Mitsubshi antiga
Montagem capota Mitsubshi antiga
 
Montagem capota de Jeep
Montagem capota de Jeep Montagem capota de Jeep
Montagem capota de Jeep
 
Montagem Capota Hoggar peugeot
Montagem Capota Hoggar peugeot Montagem Capota Hoggar peugeot
Montagem Capota Hoggar peugeot
 
Montagem Capota Hilux ate 2001
Montagem Capota Hilux ate 2001Montagem Capota Hilux ate 2001
Montagem Capota Hilux ate 2001
 
Montagem capota S10
Montagem capota S10Montagem capota S10
Montagem capota S10
 
Montagem capota Toro
Montagem capota ToroMontagem capota Toro
Montagem capota Toro
 
Montagem Capota Fiat fiorino
Montagem Capota Fiat fiorino Montagem Capota Fiat fiorino
Montagem Capota Fiat fiorino
 
Montagem capota F 250 e f-1000
Montagem capota F 250 e f-1000Montagem capota F 250 e f-1000
Montagem capota F 250 e f-1000
 
Montagem Capota Diversos montagem 2019
Montagem Capota Diversos montagem 2019Montagem Capota Diversos montagem 2019
Montagem Capota Diversos montagem 2019
 
Montagem Capota Courier
Montagem Capota CourierMontagem Capota Courier
Montagem Capota Courier
 
Montagem Amarok extreme 2018
Montagem Amarok extreme 2018Montagem Amarok extreme 2018
Montagem Amarok extreme 2018
 
Montagem Capota Altas grande fechada -detalhe
Montagem Capota Altas grande fechada -detalheMontagem Capota Altas grande fechada -detalhe
Montagem Capota Altas grande fechada -detalhe
 

Último

PROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docx
PROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docxPROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docx
PROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docxssuser86fd77
 
Apresentacao_Geral_Plataformas_200604.pdf
Apresentacao_Geral_Plataformas_200604.pdfApresentacao_Geral_Plataformas_200604.pdf
Apresentacao_Geral_Plataformas_200604.pdfAndreiaSilva852193
 
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdfPLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdfkeiciany
 
CURRICULO ed integral.pdf
CURRICULO ed integral.pdfCURRICULO ed integral.pdf
CURRICULO ed integral.pdfdaniele690933
 
2. Como o entrevistado descreve a gestão e execução dos principais processos ...
2. Como o entrevistado descreve a gestão e execução dos principais processos ...2. Como o entrevistado descreve a gestão e execução dos principais processos ...
2. Como o entrevistado descreve a gestão e execução dos principais processos ...azulassessoriaacadem3
 
Acróstico - Maria da Penha Lei nº 11.340, de 7 de agosto de 2006
Acróstico - Maria da Penha    Lei nº 11.340, de 7 de agosto de 2006Acróstico - Maria da Penha    Lei nº 11.340, de 7 de agosto de 2006
Acróstico - Maria da Penha Lei nº 11.340, de 7 de agosto de 2006Mary Alvarenga
 
Domínio da Linguagem Oral Classificação Sílaba Inicial
Domínio da Linguagem  Oral Classificação Sílaba InicialDomínio da Linguagem  Oral Classificação Sílaba Inicial
Domínio da Linguagem Oral Classificação Sílaba InicialTeresaCosta92
 
PROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADO
PROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADOPROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADO
PROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADOColaborar Educacional
 
LUSSOCARS TRABAJO PARA LA CLASE QUE TENGO
LUSSOCARS TRABAJO PARA LA CLASE QUE TENGOLUSSOCARS TRABAJO PARA LA CLASE QUE TENGO
LUSSOCARS TRABAJO PARA LA CLASE QUE TENGOxogilo3990
 
2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...
2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...
2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...pj989014
 
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdfPLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdfkeiciany
 
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdfPLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdfkeiciany
 
1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf
1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf
1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdfkelvindasilvadiasw
 
1) Cite os componentes que devem fazer parte de uma sessão de treinamento.
1) Cite os componentes que devem fazer parte de uma sessão de treinamento.1) Cite os componentes que devem fazer parte de uma sessão de treinamento.
1) Cite os componentes que devem fazer parte de uma sessão de treinamento.azulassessoriaacadem3
 
Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...
Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...
Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...AaAssessoriadll
 
1. Considerando todas as informações que você obteve, descritas acima, calcul...
1. Considerando todas as informações que você obteve, descritas acima, calcul...1. Considerando todas as informações que você obteve, descritas acima, calcul...
1. Considerando todas as informações que você obteve, descritas acima, calcul...azulassessoriaacadem3
 
5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...
5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...
5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...azulassessoriaacadem3
 
LINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdf
LINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdfLINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdf
LINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdfAnaRitaFreitas7
 
Slides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptx
Slides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptxSlides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptx
Slides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptxLuizHenriquedeAlmeid6
 

Último (20)

PROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docx
PROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docxPROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docx
PROJETO INTERDISCIPLINAR 6º AO 9º ANOS - 2.docx
 
Apresentacao_Geral_Plataformas_200604.pdf
Apresentacao_Geral_Plataformas_200604.pdfApresentacao_Geral_Plataformas_200604.pdf
Apresentacao_Geral_Plataformas_200604.pdf
 
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdfPLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 8º ANO.pdf
 
CURRICULO ed integral.pdf
CURRICULO ed integral.pdfCURRICULO ed integral.pdf
CURRICULO ed integral.pdf
 
2. Como o entrevistado descreve a gestão e execução dos principais processos ...
2. Como o entrevistado descreve a gestão e execução dos principais processos ...2. Como o entrevistado descreve a gestão e execução dos principais processos ...
2. Como o entrevistado descreve a gestão e execução dos principais processos ...
 
Acróstico - Maria da Penha Lei nº 11.340, de 7 de agosto de 2006
Acróstico - Maria da Penha    Lei nº 11.340, de 7 de agosto de 2006Acróstico - Maria da Penha    Lei nº 11.340, de 7 de agosto de 2006
Acróstico - Maria da Penha Lei nº 11.340, de 7 de agosto de 2006
 
Domínio da Linguagem Oral Classificação Sílaba Inicial
Domínio da Linguagem  Oral Classificação Sílaba InicialDomínio da Linguagem  Oral Classificação Sílaba Inicial
Domínio da Linguagem Oral Classificação Sílaba Inicial
 
PROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADO
PROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADOPROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADO
PROJETO DE EXTENSÃO I - SERVIÇO SOCIAL/SERVIÇO SOCIAL - BACHARELADO
 
LUSSOCARS TRABAJO PARA LA CLASE QUE TENGO
LUSSOCARS TRABAJO PARA LA CLASE QUE TENGOLUSSOCARS TRABAJO PARA LA CLASE QUE TENGO
LUSSOCARS TRABAJO PARA LA CLASE QUE TENGO
 
2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...
2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...
2024 Tec Subsequente em Adm Instituto Federal de Educação, Ciência e Tecnolog...
 
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdfPLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 7º ANO.pdf
 
Slides Lição 8, Betel, Família, uma Obra em permanente construção, 1Tr24.pptx
Slides Lição 8, Betel, Família, uma Obra em permanente construção, 1Tr24.pptxSlides Lição 8, Betel, Família, uma Obra em permanente construção, 1Tr24.pptx
Slides Lição 8, Betel, Família, uma Obra em permanente construção, 1Tr24.pptx
 
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdfPLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdf
PLANO DE CURSO 2O24- ENSINO RELIGIOSO 9º ANO.pdf
 
1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf
1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf
1° ENSINO MÉDIO PLANO ANUAL ARTES 2024.pdf
 
1) Cite os componentes que devem fazer parte de uma sessão de treinamento.
1) Cite os componentes que devem fazer parte de uma sessão de treinamento.1) Cite os componentes que devem fazer parte de uma sessão de treinamento.
1) Cite os componentes que devem fazer parte de uma sessão de treinamento.
 
Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...
Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...
Quando iniciamos os estudos sobre a história da Educação de Jovens e Adultos,...
 
1. Considerando todas as informações que você obteve, descritas acima, calcul...
1. Considerando todas as informações que você obteve, descritas acima, calcul...1. Considerando todas as informações que você obteve, descritas acima, calcul...
1. Considerando todas as informações que você obteve, descritas acima, calcul...
 
5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...
5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...
5. Na sua opinião, em que medida os princípios da ORT de Taylor ainda são rel...
 
LINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdf
LINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdfLINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdf
LINKS 25 DE ABRIL TRABALHO DAC HISTORIA.pdf
 
Slides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptx
Slides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptxSlides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptx
Slides Lição 9, CPAD, O Batismo – A Primeira Ordenança da Igreja, 1Tr24.pptx
 

Android - Notas de aula

  • 1. Desenvolvendo Aplicações em Android Esta apostila é uma coletânea de páginas da internet testadas e analisadas. Prof. Antonio Sérgio Nogueira Veja em: http://www.thecodebakers.org/p/licao-1-desenvolvimento-para-android.html http://www.tecmundo.com.br/google/11458-google-app-inventor-o-criador-de-apps-para- android-para-quem-nao-sabe-programar.htm http://www.appinventor.org
  • 2. Sumário 1. Plataforma Android.............................................................3 2. Google App Inventor.........................................................................7 3. Ambiente de desenvolvimento Android........................................36
  • 3. 1. Plataforma Android A plataforma Android é baseada em sistema operacional Linux, adaptada para funcionamento em dispositivos móveis, como: smart phones, PDAs e Tablets. Para o desenvolvimento de aplicativos, foi disponibilizada uma máquina virtual Dalvik, especialmente otimizada para uso em dispositivos móveis, além de um ambiente de programação completo, com componentes visuais, de acesso a dados e redes. Interessante notar é que a máquina virtual Dalvik é um projeto Open Source (http://code.google.com/p/dalvik/), e NÃO É UMA MÁQUINA VIRTUAL JAVA ® ! Isso mesmo: DALVIK NÃO É JAVA! Existe uma aplicação, chamada “dx”, que pode converter o bytecode compilado a partir da máquina virtual Java (especificação da Oracle), no bytecode da Dalvik. A Google disponibilizou um ambiente de programação baseado em Java ®, que permite o desenvolvimento de aplicações para a plataforma Android. Ele possui emuladores de dispositivos Android e conversores de bytecode. Segundo pesquisa da empresa Canalys, no quatro trimestre de 2010, quase 33 milhões de smartphones equipados com o sistema Android foram entregues, comparado com 31 milhões equipados com o sistema Symbian, da Nokia. Arquitetura do ambiente Android A arquitetura do ambiente de desenvolvimento Android é dividida em camadas. Sua aplicação roda na camada superior, por exemplo: contatos, telefone, jogos, calendário, seu programa etc. Abaixo desta camada, vem um framework de componentes, que formam uma API de gerenciamento e serviços para uso das aplicações. Abaixo da camada de framework, temos as bibliotecas de serviços, como OpenGL e SQLite, e as bibliotecas principais do ambiente, além da própria máquina virtual Dalvik. Finalmente, abaixo de tudo, temos o Kernel Linux.Embora seja possível, devido a
  • 4. grande diversidade de dispositivos, não é recomendado programar aplicações em C/C++. O ambiente de programação Android fornece tudo o que você necessita para criar aplicações sinistras! Você não precisa programar em C/C++ ou usar chamadas ao Kernel. Tudo o que necessita para criar aplicações Android, é do SDK e de um ambiente de programação Java. Cada aplicação Android é executada por uma instâncla da máquina virtual Dalvik, rodando em um processo separado dentro do sistema operacional. Componentes Uma aplicação Android é um conjunto de componentes, que podem ser: • Activities – atividades ou telas; • Services – serviços em background; • Content Providers – disponibilizam dados; • Broadcast Receivers – respondem a avisos gerais do sistema; Uma aplicação Android é orientada a eventos. Um evento é um sinal, que pode ter sido originado pelo usuário (um toque) ou não (o timer, o bloqueio de tela etc). Logo, uma aplicação dividida em diversos tipos de componentes (activities, services etc), que compartilham um nome de pacote (sim, é muito importante) e de aplicação comum, por exemplo: br.com.thecodebakers.hpp.Hppfree Os tipos de componentes são declarados e implementados na camada “framework”, e você os estende para criar seus componentes específicos. View e ViewGroups Uma View é um elemento de interface. Comparando com uma página HTML, seriam os elementos de formulário, como: botões, caixa de texto, radio buttons etc. As Views podem gerar e receber Eventos, que podem ser interceptados no código-fonte. As Views podem ser agrupadas em ViewGroups, que fornecem o layout de arrumação na tela. Existem Views fornecidas pelo framework, que já agregam a parte visual e algum tipo de comportamento. São chamadas de “Widgets”.
  • 5. Se a sua aplicação possuir algum tipo de interface visual, o que é o caso para a maioria delas, então conterá algumas Telas (activities), com Layouts (ViewGroups) e Views arrumadas nelas. É através das Views que você e o usuário se comunicam. Activity Uma Activity é uma tela onde o usuário pode fazer algo. Note que o relacionamento entre Activity e caso de uso não é 1 para 1. Um caso de uso pode envolver várias activities. Para criar uma Activity é necessário criar um arquivo de layout, que contém um ViewGroup e um ou mais ViewGroups ou Views internos, todos arrumados de acordo com a usabilidade da sua aplicação. Depois, é necessário criar a subclasse de Activity, que será invocada quando o usuário solicitar. A parte de código é quem comanda o espetáculo, usando a parte de layout. Todos os eventos gerados pelas Views do Layout, e pelos controles do aparelho (botão de “menu”, “menu de contexto” e botão “back”) poderão ser tratados no código de sua activity. Uma activity pode iniciar outros componentes de sua aplicação, como: outras Activities, Services etc; Service http://developer.android.com/guide/topics/fundamentals/services.html Um componente que executa operações de longo prazo e em background; Podemos iniciar um service em outro componente. Ele continuará a executar mesmo que o usuário mude de aplicação. Outros componentes podem se conectar com o nosso service. Exemplos: I/O, serviços de rede, de GPS, de alerta etc. Imagine uma aplicação de vendas. Os vendedores recebem atualizações de Clientes e as acessam através da sua aplicação, o download automático de atualizações poderia ser feito por um Service de sua aplicação. Um service, uma instância de: android.app.Service, fica rodando em Background e pode executar tarefas longas, repetitivas ou a intervalos
  • 6. determinados. E também pode ser acessado por outras aplicações. Um Media Player, por exemplo, utiliza um Service, que fica tocando a música mesmo que a interface do media player seja fechada. Sua aplicação pode criar seus próprios Services ou usar Services fornecidos por outros. Content Provider http://developer.android.com/guide/topics/providers/content-providers.html Amazenam e recuperam dados, disponibilizando-os para outras aplicações. Exemplos: Contacts, Agenda etc. Você também pode criar Content Providers para outras aplicações; O Android vem com vários Content Providers, como por exemplo as informações de contato. Você pode obter a lista de contatos do usuário (desde que autorizado por ele), acrescentar, remover etc. Você não precisa criar um Content Provider para lidar com os dados de sua aplicação, mas, se quiser compartilhá-los, então terá que pensar nisto. Como as aplicações Android são muito relacionadas com “MashUps”(aplicação que usa conteúdo de um outro site- ex: inserir mapas na sua aplicação), é bom pensar em compartilhar os dados de suas aplicações, tornando-as mais populares. Broadcast Receiver http://developer.android.com/reference/android/content/BroadcastReceiver.html Classe que recebe alertas gerais do sistema. Podem ser gerados pelas activities ou não. Exemplo: SCREEN_OFF – gerado pelo sistema quando a tela é bloqueada. Você pode tomar atitudes de acordo com o tipo de alerta recebido. Um Broadcast Receiver (derivado de: android.content.BroadcastReceiver) segue o padrão GoF “Observer”. Ele se registra e fica observando se determinado evento geral acontece. É diferente da classe de uma Activity, que somente observa eventos gerados pelas suas Views. Este tipo de componente pode receber eventos gerados pelo código de sua aplicação, de outras aplicações ou mesmo do sistema Android. Quando a tela é desligada, por exemplo, é possível tomar algumas atitudes.
  • 7. 2. Google App Inventor: o criador de apps para Android para quem não sabe programar Criado originalmente no Google Labs, mas atualmente pertence ao MIT Labs, do Massachussets Institute of Technology, USA, o código do App Inventor é aberto, e qualquer pessoa pode criar um ambiente de desenvolvimento dele derivado. Ambientes de desenvolvimento como o App Inventor constituem-se em uma modalidade recente para desenvolvimento de aplicativos voltados para sistemas móveis. Como todo usuário de smartphone sonha em ter um aplicativo que faça exatamente o que ele quer, o App Inventor tem esta proposta. Uma interface visual para permitir que qualquer um possa programar seus próprios aplicativos, mesmo sem saber construir linhas de código e compilar programas de qualquer forma. A solução é chamada App Inventor, e está disponível sob requisição para participação na fase Beta da ferramenta. http://www.tecmundo.com.br/google/11458-google-app-inventor-o-criador-de-apps-para- android-para-quem-nao-sabe-programar.htm Vídeo em: http://www.youtube.com/watch?feature=player_embedded&v=nC_x9iOby0g O conjunto é composto por duas seções: o App Inventor Designer e o App Inventor Blocks Editor, cada uma com uma função específica. App Inventor Setup Vamos descrever como fazer o setup de seu computador e do seu telefone para construir aplicativos com o App Inventor. Vídeo em inglês: http://www.youtube.com/watch?feature=player_embedded&v=PybIN-fDL70 Login Abra seu navegador e acesse beta.appinventor.mit.edu , você deve ter uma conta no gmail para fazer o login. Pronto você já está pronto para começar. Download the App Inventor software App Inventor é uma ferramenta tipo cloud mas requere algum download no seu computador. • In App Inventor, Click no item Learn , então no Setup link, e faça a configuração do seu computador. • Se você não tiver java, você deve instalá-lo e então siga as instruções só Setup para o tipo de computador que você tem e então você está pronto. Crie um novo project, abrindo do blocks editor
  • 8. • Volte no App Inventor (beta.appinventor.mit.edu in your browser) escolha o botão New na esquerda e crie o new project. Entre com o nome do projeto. Ele abrirá o Component Designer. Aqui você verá como fica sua aplicação • No Component Designer, click em Open Blocks Editor. Um caixa de diálogo perfuntará se você quer abrir ou salvar um arquivo chamado appinventorForAndroidCodeblocks.jnlp. Se a opção for aberto com o Java Web Start, perfeito, o processo toma alguns minutos para download e você verá ele aparecer. • Se não houver a pergunta de abrir Java Web Start, você precisa provavelmente configurar seu sistema java, volte em Learn | Setup screen. • O blocks editor é o local onde você programará o comportamento de sua aplicação, isto acontecerá quando você clicar um botão. • Abrindo o emulador Uma vez que o blocks editor foi aberto com sucesso, click em New Emulator. Click OK na caixa de diálogo que aparece e em minutos aparece a tela do emulador (uma tela de telefone). Agora você está pronto para começar A maioria das pessoas começam com a aplicação Hello Purr, uma aplicação que ao tocar no telefone (ou no emulador) ocasiona o miado de um gato. Veja aplicação em: http://www.appinventor.org/hellopurr O App Inventor Designer Tela inicial dos projetos do Google App Inventor. (Fonte da imagem: Reprodução/Google) O Designer é a tela inicial de um projeto. É aqui que você desenha seu aplicativo, escolhendo a posição dos botões e imagens, inserindo fotos, droplists, checkboxes e outros componentes disponíveis para a construção de um programa. Ele é dividido em quatro colunas. Paleta A primeira coluna, chamada de “Palette” (Paleta),é onde ficam todos os componentes
  • 9. utilizáveis num aplicativo. Esta paleta é dividida em seções para facilitar a localização dos componentes, que vão dos básicos (botões, imagens e textos) até uma seção exclusiva para integração com ferramentas de Lego Mindstorms (uma divisão daquela brincadeira de montar pecinhas que adiciona sensores, motores e processadores aos robôs construídos). Para utilizar um desses componentes basta dar um clique sobre ele e arrastar para cima da segunda coluna, chamada “Viewer” (Visualizador). Visualizador Na coluna “Viewer, o usuário pode organizar cada um de seus objetos, montando o aplicativo como ele deve ser. Uma janela de exibição simula a tela de um smartphone com o sistema operacional Android, apresentando uma versão próxima da final ao programador, à medida que ele organiza o espaço de uso do programa. Todos os itens adicionados da “Palette” ao “Viewer” são apresentados na terceira coluna, chamada de “Components” (Componentes). Edição dos nomes dos componentes facilita a programação. (Fonte da imagem: Reprodução/Google)
  • 10. Componentes Na coluna de componentes, ficam armazenados todos os itens adicionados, sejam eles visíveis ou não na tela do programa. Dessa forma, fica muito mais simples selecionar cada objeto, pois eles estão listados de forma ordenada e acessível. Aqui também é possível re-nomear cada item. Assim, você pode chamar os componentes por nomes que façam sentido para o seu projeto. É muito mais fácil encontrar cada coisa se você mesmo criar um nome específico para ela, como “botão de som” em vez de “Button1”. É possível também inserir arquivos de mídia pela terceira coluna. Clicando no botão “Adicionar” (Add) você importa sons, fotos e vídeos do seu computador para o servidor do App Inventor, e eles ficam disponíveis para que você possa usar no projeto. Clicar sobre qualquer um dos itens da lista na coluna “Components” permite que você possa editar seus detalhes na quarta coluna, chamada de “Properties” (Propriedades). Propriedades Esta é a coluna mais importante do App Inventor Designer, já que aqui você pode definir os tamanhos e conteúdos dos textos de botões e caixas de informação, tamanho das imagens, cores de fundo e largura e altura de objetos. Essas e muitas outras configurações são aplicadas instantaneamente na tela da coluna “Viewer”, permitindo que você tenha sempre uma ótima ideia de onde e o que está mudando em seu programa. Uma vez que seu programa esteja parcialmente montado, é hora de começar a atribuir funções a cada um dos componentes que você selecionou. Para isso é preciso clicar no botão “Open Blocks Editor” (Abrir Editor de Blocos), que o levará para uma nova tela. O App Inventor Blocks Editor Para utilizar o Editor de Blocos é necessário configurar e instalar alguns aplicativos(já falamos antriormente). O primeiro é o Java (você pode testar se possui a versão necessária do Java acessando o link de testes do desenvolvedor http://www.java.com/en/download/testjava.jsp e o link de testes do App Inventor http://appinventor.mit.edu/. Depois de executados ambos os testes, é necessário instalar o aplicativo de desenvolvimento do App Inventor. Ele está disponível para Windows, Mac OS X e GNU/Linux com instruções de instalação (em inglês).
  • 11. O Editor de Blocos permite programar de forma simples. (Fonte da imagem: Reprodução/Google) Após configurar o computador, você pode começar a fazer a mágica da programação. Acessando o “Blocks Editor” você pode começar a associar ações para cada item do seu programa. Usando uma interface simples e intuitiva, a construção do aplicativo parece muito com montar um quebra-cabeça. O menu na lateral esquerda fornece duas abas de comandos: “Built-in” (Internos) e “My Blocks” (Meus Blocos). Todos os objetos que você inseriu em seu programa terão comandos de início na aba “My Blocks”, ao passo que os comandos de execução estão localizados na aba “Built-In”. A combinação de um ou mais comando de “My Blocks” e comandos “Built- In” forma uma ação completa. E para facilitar a construção das ações, os comandos são estruturados como peças de quebra-cabeças. Apenas funções compatíveis se encaixam. Por exemplo, caso você crie um botão em seu programa que deve tocar um som toda vez que for tocado, basta arrastar o comando de início (dentro do sub-menu do botão que você deseja clicar) “when NomeDoBotao.Click do” da guia “My Blocks” para o campo à direita. Após isso, na mesma guia, selecione o componente de som e arraste a opção “call.NomeDoSom.Play” para dentro do outro componente, criando uma ação completa. Quando o botão for clicado no seu programa, o som vai tocar.
  • 12. Visualização de programa em um Android virtual O App Inventor permite que você conecte seu smartphone via cabo USB e visualize seu aplicativo nele em tempo real, mas a configuração dos drivers e instalação do telefone nem sempre são tarefas fáceis. Pensando nisso, a Google implementou um sistema de máquina virtual baseado em Java que permite ao usuário criar um smartphone genérico com Android. Assim você tem uma tela de celular no seu monitor para testar seus aplicativos. Abertura da máquina virtual com Android 2.2 (Fonte da imagem: Reprodução/Google) Da mesma forma que no restante da ferramenta, as alterações feitas no “Designer” e no “Blocks Editor” são visualizadas em tempo real no smartphone virtual com Android. Essa capacidade faz com que a programação de qualquer item possa ser avaliada assim que efetuada, tornando mais simples voltar atrás em algum passo. A máquina virtual do Android funciona com a versão 2.2 (Froyo) do sistema operacional da Google. É possível inclusive fazer login com uma conta Google para testar algumas funcionalidades do programa que você está construindo. Em suma, é um emulador completo de um sistema Android. Após clicar para criar uma máquina Android virtual, aguarde a configuração completa do aplicativo. Depois disso clique, na janela do “Blocks Editor”, em “Connect to Device” e escolha a máquina virtual. Em alguns instantes seu aplicativo deve estar completamente funcional na tela do seu computador. Aplicações práticas do App Inventor É bom deixar bem claro: o Google App Inventor não é um substituto para a linguagem de programação de aplicativos para o Android. Ainda não, pelo menos, embora seja a premissa que o projeto está seguindo. Não é uma ferramenta para criar jogos e aplicativos comerciais. O principal público do App Inventor, no momento, está dentro de universidades, para que alunos e professores possam entender o básico, criando programas para fins educacionais e ajudando a desenvolver um cenário de programação que não irá precisar de conhecimento de programação para funcionar. Infelizmente não é possível criar jogos como Angry Birds ou aplicativos complexos como o
  • 13. Firefox Mobile, e as aplicações criadas estão longe de ser bonitas. Elas são, no entanto, funcionais. Um aplicativo feito no App Inventor pode servir propósitos específicos para o seu uso pessoal ou profissional. Pode preencher a lacuna em que os aplicativos de terceiros pecavam. E pode levar usuários comuns a se interessarem em começar a programar para a plataforma, elevando assim o nível de qualidade dos aplicativos que são feitos e a quantidade de softwares disponíveis para a plataforma. Ainda em fase Beta Apesar de ter sido anunciado ao público em dezembro de 2010, e já ter usuários utilizando o sistema de forma secreta seis meses antes disso, o Google App Inventor ainda está em fase Beta. Isso significa que, apesar de já estar muito bem estruturado, constantemente temos novidades, e seu uso ainda não está liberado para o público geral. A frase abaixo, retirada do aviso de Beta no site do App Inventor traduz o pensamento da Google sobre a ferramenta: “Nós estamos trabalhando duro para aparar arestas e apreciamos que você use o App Inventor enquanto ele está em fase Beta. Pode parecer um pouco clichê, mas é verdade, você usando o App Inventor hoje está nos ajudando a fazê-lo melhor para o futuro!” Com certeza é algo que ainda vai crescer muito antes de ser liberado para o grande público, mas a possibilidade de qualquer um poder criar aplicativos que resolvam seus próprios problemas e, quem sabe o problema de outras pessoas, é uma visão de futuro na qual vale a pena acreditar. Leia mais em: http://www.tecmundo.com.br/google/11458-google-app-inventor-o-criador-de- apps-para-android-para-quem-nao-sabe-programar.htm#ixzz2Ikp1Ioz7
  • 14. Tutorial criando aplicação do Miado do gato Para construir o Miadodogato você necessita de uma imagem de um gato formato png e o aúdio em formato mp3. Dê um download desses arquivos para o seu computador. http://appinventor.mit.edu/teach/sites/teach.appinventor.mit.edu/files/kitty.png http://beta.appinventor.mit.edu/learn/tutorials/hellopurr/HelloPurrAssets/meow.mp3 1.Entre no site http://beta.appinventor.mit.edu e dê um login com sua conta do gmail. 2.Selecione os componentes para fazer sua aplicação. Os App Inventor Components estão localizados no lado esquerdo em baixo do título Palette. Components são elementos básicos que você usa para fazer aplicativos APP para telefone Android E. Eles são como ingredientes de uma receita. Alguns componentes são muito simples como o Label(rótulo), que mostra apenas um texto na tela, ou um Button que inicia uma ação. Outros componentes são mais elaborados: o Canvas que permite armazenar imagens ou animações dentro deles, um Accelerometer (movimento) sensor que trabalha parecido com o controle do Wii e detecta quando você move ou balança o telefone, componentes que fazem ou enviam mensagens de texto, componentes que tocam música e vídeo, componentes que pegam informações na web etc.. Para usa um componente, você clica e arrasta ele para o visualizador que está no meio do Designer. Quando você adicionar componentes para o Viewer(1), aparecerá na lista de componentes no lado direito do Viewer. O componente 2 Canvas tem propriedades que permitem ajustar e mudar as propriedades dos componentes. Primeiro selecione os componentes na lista direita e ai você consegue modificá- los.
  • 15. Passos para selecionar componentes e configure as propriedades Nós queremos ter um botão que tem a imagem de um gato que você já baixou. Passo 1 – na paleta Basic, arraste e solte o componente no Screen1. No painel de propriedades, vá à imagem e adicione a imagem ao botão. Passo 2 – Apague o texto do botão usando backspace Você verá a imagem abaixo.
  • 16. Passo 3 - Step 3. Arraste e solte o componente Label da palete Basic, colocando ele em baixo da imagem. Ele aparecerá na lista de componentes como Label1. Mude sua propriedade TEXT no painel Properties para "Pet the Kitty" (#2). Você verá que o texto muda no Designer, mude o fontsize para 30. Mude a cor de fundo BackgroundColor (#4),você pode colocar qualquer cor que gostar , mude a cor do texto em TextColor (#5). Vide próxima figura:
  • 17. Passo 4 – Clique no palete Media e e coloque o componente sound no Viewer (#1). Este componente aparecerá na área de baixo marcada como Non-visible components. No painel Media pane, Click Add... (#2) fazendo um Upload de meow.mp3 para este projeto (#3). No painel properties, click None... Para mudar o Sound1 para meow.mp3 (#4)
  • 18. Programando com o Blocks Editor Antes de continuar construindo sua aplicação, você necessita de conectar-se ao seu dispositivo ou ao emulador, primeiro clique em Open Blocks Editor para abrir o editor de blocos. Uma mensagem aparece você digita ok para abrir com Java web e nova mensagem aparece dizendo que está abrindo com o Java, aguarde uns minutos que o APP Inventor for Blocks Editor. Clique em New emulator e ok numa tela que aparecerá após, agora aparecerá a imagem de um telefone. Deslize o cadeado verde na tela do telefone e vá a connect habilitando a opção 5554. Em alguns minutos a conexão estará completa, e a imagem aparecerá na tela, a imagem do Viewer. Imagem da conexão: Fazendo o som tocar Passo 1. Em My Blocks palete no Blocks Editor clique em Button1 aparecerá um desenho e clique e arraste Button1.Click . Estes blocos verdes são manipuladores de eventos (event handler blocks). Os blocos manipuladores de eventos especificam como os telefones devem responder a certos eventos: um botão sendo apertado, o telefone sendo chacoalhado, o usuário colocando o dedo sobre o Canvas, etc. Passo 2. Clique em Sound1 e arraste o desenho do bloco Sound1. Play block para dentro do "do", seção de dentro do bloco Button1.Click. Os blocos conectam como quebra cabeça em peças e juntos você vai ouvir o som do gato.
  • 19. Os blocos azuis e roxos são chamados de blocos de comandos (command blocks), que são colocados dentro do corpo dos manipuladores de eventos. Então quando um evento é executado, ele executa uma sequência de comandos. Agora você pode ver o command block dentro do event handler. Este bloco significa: quando o botão é apertado o comando sound é acionado e um som é executado( o comando especifica o tipo e detalhe da ação- tipo de som). Leia mais em: https://sites.google.com/site/appinventorlessons/home/understanding-blocks
  • 20. Telefone Configurando seu telefone Android Nesta seção iremos fazer você conseguir usar seu telefone android com o App Inventor. Isto envolve a checagem e acerto de algumas configurações para trabalhar corretamente, para isto conecte seu telefone ao computador através de um cabo USB. Em máquinas Windows, você pode ter que instalar alguns drives para o fone. Veja as instruções aqui: http://explore.appinventor.mit.edu/content/windows-drivers Fone compatíveis Existem centenas de diferentes fones com android. Não sabemos sobre todos eles, mas os citados aqui estão sendo usados com sucesso com o App Inventor: • Google: Nexus One, Nexus S • Motorola: Droid, Droid X, Droid Incredible • T-Mobile: G1 • HTC: Incredible, Hero, Desire Alguns modelos tem que ter o cartão SD instalado. Checando a configuração do telefone Siga estes passos: Aperte o botão Home e vá para a HOMESCREEn Aperte o botão Menu, depois Settings e então Applications Aperte Development Veja se ambos USB Debugging e Saty awake estão marcados.
  • 21. Se seu telefone tem telea de travamento, destrave-o para rodar a aplicação. Agora pegue seun cabo usb e conecte ao computador e ao fone. Duas mensagens aparecerão: • USB Connected significa que o fone tá conectado ao computador.. • USB Debugging Connected permite ao App Inventor controle o fone.. Detalhe dos telefones veja em: https://sites.google.com/site/appinventorlessons/home/phone
  • 22. Emulador Se você está usando pela primeira vez. Siga estes passos. 1. Abra the Blocks Editor, e click em no botão New emulator no topo da tela. 2. Você receberá está tela dizendo para esperar de 2 a 3 minutos. Clique em OK. 3. O emulador aparecerá com uma tela negra (①). Espera até ela ficar colorida. (②). Agora puxe o botão verde para a direita com o mouse,no emulador. (③).
  • 23. ② ③ 4. O emulador trabalha igual o telefone e tem algumas limitações como balançar. Depois de destravar o emulador, clique em "Connect the Device....." e clique no emulator. Quando o ícone de fone tornar-se verde o emulador tá conectado.
  • 24. Packaging Apps Você pode "empacotar" seu aplicativo de três maneiras diferentes: download como um arquivo apk (Android pacote de aplicativos), convertendo o arquivo em um código de barras, ou instalar o aplicativo diretamente para seu telefone.. Aqui, nós vamos discutir como empacotar seu aplicativo para o seu telefone em primeiro lugar. 1. Garanta que você abriu o Blocks Editor e seu fone está conectado(ícone verde). 2. Vá para o Designer e clique em Package for Phone. Você verá várias opções. Selecione "Download to Connected Phone" 3. O Botão ficará cinza e dirá Packaging. Levará de 3 a 5 minutos. Não desconecte o fone ou cabo durante este tempo. 4. Após completar você verá uma notificação em pop-up, dizendo que foi um sucesso-successfully downloaded. 5. Desconecte o fone do cabo USB, aperte o botão menu do fone e o ícone da app do android apacerá com os outros app que você tem. Packaging um app como um .apk file ("Downloading to this Computer" option) O arquivo Android application package (APK) é um arquivo formatado para distribuir e instalar aplicações em sistemas operacionais android. Um arquivo .apk permite você criar mais tarde um código de barra. Escolha: "Download to this Computer" no menu e ele começará automaticamente. Uma vez que o arquivo apk foi feito o download para seu computador, você deverá enviá-lo pelo seu e-mail. Quando seu amigo fizer o download do arquivo apk, ele aparecerá no fone como um ícone android. Quando você clica no ícone, o aplicativo irá abrir como qualquer aplicativo que você baixar no Android Market.
  • 25. Nota: Diferente de arquivo zip, você não pode abrí-lo para ver os blocos ou editá-lo. Criando um código de barra ("Show a Barcode" option) App Inventor cria um código de barras que pode ser verificado por quaisquer telefones Android, que é uma ótima maneira de compartilhar sua aplicação. No entanto, o código de barras criado por App Inventor é "bloqueado": o aplicativo só pode ser aberto por você ou pessoas que têm um acesso a sua conta do Google. A fim de criar um código de barras que pode ser compartilhado por qualquer pessoa sem a permissão para acessar sua conta do Google, você precisa fazer o download do aplicativo como arquivo APK para o seu computador (veja as instruções acima) e usar um software de terceiros para converter o arquivo. apk em um código de barras. Você pode encontrar a instrução em: http://www.youtube.com/watch?v=X-A0qcXA2Ro
  • 26. Entendendo Blocks Manipuladores de Eventos Programas App Inventor descrevem como o telefone deve responder a certos eventos: um botão foi pressionado, o telefone está sendo balançado, o usuário está arrastando o dedo sobre uma tela, etc. Isso é especificado por blocos de manipulação de eventos, que usam a palavra quando . Por exemplo, quando Button1.Click e quando AccelerometerSensor1.Shaking então faça. A maioria dos manipuladores de eventos são de cor verde e armazenados na parte superior de cada gaveta. Aqui está um exemplo de manipuladores de eventos. Quando ocorre um evento em um telefone, o manipulador de evento correspondente é acionado, o que significa que ele é executado. Comandos e expressões Quando um manipulador de evento é acionado, ele executa uma seqüência de comandos em seu corpo. Um comando é um bloco que especifica uma ação a ser executada no telefone (por exemplo, reprodução de sons). A maioria dos blocos de comando são, na cor roxa ou azul. Aqui estão alguns exemplos de comandos disponíveis em MiadodoGato: Alguns comandos requerem um ou mais valores de entrada (também conhecidos como parâmetros ou argumentos) para especificar completamente a sua ação. Por exemplo, chamar Sound1.Vibrate precisa saber o número de milissegundos que vai vibrar, definir necessidades Label1.BackgroundColor para conhecer a nova cor de fundo do rótulo, e definir necessidades Label1.Text para conhecer o novo texto para a etiqueta. A necessidade de valores de entrada é mostrado por soquetes na margem direita do comando. Estas tomadas podem ser preenchidos com
  • 27. expressões, blocos que indicam um valor. Blocos de expressão têm na esquerda fichas que você pode imaginar transmitir o valor para o soquete. Expressões maiores podem ser construídas a partir de outras mais simples, pela composição horizontal. Por exemplo, todas as expressões a seguir denotam o número 500: Comandos são moldados de modo que eles naturalmente compõe verticalmente uma pilha de comando, que é apenas um comando grande construído a partir de outras menores. Aqui está uma pilha com quatro comandos: Quando esta pilha de comandos é colocado no corpo de um processador de eventos (por exemplo, o processador de eventos when.Button1.Click), o comando será executado a partir do topo para a base. Se a pilha de comando acima é executada, em seguida, o telefone vai tocar primeiro o som, então vibrar, em seguida, alterar a cor da etiqueta que ser verde, e depois o rótulo irá mostrar o texto "CS117 rocks!"No entanto, a execução funciona muito rápido: você vê todas as ações acontecem ao mesmo tempo. Fluxo de Controle Quando há o acionamento de uma manipulador de eventos, você pode imaginar que ele cria um ponto de controle e a partir dai executa os comandos da pliha em seu corpo. O ponto de controle move-se a partir do topo da pilha para a parte inferior, e, quando se atinge um comando, o comando é executado - isto é, a ação de comando que é executada. Pensando sobre o controle de "fluir" através de um programa nos ajudará a entender o seu comportamento. A ordem dos comandos, ou o fluxo de controle é importante quando você faz uma aplicação. Você precisa ter certeza de que a ação deve vir primeiro.
  • 28. Arranjando componentes na tela Componentes de aplicativos estão organizados verticalmente por padrão. Na paleta Designer, criar um Screen Arrangement>HorizontalArrangement para organizar os três botões de LabelSize horizontalmente. (. VerticalArrangement e TableArrangement também pode ser usado para controlar o posicionamento) Aviso: o Visualizador de janela Designer é apenas uma aproximação de como os componentes serão mostrados no telefone. Manipulando state Component Cada componente é caracterizado por propriedades diferentes. Quais são algumas das propriedades de um componente Label? Os valores correntes destas propriedades são o estado do componente. Você pode especificar o estado inicial de um componente no painel de propriedades da janela do Designer. Programas App Inventor pode obter e definir a maioria das propriedades do componente através de blocos. Por exemplo, aqui estão os blocos para manipular o estado de Label1. Blocos getter são expressões que obter o valor atual da propriedade. Setter blocos são comandos que alteram o valor associado com a propriedade. Algumas propriedades de etiquetas não podem ser manipuladas por blocos. Quais? Como um exemplo de manipulação de propriedades de etiquetas, faça um programa de nome LabelSize, que tem quatro manipuladores de eventos. O que eles fazem?
  • 29. Prever o que acontece se mudarmos o manipulador quando TallerButton.Click da seguinte forma: Modificação 1: Modificação 2: Modificação 3: Outros Button Events Outros botões de eventos são LongClick, GotFocus, LostFocus. Experimente eles clicando os seguinte manipuladores:
  • 30. Nota: muitos componentes obter o foco quando tocado, e perdê-lo quando o toque é removido. Mas os botões são especiais, porque lhes tocar dispara o evento Click. No entanto, eles podem obter / perder o foco através da trilha G1 bola ou navegador IDEOS. Renomear Componentes Os programas podem ser mais fáceis de ler, se você alterar o nome padrão de componentes. Por exemplo, Botaoproximo é mais significativo do que Button2. No painel Componentes da janela do Designer, use o botão Renomear para renomear Label1 para MyLabel. O que acontece no Editor de blocos para blocos que costumavam mencionar Label1? O componente TextBox Muitos aplicativos esperam que os usuários insiram entrada como números ou strings de texto. O componente TextBox é usado para este propósito. Vamos adicionar duas caixas de texto para o programa LabelSize: O primeiro deverá especificar o montante pelo qual o rótulo deve se tornar maior / mais estreito. O segundo deve especificar uma cadeia para ser concatenado com o rótulo atual. (Use o operador de junção para isso.) Nota: Às vezes é útil ter cadeias de texto com várias linhas. Em uma string, a notação n representa o caractere de nova linha. Por exemplo, a cadeia de texto um nDuas N três tem três linhas. Criando aplicação desenhando um círculo na tela Vamos fazer um programa capaz de desenhar círculos na tela. Para este programa você precisará de uma imagem 300x300 pixels. Escolhi a figura do android disponível em: http://dl.dropbox.com/u/2614588/Android.jpg Introdução:
  • 31. Com o Desenhando nós vamos fazer: • Vamos selecionar cores, usando botões; • Usar seu dedo para fazer círculos; • Usar um botão para limpar; • Usar uma imagem como Papel de Parede; Apresentaremos aqui o conceito de Canvas como componente de desenhos, controlaremos o arranjo de componentes da tela, manusearemos eventos distintos com a mesma função e variáveis. Para iniciar o programa, crie um novo projeto, batizado de Desenhando (no original PaintPot), e na janela da esquerda mude o nome da tela 1 para Desenhando. Preparação dos componentes: Você irá utilizar os seguintes componentes ao longo deste tutorial: • Três botões para selecionar cores (Vermelho, Azul e Verde) e um botão para limpar; • Uma superfície para desenhar, chamada de Canvas, este Canvas, particularmente, possui uma imagemde fundo; • Também tem um componente que organiza, horizontalmente, os botões na parte superior da tela. Criando os botões de cores: • Arraste um botão da paleta ”Basics” para a tela do Android exibida em Viewer. • Atribua a esse botão a legenda ”VERMELHO” e altere seu nome na lista de ”Components”, selecionando-o com o mouse e depois clicando no botão ao final desta terceira coluna (da esquerda para a direita), em Rename, para Vermelho. • Repita o procedimento para criar o botão Verde e Azul.
  • 32. Arranjo do leiaute da tela: Para manter os botões alinhados, você deve adicionar a função HorizontalArrangement, dentro da Paleta Screen Arrangement. Esta função irá adicionar um retângulo sobre ou abaixo dos botões, de acordo com onde você o colocou, arraste os botões para dentro, e altere suas propriedades para: Width: Fill Parent Height: Automatic; Canvas e Botão de Limpar Ao final, restam mais dois componentes para adicionar à sua tela: Canvas e o botão de Limpar. Adicione o Canvas através da Paleta ”Basics”, e altere suas propriedades para: • Width: Fill Parent • Height: 300px • Add Background Image: Adicione a Imagem do link dito anteriormente Da mesma Paleta adicione um botão e altere seu texto para Limpar e altere seu nome na árvore de componentes para Wipe. Adicionando comportamento aos componentes: Ao terminar o leiaute do seu aplicativo, salve tudo e abra o Editor de Blocos no BlockEditor.
  • 33. Abra na coluna ”My blocks” e escolha o botão Vermelho e adicione a funcionalidade Vermelho.Click do, em Canvas, eleja a função Canvas1PaintColor e adicione a esta funcionalidade a cor Vermelha da coluna Buit-in->Colors. Repita o processo para as outras cores: Para o botão Limpar, faça como as cores, selecionando Wipe.Click do, em Canvas, selecione Canvas.Clear. Adicione comportamento das cores: Agora para o próximo passo: desenhar em Canvas. Para isso tenha em mente que teremos o comportamento de fazer um ponto ou círculo. No editor de blocos, selecione quando Canvas for clicado (when Canvas1.touched). Você verá que as coordenadas x e y já vem preenchidas, assim como a função touchedSprite. Não vamos nos preocupar com seu significado agora. Clicar é uma função simples, por que não há nada para saber além de que o click ocorreu. Veremos eventos mais complexos futuramente, mas por hora, basta saber que é possível manusear a estes eventos também. Para este evento, vamos fazer o ponto ser representado como um pequeno círculo na tela, nas coordenadas x e y clicadas. Selecione Canvas1.DrawCircle à partir do Canvas e selecione a função do para Quando clicado (when Canvas1.Touched). Ao lado direito desta função há três conexões: onde deve-se especificar os valores de x e y e o raio do círculo que será desenhado ao clicar. Para x e y selecione à partir de ”My Definitions”, selecione as funções ”Value X” e ”Value y” e para o raio, selecione em Definitions, Math, a primeira função Numbers,
  • 34. alterando o valor de 123 para 5. Você já pode salvar sua aplicação e experimentá-la em seu computador, através do emulador do Android ou conectando seu AppInventor ao seu telefone Android.
  • 35. Desenhando linhas no aplicativo anterior Finalmente, vamos adicionar o evento Arrastar (drag) para desenhar linhas, para definir as diferenças entre os eventos, veja: • Um toque é quando se toca com o dedo uma região da tela do aplicativo e o levanta sem mover o dedo para os lados. • Arrastar é quando se toca a tela com o dedo e, mantendo o contato com a tela, desloca- se o dedo pela tela; Este é um evento que possui 6 argumentos para ser composto: • A posição que seu dedo iniciou o toque na tela; • A posição atual do seu dedo na tela; • A posição imediatamente anterior que seu dedo ocupou; Também há uma função Sprite, que também será ignorada ao longo deste tutorial. Assim seu controlador de eventos deverá se parecer ao terminar. Para preencher o Canvas.drawline, você deve ir às funções que foram adicionadas em My Definitions ao selecionar este controlador de eventos (Event Handler). Pronto! Parabéns. Você acaba de concluir mais um tutorial com muito sucesso e seu segundo aplicativo para Android.
  • 36. 3. Ambiente de desenvolvimento Android Como obter o SDK (kit de desenvolvimento de software) do Android O Android SDK fornece-lhe as bibliotecas da API e ferramentas de desenvolvimento necessárias para construir, testar e depurar aplicativos para o Android. Se você é um novo desenvolvedor Android, recomendamos que você baixe o pacote ADT para iniciar rapidamente o desenvolvimento de aplicativos. Ele inclui os componentes essenciais Android SDK e uma versão do Eclipse IDE com built-in ADT (Android Developer Tools) para agilizar o seu desenvolvimento de aplicativos Android. Com um único download, o pacote ADT inclui tudo que você precisa para começar a desenvolver aplicativos: • Eclipse + ADT Plugin • Android SDK Tools • Plataforma Android-ferramentas • A mais recente plataforma Android • A imagem mais recente do sistema Android para o emulador site: http://developer.android.com/sdk/index.html link para baixar: http://developer.android.com/sdk/index.html#win-bundle Configurando o pacote ADT O pacote ADT fornece tudo que você precisa para começar a desenvolver aplicativos, incluindo uma versão do Eclipse IDE com built-in ADT (Android Developer Tools) para agilizar o desenvolvimento de aplicativos Android. Se você não tiver, vai baixar o Android Bundle ADT . (Se você baixou as ferramentas do SDK apenas, para uso com um IDE existente, você deveria ler Configurando um IDE existente .) Instale o SDK e Eclipse IDE 1. Descompacte o arquivo ZIP (chamado adt-bundle-<os_platform>.zip ) e salve ele em um local apropriado, como um diretório de "desenvolvimento" em seu diretório home. 2. Abra o diretório adt-bundle-<os_platform>/eclipse/ e clique em eclipse. É isso! O IDE já está carregado com o plugin Android Developer Tools e o SDK está pronto para iniciar o desenvolvimento, leia Construindo seu primeiro aplicativo. Atenção: Não mover qualquer um dos arquivos ou diretórios do adt-bundle-<os_platform>. Se você mover o eclipse ou sdk diretório, o ADT não será capaz de localizar o SDK e você precisa atualizar manualmente as preferências do ADT. Informações adicionais Para você continuar o desenvolvimento de aplicativos, você pode precisar instalar versões adicionais do Android para o emulador e outros pacotes, como a biblioteca do Google Play In-app Billing. Para instalar mais pacotes, use o Gerenciador de SDK . Tudo o que você precisa para desenvolver aplicativos Android tem neste site (link indicado acima), incluindo diretrizes de design , treinamento desenvolvedor , referência da API , e informações sobre como você pode distribuir seu aplicativo . Para obter recursos
  • 37. adicionais sobre o desenvolvimento e distribuição de seu aplicativo, consulte os recursos de suporte do desenvolvedor . Configurando um IDE Existente(para quem não instalou o pacote acima) Você já deve ter baixado as ferramentas Android SDK. (Se você baixou o pacote ADT, você deveria ler Configurando o pacote ADT).O SDK do pacote de ferramentas não é o ambiente SDK completo. Ele inclui apenas as ferramentas essenciais SDK, que você pode usar para baixar o resto dos pacotes SDK (como a imagem mais recente do sistema). Primeiros passos no Windows Seu pacote de download é um arquivo executável que inicia um instalador. O instalador verifica a sua máquina para ferramentas necessárias, como o próprio Java SE Development Kit (JDK) e instalá-o se necessário. O instalador então salva as Ferramentas Android SDK em um local padrão (ou você pode especificar o local). Dê um duplo clique no arquivo executável (. Exe) para iniciar a instalação. Tome nota do nome e do local em que ele salva o SDK no sistema, você vai precisar para se referir ao diretório SDK depois, ao configurar o plugin ADT e quando utilizar as ferramentas do SDK a partir da linha de comando. Uma vez concluída a instalação, o instalador oferece para iniciar o Android Manager SDK. Se você vai usar o Eclipse, não iniciar o Gerenciador do Android SDK, e em vez disso faça a instalação do plugin do Eclipse. Se você estiver usando uma IDE diferente, inicie o Gerenciador de SDK e leia adicionando plataformas e pacotes. Instalando o Plugin Eclipse(para quem não instalou o pacote acima) Android oferece um plugin personalizado para o IDE Eclipse, chamado Android Development Tools (ADT). Este plugin fornece um ambiente integrado poderoso, que permite desenvolver aplicativos Android. Ele amplia os recursos do Eclipse para que você rapidamente criar novos projetos Android, construir uma interface de aplicativo, depurar seu aplicativo, e exportar pacotes assinados (ou não assinado) app (APKs) para distribuição. Se você precisa instalar o Eclipse, você pode baixá-lo a partir de eclipse.org / mobile. Nota: Se você preferir trabalhar em uma IDE diferente, você não precisa instalar o Eclipse ou ADT. Em vez disso, você pode usar diretamente as ferramentas do SDK para criar e depurar sua aplicação. Faça o download do plugin ADT • Inicie o Eclipse, em seguida, selecione Ajuda> instalar novo software. • Clique em Adicionar, no canto superior direito. • Na caixa de diálogo Repositório que aparece, digite "Plugin ADT" para o nome e a seguinte URL para o local: https://dl-ssl.google.com/android/eclipse/ • Clique em OK. Se você tiver problemas para adquirir o plugin, tente usar "http" na URL do local, em vez de "https" (https é preferido por razões de segurança). • Na caixa de diálogo de software disponíveis, selecione a caixa de seleção ao lado de Developer Tools e clique em Avançar.
  • 38. Na janela seguinte, você verá uma lista de ferramentas para ser baixado. Clique em Avançar. • Leia e aceite os acordos de licença, em seguida, clique em Concluir. Se você receber um aviso de segurança dizendo que a autenticidade ou validade do software não pode ser estabelecida, clique em OK. Quando a instalação estiver concluída, reinicie o Eclipse. Configurar o plugin ADT Após a reinicialização do Eclipse, você deve especificar a localização do seu diretório SDK do Android: No "Bem-vindo ao Android Development" janela que aparece, selecione Utilizar SDKs existentes. Procurar e selecione o local do diretório do Android SDK que você recentemente baixou e descompacte-o. Clique em Avançar. Seu Eclipse IDE está configurado para desenvolver aplicativos Android, mas você precisa adicionar as mais recentes ferramentas de plataforma SDK e uma plataforma Android para o seu ambiente. Para obter esses pacotes para o seu SDK, continuar a Adicionando plataformas e Pacotes. Resolvendo Problemas de Instalação Se você está tendo problemas para baixar o plugin ADT depois de seguir os passos acima, aqui estão algumas sugestões: Se o Eclipse não consegue encontrar o site de atualização remoto que contém o plugin ADT, tente alterar a URL do site remoto para usar http em vez de https. Ou seja, a definição do local para o site remoto para: http://dl- ssl.google.com/android/eclipse/ Se você está atrás de um firewall (como um firewall corporativo), certifique-se de que você configurou corretamente suas configurações de proxy no Eclipse. Em Eclipse, você pode configurar informações de proxy a partir do menu principal do Eclipse na Janela (no Mac OS X, Eclipse)> Preferências> Geral> Conexões de Rede. Se você ainda não conseguir usar o Eclipse para baixar o plugin ADT como um site de atualização remoto, você pode baixar o arquivo zip ADT para sua máquina local e instalá-lo manualmente: Baixe o arquivo zip ADT Plugin (não descompactá-lo): Package Size MD5 Checksum ADT-21.0.1.zip 13569302 bytes acfb01bf3fd1240f1fc21488c3dd16bf Inicie o Eclipse, em seguida, selecione Ajuda> instalar novo software. Clique em Adicionar, no canto superior direito. Na caixa de diálogo Repositório, clique em Arquivo. Selecione o arquivo baixado ADT-21.0.1.zip e clique em OK. Digite "Plugin ADT" para o nome e clique em OK. Na caixa de diálogo de software disponíveis, selecione a caixa de seleção ao lado de Developer Tools e clique em Avançar. Na janela seguinte, você verá uma lista de ferramentas para ser baixado. Clique em Avançar. Leia e aceite os acordos de licença, em seguida, clique em Concluir. Se você receber um aviso de segurança dizendo que a autenticidade ou validade do software não pode ser estabelecida, clique em OK. Quando a instalação estiver concluída, reinicie o Eclipse.
  • 39. Para atualizar o seu plugin uma vez que você tenha instalado usando o arquivo zip, você terá que seguir estes passos novamente ao invés das instruções de atualização padrão. Outros erros de instalação Note-se que há características da ADT que requerem alguns pacotes opcionais Eclipse (por exemplo, WST). Se você encontrar um erro ao instalar ADT, sua instalação Eclipse pode não incluir estes pacotes. Para obter informações sobre como adicionar rapidamente os pacotes necessários para a instalação do Eclipse, consulte a solução de problemas tópico Erro de instalação ADT: "requer plug-in org.eclipse.wst.sse.ui". Para usuários de Linux Se você encontrar esse erro ao instalar o plugin ADT para Eclipse: Ocorreu um erro durante o provisionamento. Não é possível conectar ao armazenamento de chaves. JKS ... Então a sua máquina de desenvolvimento carece de uma adequada Java VM. Instalação do Sun Java 6 vai resolver esse problema e você pode reinstalar o plugin ADT. Adicionando plataformas e Pacotes O SDK do Android separa ferramentas, plataformas e outros componentes em pacotes que você pode fazer o download usando o Gestor do Android SDK. O pacote SDK original que você baixou inclui apenas as ferramentas do SDK. Para desenvolver um aplicativo Android, você também precisa baixar pelo menos uma plataforma Android e os mais recentes a plataforma SDK-tools. Inicie o Gerenciador de SDK. Se você já usou o instalador do Windows para instalar as ferramentas do SDK, você já deve ter o Gerenciador Android SDK Gerente. Caso contrário, você pode rodar ogerenciador do Android SDK de uma das seguintes formas: No Windows, clique duas vezes no arquivo SDK Manager.exe na raiz do diretório do Android SDK. No Mac ou Linux, abra um terminal e navegue até o diretório tools / do SDK do Android, em seguida, executar o Android SDK. O Gerenciador de SDK mostra todos os pacotes SDK disponível para você adicionar ao seu Android SDK. Como uma configuração mínima para o seu SDK, recomendamos que você instalar o seguinte: Os últimos pacotes de Ferramentas (verifique a pasta Ferramentas). A última versão do Android (verificar a pasta de primeiro Android). A Biblioteca de suporte Android (abra a pasta Extras e verificar Android Support Library). Uma vez que você escolheu seus pacotes, clique em Instalar. O Gerenciador Android SDK instala os pacotes selecionados em seu ambiente Android SDK.
  • 40. Com estes pacotes instalados, você está pronto para começar a desenvolver. Para começar, leia Construindo seu primeiro aplicativo. Figura 1. O Android SDK Gestor mostra os pacotes SDK que estão disponíveis, já instalado, ou para os quais está disponível uma atualização. Informações adicionais Para mais informações sobre como usar o Gerenciador de SDK e alguns dos pacotes disponíveis, consulte o documento Manager SDK. Este site fornece todas as informações que você precisa para desenvolver aplicativos Android, incluindo diretrizes de design, treinamento, desenvolvedor de referência API, e informações sobre como você pode distribuir sua app. Recomendamos que você comece lendo Construindo seu primeiro aplicativo. Para obter recursos adicionais sobre o desenvolvimento e distribuição de seu aplicativo, consulte os recursos de suporte do desenvolvedor. Construção de seu primeiro aplicativo Dependências e pré-requisitos • Android SDK • ADT Plugin 20.0.0 ou superior (se você estiver usando Eclipse) Bem-vindo ao desenvolvimento de aplicações Android!
  • 41. Este texto ensina como construir seu primeiro Android app. Você vai aprender como criar um projeto Android e executar uma versão debuggable do app. Você também vai aprender alguns fundamentos do projeto aplicativo Android, incluindo como criar uma interface de usuário simples e manipular a entrada do usuário. Antes de iniciar esta classe, tenha certeza de ter o seu ambiente de desenvolvimento configurado. Você precisa: 1. Faça o download do SDK do Android. 2. Instalar o plugin ADT para Eclipse (se você vai usar o IDE Eclipse). 3. Baixe as mais recentes ferramentas SDK e plataformas usando o Gerenciador de SDK. Se você não tiver feito essas tarefas, começar por baixar o SDK do Android, seguindo os passos de instalação. Depois de terminar a instalação, você está pronto para começar. Este texto usa um formato de tutorial que constrói de maneira incremental uma pequena app Android, que ensina alguns conceitos fundamentais sobre o desenvolvimento Android, por isso é importante que você siga cada passo. Criando um projeto Android Esta lição ensina a: Criar um projeto com Eclipse Criar um projeto com as ferramentas de linha de comando Você também deve ler: Instalando o SDK Gerenciando Projetos Um projeto Android contém todos os arquivos que compõem o código-fonte de seu aplicativo Android. As ferramentas de Android SDK tornar mais fácil para começar um novo projeto Android com um conjunto de diretórios padrão do projeto e arquivos. Esta lição mostra como criar um novo projeto ou usando Eclipse (com plugin ADT) ou usando as ferramentas do SDK a partir de uma linha de comando. Nota: Você já deve ter o Android SDK instalado, e se você estiver usando o Eclipse, você também deve ter o plugin ADT instalado (versão 21.0.0 ou superior). Se você não tiver esses, siga o guia para instalar o Android SDK antes de começar esta lição. Criar um projeto com Eclipse O sistema primeiro mostra em que local você guardará seu projeto(workspace), aqui você pode definí-lo e então o eclipse entra no menu principal. Clique em File>New>Project na barra de ferramentas. Na janela que aparece, abra a pasta Android, selecione Android Application Project e clique em Next.
  • 42. Figura 1. New Android Application assistente no Eclipse. Preencha o formulário que aparece: Nome do aplicativo é o nome do aplicativo que aparece para os usuários. Para este projeto, use "Meu aplicativo", primeira letra maiúscula. Nome do projeto é o nome do diretório do projeto e o nome visível no Eclipse. Nome do pacote é o namespace do pacote para o seu aplicativo (seguindo as mesmas regras de pacotes na linguagem de programação Java). O seu nome de pacote deve ser único em todos os pacotes instalados no sistema Android. Por esta razão, é geralmente melhor se você usar um nome que começa com o nome de domínio reverso da sua organização ou entidade editora. Para este projeto, você pode usar algo como "com.exemplo.meuaplicativo". No entanto, você não pode publicar seu aplicativo no Google Play usando o namespace "com.exemplo". A Mínimum Required SDK é a menor versão do Android que o aplicativo suporta, indicado usando o nível da API. Para apoiar o maior número de dispositivos possíveis, você deve definir isso para o menor versão disponível que permite que seu aplicativo forneça o conjunto de recursos para o núcleo. Se qualquer recurso de sua aplicação só for possível executar em versões mais recentes do Android e que não é fundamental para a aplicação do conjunto de recursos do núcleo, você pode ativar o recurso apenas quando estiver rodando em versões que o suportam. Deixe este conjunto como valor padrão para este projeto. Target SDK indica a versão mais recente do Android (também usando o nível API) com o qual você já testou a sua aplicação. Quando novas versões do Android se tornam disponíveis, você deve testar seu aplicativo na nova versão e atualizar este valor para corresponder ao nível mais recente da API, a fim de tirar proveito dos recursos de novas plataformas. Compile with é a versão da plataforma com a qual você irá compilar o seu aplicativo. Por padrão, isso é definido para a última versão do Android disponível em seu SDK. (Deve ser o Android 4.1 ou superior, se você não tem essa versão disponível, você deve instalar um usando o Gerenciador de SDK). Você ainda pode construir seu aplicativo para suportar as versões mais antigas, mas a definição da meta de construção para a versão mais recente permite ativar novos recursos e otimizar seu aplicativo para uma ótima experiência de usuário sobre os dispositivos mais recentes. Theme especifica o estilo da UI(interface do usuário) do Android solicitado por sua app. Você pode deixar isso ser preenchido sozinho.
  • 43. Clique em Avançar. Na próxima tela para configurar o projeto, deixe as seleções padrão e clique em Avançar. A próxima tela pode ajudar a criar um ícone para executar sua aplicação. Você pode personalizar um ícone de várias maneiras usando a ferramenta gera um ícone para todas as densidades de tela. Antes de publicar o aplicativo, você deve ter certeza que seu ícone atende às especificações definidas no guia de design de Iconografia(Configure Luncher Icone). Clique em Avançar. Agora você pode selecionar um modelo de atividade para começar a construir sua app.Para este projeto, selecione BlankActivity e clique em Avançar. Deixe todos os detalhes para a atividade no seu estado padrão e clique em Concluir. Seu projeto Android agora está configurado com alguns arquivos padrão e você está pronto para começar a construir o aplicativo. Continue na próxima lição. Criar um projeto com as ferramentas de linha de comando Se você não está usando a IDE Eclipse com o plugin ADT, você pode criar seu projeto usando as ferramentas do SDK a partir de uma linha de comando: Altere os diretórios para Android SDK / tools. Execute:android list target Imprime uma lista das plataformas Android disponíveis em seu SDK. Encontre a plataforma com a qual você deseja compilar o seu aplicativo. Tome nota do ID de alvo. Nós recomendamos que você selecione a versão mais alta possível. Você ainda pode construir seu aplicativo para suportar as versões mais antigas, mas a definição da meta de construção para a versão mais recente permite otimizar seu aplicativo para os dispositivos mais recentes. Se você não vê quaisquer metas listadas, você precisa instalar alguns utilizando a ferramenta Android SDK Manager. Veja Adicionando plataformas e Pacotes. Execute: android create project --target <target-id> --name MyFirstApp --path <path-to-workspace>/MyFirstApp --activity MainActivity --package com.exemplo.minhaaplicacao Substitua <target-id> com um ID da lista de alvos (da etapa anterior) e substituir <path-to workspace> com o local em que você deseja salvar seus projetos Android. Seu projeto Android agora está configurado com configurações padrão vários e você está pronto para começar a construir o aplicativo. Dica: Adicione platform-tools/ bem com the tools/ para a sua variável de ambiente PATH
  • 44. Rodando sua aplicação Esta lição ensina você a: 1.Executar em um Dispositivo Real 2.Executando em um Emulador Você também deve ler: Usando dispositivos de hardware, Gerenciando Dispositivos Virtuais, Gerenciando. • Using Hardware Devices • Managing Virtual Devices • Managing Projects Se você seguiu a lição anterior para criar um projeto android, ele inclue como default o conjunto de arquivos fontes "Hello World" que permitem você executar imediatamente sua aplicação. Agora você depende de 2 coisas para executar sua aplicação: se você tem um dispositivo android e se você está usando o Eclipse. Esta lição mostra como você instalar e executar sua aplicação em dispositivo real e em emulador Android, em linha de comando e no eclipse. Antes de você executar sua app, você deve se assegurar que tem arquivos e diretórios em seu projeto Android. AndroidManifest.xml – este arquivo descreve as características fundamentais da sua aplicação e define cada componente. Um dos mais importantes elementos de seu manifesto deve ser incluir o elemento <uses-sdk>, ele declara a compatibilidade que sua aplicação tem com diferentes androids usando os atributos: android:minSdkVersion e android:targetSdkVersion. Sua primeira aplicação de parecer com isto: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.versao1.hello" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.versao1.hello.Hello" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
  • 45. Você deve sempre configurar seu android: targetSdkVersion o mais alto possível e testar sua aplicação na plataforma corrente. Maiores informações leia em: Supporting Different Platform Versions. src/ Diretório para sua app principal. Por default inclue classe Activity que é executada quando você clica no ícone de sua aplicação. res/ Contém vários sub-diretórios para app resources. Aqui estão alguns: drawable-hdpi/ Diretório de objetos desenháveis (tal como bitmaps) que são projetados para telas de alta densidade(hdpi). Outros diretórios de contém telas de outras densidades. layout/ Diretório que define a interface do usuário. values/ Diretório de vários arquivos XML que contém uma coleção de recursos, como definição de cor e string. Quando você construir e rodar uma aplicação default do Android, a classe default chamada Activity inicia e carrega o arquivo de layout que diz: “Hello Word.”. O resultado não é excitante mas é importante você entender com rodar sua aplicação antes de começar a desenvolver. . Executando em um dispositivo Real Se você tem um dispositivo real você pode rodar e instalar sua aplicação: 1. Ligar seu dispositivo ao computador com o cabo USB. No Windows instalar o drive USB <http://developer.android.com/tools/extras/oem-usb.html>. 2. Habilite o USB debugging em seu dispositivo. Nas versões 3.2 para baixo, entre na opção:Settings > Applications > Development. No android 4.0 ou mais recente: Settings > Developer options. Note: Na versão 4.2 e mais nova esta opção está escondida, vá em Settings > About phone e aperte 7 vezes o Build number. Retorne para a tela anterior e vai ver a Developer options. Para executar no Eclipse 1. Abra um dos seus arquivos de projeto e clique Run na barra de ferramentas. 2. Então Run quando a janela aparecer, e selecione Android Application e clique OK. O Eclipse instala a app no seu dispositivo e inicia. Rodando na linha de comando 1. Mude o diretório para raiz no seu Projeto android e execute: ant debug 2. Veja se o diretório do Android SDK plataform/tools está na variável de ambiente PATH. adb install bin/MyFirstApp-debug.apk 3. No seu dispositivo localize MyFirstActivity e abra-o. Rodando no Emulador
  • 46. Se você está usando o Eclipse ou a linha de comando, para rodar sua app no emulador você precisa criar seu AVD (Android Virtual Device). Um AVD é uma configuração do dispositivo emulador do Android e permite usar vários dispositivos. Figura 1. AVD e um dispositivo Para criar um AVD: 1. Rode o gerenciador do AVD: No eclipse clique Android Virtual Device Manager na barra de ferramentas. Na linha de comando mude o diretório para <sdk>/tools/ e execute android avd 2. No AVD clique NEW 3. Preencha os detalhes do AVD. Nome, Plataforma, tamanho SD e tela HVGA é o default. 4. Clique em Create AVD 5. Selecione o que você criou e clique em Start. 6. Depois do emulador aparecer, use o botão para destravá-lo. Para rodar no eclipse: 1.Abra project file e clique em Run na barra de ferramenta. 2. Na janela Run as, selecione Android Application e clique OK. O Eclipse instala e executa sua aplicação no AVD. Na linha de comando Mude o diretório para raiz do projeto e execute: ant debug Na variável de ambiente PATH coloque plataform-tools/ e execute: adb install bin/MyFirstApp-debug.apk No emulador localize a aplicação e abra.