2. Apresentação
Ministrante: Ronildo Oliveira da Silva
• Cursando o oitavo semestre do curso Integrado
Informática IFCE Campus Cedro.
• Monitor de Programação Estruturada no IFCE
Campus Cedro.
• Programador de aplicações desktop e móveis.
3. O Que é Android?
• O Android é um ambiente de desenvolvimento de
software para dispositivos móveis.
• O Android possui: Aplicações, Bibliotecas,
Frameworks, rica interface de Usuário (UI) e muito
mais.
• Uso da linguagem de programação Java.
4. Criação do Android
Andrew E. Rubin – (Fundador da Android Inc.)
• Vice-presidente de mobilidade do Google.
• (CEO) da Android;
• (CEO) da Danger.Inc .
Chief Executive Officer
(Diretor Executivo)
5. Android e a OHA
• Open Handset Alliance™(OHA) é um grupo
formado por gigantes do mercado de telefonia de
celulares liderados pelo Google que revelou a
plataforma Open Source Android e uma versão da
SDK em 12 de novembro de 2007.
9. Versões do Android
As diferentes versões de Android tem desde a versão 1.5,
nomes de sobremesas ou bolos (em inglês) e seguem
uma lógica alfabética:
1.5: Cupcake (Abril de 2009)
1.6: Donut (Setembro de 2009)
2.1: Eclair (Janeiro de 2010)
2.2: FroYo (Frozen Yogourt - Maio de 2010)
2.3-2.4: Gingerbread (Dezembro de 2010)
3.0-3.2: Honeycomb (Janeiro de 2011)
4.0: Ice Cream Sandwich (Outubro de 2011)
4.1: Jelly Bean (Junho de 2012)
5.0: Key Lime Pie (Maio de 2013)
10. Estrutura da Aplicação Android
• Arquitetura do Android
• Linux Kernel
• Bibliotecas
• Aplicações
• Android Runtime
• Dalvik VM
11. Arquitetura da Plataforma Android
Driver de USB
Driver do
Teclado
Driver de Rede
Sem fio
Drivers de
Áudio
Gerenciamento
De Energia
Driver de
Display
Driver da
Camera
Driver de
Bluetooth
Driver de
Cartão (SD)
Driver de
Conexão (PC)
NÚCLEO LINUX
Gerência de
Superfícies
Quadro de
Mídias
SQLite -
Dados
Open GL/S -
Gráficos 3D
FreeType –
Fontes
WebKit -
Rede Internet
SGL -
Gráficos 2D
SSL - Camada
de Segurança
Libc -
Bibliotecas C
BIBLIOTECAS
Gerência de
Pacotes
Gerência de
Telefonia
Gerência de
Recursos
Gerência de
Localização
Serviços de
XMPP
Gerência de
Atividades
Gerência de
Janela
Provedor de
Conteúdo
Sistema de
Visualização
Gerência de
Notificação
QUARO DE APLICAÇÕES
Início Contatos Telefone Navegador ...
APLICAÇÕES
Bibliotecas do
Núcleo Java
ANDROID TEMPO/EXECUÇÃO
Máquina
Virtual Dalvik
12. Linux Kernel
• O Android foi construído sobre uma versão do
kernel do Linux.
• Isso permite que a plataforma
Android tenha alta portabilidade.
• Por ser de código aberto, permite
que talentos individuais e
companhias melhorem-no.
13. Bibliotecas
A próxima camada acima do kernel contém as
bibliotecas nativas do Android.
Essas bibliotecas são todas
escritos em C ou C++ e
compiladas para a arquitetura
de hardware específica
utilizada pelo telefone.
15. Dalvik VM
• Ao invés de usar uma versão da máquina virtual
Java, tal como Java ME, ele usa a sua própria
máquina virtual.
• A máquina virtual Dalvik possui as seguintes
características:
– Poder existir múltiplas instâncias da máquina virtual
simultaneamente;
– Baixo consumo de memória;
– Mais eficiente do que uma JVM.
17. Aplicações
O Android nos fornece um conjunto de
aplicações fundamentais, são elas:
• um cliente de e-mail;
• programa de SMS;
• agenda;
• mapas;
• navegador;
• contatos entre outros.
20. Activity
• A classe android.app.Activity representa
basicamente uma tela da aplicação.
• Uma tela (Activity) é
composta de vários
elementos visuais, os
quais no Android são
representados pela
classe android.view.View
21. Activity
package ifce.android.minicurso;
import android.app.Activity;
import android.os.Bundle;
public class MinicursoActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
23. Classe R
• É uma classe que possui métodos estáticos com
as referências de todos os recursos do projeto.
• A classe R é gerada automaticamente pelo plugin
ADT do eclipse e NUNCA deve ser alterada
manualmente.
24. Classe R
package curso.android;
public final class R {
public static final class attr {
}
public static final class drawable {
public static final int ic_launcher=0x7f020000;
}
public static final class layout {
public static final int main=0x7f030000;
}
public static final class string {
public static final int app_name=0x7f040001;
public static final int hello=0x7f040000;
}
}
25. Método findViewById
Activity Principal (Activity.java)
Button meuBotao01 = (Button)
findViewById(R.id.button1);
@Override
public void onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
View Principal (main.xml)
<LinearLayout>
<Button
android:id="@+id/button1"
android:layout_width="100dp"
android:layout_height="wrap_co
ntent"
android:text="@string/telaInic
ialBotao" /> </LinearLayout>
Arquivo R.java
public static final class id {
public static final int
button1 =0x7f050002; }
26. Android Manifest
• O arquivo AndroidManifest.xml é o alicerce de uma aplicação
Android.
• Este arquivo deve estar na raiz da aplicação.
• Este arquivo serve para:
– Descrever o contexto da aplicação;
– Manipular configurações suportadas pela Aplicação;
– Permissões;
– Entre outras funções.