SESTINFO 2011Universidade Metodista de São Paulo       Desenvolvimento na Plataforma             Google Android        Raf...
Agenda•   Introdução ao Android, arquitetura e ambiente de desenvolvimento.•   Activity•   Intent e Intent Filter•   View•...
O que é Android?• Sistema Operacional• Middleware• Aplicativos• Interface• Android SDK• Apache License,Version 2.0• Open S...
Arquitetura              4
Quem apoia Android?• Open Handset Alliance• Google Inc.                          5
Alguns números       •   100 milhões de dispositivos com Android.       •   ~ 400 mil novas ativações de dispositivos com ...
Versões Android http://developer.android.com/resources/dashboard/platform-versions.html                                   ...
Versões Android•   Curiosidade - o codenome das versões são nomes de doces:•   1.5 - Cupcake•   1.6 - Donut•   2.1 - Eclai...
Ambiente deDesenvolvimento•   Java Developer Kit (JDK) - www.oracle.com/    technetwork/java/javase/downloads/index.html• ...
Android SDK e AVDManager• Clique no menu   ou no menu Window →  Android SDK e AVD Manager.                                ...
Emulador• Iniciar emulador.• Opções do emulador no Eclipse• Enviar SMS                                  11
Componentes de umaaplicação no Android• Activity• Intent e Intent Filters• Services• Broadcast Receivers• Content Provider...
Activity• Classe define qual a tela (View) irá  representar e controla os eventos dela.• Precisa ser uma classe filha de  an...
Hello World++•   Criando um projeto Android no Eclipse:    •   No menu Arquivo selecione Novo → Outro → Android → Android ...
Hello World++•   Estrutura do Projeto    •   src - Código fonte do projeto.    •   gen - R.java - constantes que permitem ...
Hello World++• Layout gráfico  do main.xml                  16
Hello World++       • Conteúdo inicial do arquivo main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:androi...
Hello World++      • Adicionando mais componentes na tela:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:androi...
Hello World++•   Edite o arquivo values/strings.xml com os    seguintes valores:    •   hello - Mini-cursonDesenvolvimento...
Hello World++                20
Hello World++•    Adicionar a ação para o botão Mostrar mensagem...package br.metodista.sestinfo.helloworld;import   andro...
Hello World++•   Para executar a aplicação, clique com o botão direito sobre    o nome do projeto e escolha o item Run As ...
Intent e Intent Filter•   Intent é utilizando para enviar uma solicitação    para o Android executar como por exemplo:    ...
View  • A View é a classe que representa os       elementos da tela, onde cada elemento da       tela é uma subclasse da c...
Elementos de Tela                    25
Exemplo View               26
Service•   A classe Service é utilizada para criar um serviço    que é executado em background.•   O processamento e geren...
Service          28
Usando o SD Card•   Após iniciar o emulador, entre na visualização    Window → Show View → Android → File    Explorer.    ...
Broadcast Receiver• A classe BroadcastReceiver é utilizada para  executar as solicitações feitas pelos Intent.• Ela também...
Exemplo BroadcastReceiver                    31
Enviar SMS via plugindo Eclipse•   Utilizando o plugin do Eclipse é fácil enviar um SMS    ou fazer uma chamada telefônica...
Content Provider• A classe ContentProvider permite  compartilhar informações para que qualquer  outra aplicação possa util...
GPS e Mapas• Global Positioning System (GPS) permite  você localizar a posição atual do seu  aparelho no Globo Terrestre.•...
Exemplo Mapas                35
Exemplo GPS e Mapas                      36
Mais recursos doAndroid•   Banco de Dados (SQLite)•   HTTP•   Web Services•   Acelerômetro•   Multimídia video e câmera•  ...
Android Market                 38
Android Market - MinhaConta                         39
Publicando uma aplicaçãono Android Market•   No site http://developer.android.com•   Acesse a opção Publish.•   Crie seu p...
Publicando uma aplicaçãono Android Market                           41
Publicando uma aplicaçãono Android Market                           42
Referencias•   [LECHETA, Ricardo R.] Google Android: Aprenda    a criar aplicações para dispositivos móveis com o    Andro...
Rodrigo Cascarrolho                              rgdcasca@gmail.com                              @rodrigocasca            ...
Upcoming SlideShare
Loading in …5
×

SESTINFO 2011 Apresentacao Android

6,261 views

Published on

Desenvolvimento na Plataforma Google Android

Download dos exemplos: http://www.universidadejava.com.br/apresentacoes/googleandroid

Published in: Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,261
On SlideShare
0
From Embeds
0
Number of Embeds
3,171
Actions
Shares
0
Downloads
215
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

SESTINFO 2011 Apresentacao Android

  1. 1. SESTINFO 2011Universidade Metodista de São Paulo Desenvolvimento na Plataforma Google Android Rafael Rodrigo Sakurai Cascarrolho 1
  2. 2. Agenda• Introdução ao Android, arquitetura e ambiente de desenvolvimento.• Activity• Intent e Intent Filter• View• Service• Broadcast Receiver• Content Provider• GPS e Mapas• Android Market 2
  3. 3. O que é Android?• Sistema Operacional• Middleware• Aplicativos• Interface• Android SDK• Apache License,Version 2.0• Open Source 3
  4. 4. Arquitetura 4
  5. 5. Quem apoia Android?• Open Handset Alliance• Google Inc. 5
  6. 6. Alguns números • 100 milhões de dispositivos com Android. • ~ 400 mil novas ativações de dispositivos com Android por dia. • 200 mil aplicações no Android Market. • Mais de 320 dispositivos que utilizam Android. • 4.5 bilhões de aplicações baixadas do Android Market.Números divulgados no Google IO 2011 - http://www.google.com/events/io/2011/index-live.html 6
  7. 7. Versões Android http://developer.android.com/resources/dashboard/platform-versions.html 7
  8. 8. Versões Android• Curiosidade - o codenome das versões são nomes de doces:• 1.5 - Cupcake• 1.6 - Donut• 2.1 - Eclair• 2.2 - Froyo• 2.3 - Gingerbread• 3.0 - Honeycomb• 3.1 - Ice-cream sandwich 8
  9. 9. Ambiente deDesenvolvimento• Java Developer Kit (JDK) - www.oracle.com/ technetwork/java/javase/downloads/index.html• Eclipse IDE for Java Developers - www.eclipse.org• Android SDK - http://developer.android.com/ sdk/index.html• ADT Plugin for Eclipse - http:// developer.android.com/sdk/eclipse-adt.html 9
  10. 10. Android SDK e AVDManager• Clique no menu ou no menu Window → Android SDK e AVD Manager. 10
  11. 11. Emulador• Iniciar emulador.• Opções do emulador no Eclipse• Enviar SMS 11
  12. 12. Componentes de umaaplicação no Android• Activity• Intent e Intent Filters• Services• Broadcast Receivers• Content Provider 12
  13. 13. Activity• Classe define qual a tela (View) irá representar e controla os eventos dela.• Precisa ser uma classe filha de android.app.Activity.• Deve implementar o método public void onCreate(Bundle savedInstanceState) {...} que inicializa os elementos da tela. 13
  14. 14. Hello World++• Criando um projeto Android no Eclipse: • No menu Arquivo selecione Novo → Outro → Android → Android Project. • Defina os seguintes campos: • Project Name: Sestinfo-HelloWorldPlus • Informe onde deve ser salvo o projeto. • Build Target: Google APIs - 2.1-update Level 7 ou Android 2.1- update1 • Application Name: SESTINFO 2011 - HelloWorldPlus • Package name: br.metodista.sestinfo.helloworld • Create Activity: HelloWorld • Clique em Finalizar 14
  15. 15. Hello World++• Estrutura do Projeto • src - Código fonte do projeto. • gen - R.java - constantes que permitem acessar os elementos da tela. • res - Recursos • drawable... - imagens de acordo com o tamanho da tela. • layout - arquivos xml com o layout da tela. • values - arquivo xml com todos os textos. • AndroidManifest.xml - configuração do projeto. 15
  16. 16. Hello World++• Layout gráfico do main.xml 16
  17. 17. Hello World++ • Conteúdo inicial do arquivo main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:id="@+id/textView1"android:text="@string/hello" android:layout_height="wrap_content"></TextView></LinearLayout> 17
  18. 18. Hello World++ • Adicionando mais componentes na tela:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" android:gravity="center" /><LinearLayout android:layout_height="100dip" android:gravity="bottom" android:id="@+id/linearLayout1" android:layout_width="fill_parent" /><Button android:id="@+id/btnVer" android:layout_width="fill_parent" android:layout_height="70dip" android:text="@string/mostrar" /><ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/logoMeto" android:src="@drawable/logo_portal" /></LinearLayout> 18
  19. 19. Hello World++• Edite o arquivo values/strings.xml com os seguintes valores: • hello - Mini-cursonDesenvolvimento na plataforma Google Android • appname - SestInfo 2011 - HelloWorldPlus • mostrar - Mostrar mensagem... • msg - Bem vindo à SESTINFO 2011• Adicione a imagem logo_portal.jpg na pasta drawable-mdpi. 19
  20. 20. Hello World++ 20
  21. 21. Hello World++• Adicionar a ação para o botão Mostrar mensagem...package br.metodista.sestinfo.helloworld;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.Toast;public class HelloWorld extends Activity { private Button mostrar; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mostrar = (Button) findViewById(R.id.btnVer); mostrar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(getBaseContext(), R.string.msg, Toast.LENGTH_LONG).show(); } }); }} 21
  22. 22. Hello World++• Para executar a aplicação, clique com o botão direito sobre o nome do projeto e escolha o item Run As → Android Application. 22
  23. 23. Intent e Intent Filter• Intent é utilizando para enviar uma solicitação para o Android executar como por exemplo: • Fazer uma ligação • Enviar um SMS • Abrir o browser • Solicita a abertura de outra aplicação• Intent Filter é utilizado para mapear a ação de um Intent. 23
  24. 24. View • A View é a classe que representa os elementos da tela, onde cada elemento da tela é uma subclasse da classe View. • Todos os elementos da tela são escritos na forma de XML, exemplo:<ImageView android:id="@+id/ImageView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:minHeight="80dip" android:minWidth="80dip" android:clickable="true" android:visibility="visible" android:background="#00000000" android:paddingLeft="20dip" android:paddingTop="20dip" android:paddingRight="20dip" android:paddingBottom="20dip"></ImageView> 24
  25. 25. Elementos de Tela 25
  26. 26. Exemplo View 26
  27. 27. Service• A classe Service é utilizada para criar um serviço que é executado em background.• O processamento e gerenciamento de memória de uma Service é controlada pelo sistema operacional.• Processos com tempo e duração indeterminado.• Processos que irão demorar mais que 10 segundos.• Como por exemplo: download e player de audio e video. 27
  28. 28. Service 28
  29. 29. Usando o SD Card• Após iniciar o emulador, entre na visualização Window → Show View → Android → File Explorer. Pegar um arquivo Adicionar um arquivo no dispositivo. no dispositivo. 29
  30. 30. Broadcast Receiver• A classe BroadcastReceiver é utilizada para executar as solicitações feitas pelos Intent.• Ela também é executada em background para não atrapalhar os usuário, podendo por exemplo acionar uma Service.• Não é recomendado abrir uma Activity ou qualquer iteração com o usuário.• Com o BroadcastReceiver podemos criar uma aplicação que ao receber um SMS já emite um aviso e apresenta ele na tela. 30
  31. 31. Exemplo BroadcastReceiver 31
  32. 32. Enviar SMS via plugindo Eclipse• Utilizando o plugin do Eclipse é fácil enviar um SMS ou fazer uma chamada telefônica para o emulador.• Entre na visualização Window → Show View → Android → Emulator Control, digite um número de telefone qualquer, a mensagem SMS e clique em Send. 32
  33. 33. Content Provider• A classe ContentProvider permite compartilhar informações para que qualquer outra aplicação possa utilizá-las.• Por exemplo a aplicação do Facebook coloca a foto dos seus contatos de acordo com a foto que está no perfil do contato no Facebook.• Disponibilizar seus percursos com o GPS para outra aplicação. 33
  34. 34. GPS e Mapas• Global Positioning System (GPS) permite você localizar a posição atual do seu aparelho no Globo Terrestre.• Google Maps permite você utilizar os mapas disponibilizados pela Google para criação de aplicações. 34
  35. 35. Exemplo Mapas 35
  36. 36. Exemplo GPS e Mapas 36
  37. 37. Mais recursos doAndroid• Banco de Dados (SQLite)• HTTP• Web Services• Acelerômetro• Multimídia video e câmera• Efeitos de transição• E muito mais 37
  38. 38. Android Market 38
  39. 39. Android Market - MinhaConta 39
  40. 40. Publicando uma aplicaçãono Android Market• No site http://developer.android.com• Acesse a opção Publish.• Crie seu perfil de desenvolvedor.• Pague a taxa de registro (US$25,00) com cartão de credito.• Aceite os termos de contrato da Google.• Aplicações paga 70% para o desenvolvedor e 30% para a Google. 40
  41. 41. Publicando uma aplicaçãono Android Market 41
  42. 42. Publicando uma aplicaçãono Android Market 42
  43. 43. Referencias• [LECHETA, Ricardo R.] Google Android: Aprenda a criar aplicações para dispositivos móveis com o Android SDK, 2 ed. - Editora Novatec - 2010• [Lúcio Camilo, Michel Lourenço] Android para Desenvolvedores, Editora Brasport - 2009• Android Developers - http:// developer.android.com/index.html• Android Market - http://market.android.com 43
  44. 44. Rodrigo Cascarrolho rgdcasca@gmail.com @rodrigocasca www.rdgc.com.br Obrigado!Rafael Sakurairafasakurai@gmail.com@rafaelsakuraiwww.universidadejava.com.br 44

×