Apresentação Google Android
-
Upload
rodrigo-cascarrolho -
Category
Technology
-
view
6.721 -
download
1
description
Transcript of Apresentação Google Android
Desenvolvimento na PlataformaGoogle Android
SESTINFO 2011 Universidade Metodista de São Paulo
Rafael Sakurai
RodrigoCascarrolho
1
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
O que é Android?• Sistema Operacional
• Middleware
• Aplicativos
• Interface
• Android SDK
• Apache License, Version 2.0
• Open Source
3
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 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
Versões Android
http://developer.android.com/resources/dashboard/platform-versions.html
7
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
Ambiente de Desenvolvimento• 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
Android SDK e AVD Manager• Clique no menu ou no menu Window →
Android SDK e AVD Manager.
10
Emulador
• Iniciar emulador.
• Opções do emulador no Eclipse
• Enviar SMS
11
Componentes de uma aplicação no Android
• Activity
• Intent e Intent Filters
• Services
• Broadcast Receivers
• Content Provider
12
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
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
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
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: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
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
Hello World++• Edite o arquivo values/strings.xml com os
seguintes valores:
• hello - Mini-curso\nDesenvolvimento 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
Hello World++
20
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
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
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
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
Elementos de Tela
25
Exemplo View
26
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
Service
28
Usando o SD Card
• Após iniciar o emulador, entre na visualização Window → Show View → Android → File Explorer.
Adicionar um arquivo no dispositivo.
Pegar um arquivo no dispositivo.
29
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
Exemplo Broadcast Receiver
31
Enviar SMS via plugin do 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
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
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
Exemplo Mapas
35
Exemplo GPS e Mapas
36
Mais recursos do Android• Banco de Dados (SQLite)
• HTTP
• Web Services
• Acelerômetro
• Multimídia video e câmera
• Efeitos de transição
• E muito mais
37
Android Market
38
Android Market - Minha Conta
39
Publicando uma aplicação no 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
Publicando uma aplicação no Android Market
41
Publicando uma aplicação no Android Market
42
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
Obrigado!
Rafael [email protected]@rafaelsakuraiwww.universidadejava.com.br
Rodrigo [email protected]@rodrigocascawww.rdgc.com.br
44