minicurso de desenvolvimento android - iguatu - ce

34
MINICURSO DE DESENVOLVIMENTO DE APLICAÇÕES PARA A PLATAFORMA Google

Upload: ronildo-oliveira

Post on 05-Jun-2015

741 views

Category:

Education


5 download

DESCRIPTION

Minicurso ministrado na II EDUCITRA (Encontro de Educação, Ciência e Trabalho) na cidade de Iguatu - Ceará

TRANSCRIPT

Page 1: Minicurso de Desenvolvimento Android - Iguatu - CE

MINICURSO DE DESENVOLVIMENTO DE APLICAÇÕES PARA

A PLATAFORMA Google

Page 2: Minicurso de Desenvolvimento Android - Iguatu - CE

Apresentação

Ministrante: Ronildo Oliveira da Silva

• Cursando o oitavo semestre do curso IntegradoInformática IFCE Campus Cedro.

• Monitor de Programação Estruturada no IFCECampus Cedro.

• Programador de aplicações desktop e móveis.

Page 3: Minicurso de Desenvolvimento Android - Iguatu - CE

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.

Page 4: Minicurso de Desenvolvimento Android - Iguatu - CE

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)

Page 5: Minicurso de Desenvolvimento Android - Iguatu - CE

Android e a OHA

• Open Handset Alliance™(OHA) é um grupoformado por gigantes do mercado de telefonia decelulares liderados pelo Google que revelou aplataforma Open Source Android e uma versão daSDK em 12 de novembro de 2007.

Page 6: Minicurso de Desenvolvimento Android - Iguatu - CE

T-Mobile G1

Page 7: Minicurso de Desenvolvimento Android - Iguatu - CE

Open Handset Alliance™

Atualmente são 84 empresas participantes!Acesse: http://www.openhandsetalliance.com/oha_members.html para mais informações.

Page 8: Minicurso de Desenvolvimento Android - Iguatu - CE

Versões do Android

Page 9: Minicurso de Desenvolvimento Android - Iguatu - CE

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)

Page 10: Minicurso de Desenvolvimento Android - Iguatu - CE

Estrutura da Aplicação Android

• Arquitetura do Android

• Linux Kernel

• Bibliotecas

• Aplicações

• Android Runtime

• Dalvik VM

Page 11: Minicurso de Desenvolvimento Android - Iguatu - CE

Arquitetura da Plataforma Android

Driver de USBDriver do Teclado

Driver de RedeSem fio

Drivers deÁudio

Gerenciamento De Energia

Driver de Display

Driver daCamera

Driver deBluetooth

Driver deCartão (SD)

Driver deConexão (PC)

NÚCLEO LINUX

Gerência deSuperfícies

Quadro deMí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 dePacotes

Gerência deTelefonia

Gerência deRecursos

Gerência deLocalização

Serviços deXMPP

Gerência deAtividades

Gerência de Janela

Provedor deConteúdo

Sistema deVisualização

Gerência deNotificaçã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

Page 12: Minicurso de Desenvolvimento Android - Iguatu - CE

Linux Kernel

• O Android foi construído sobre uma versão dokernel 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.

Page 13: Minicurso de Desenvolvimento Android - Iguatu - CE

Bibliotecas

A próxima camada acima do kernel contém asbibliotecas 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.

Page 14: Minicurso de Desenvolvimento Android - Iguatu - CE

Android Runtime

• Core libraries;

• Dalvik Virtual Machine.

Page 15: Minicurso de Desenvolvimento Android - Iguatu - CE

Dalvik VM

• Ao invés de usar uma versão da máquina virtualJava, tal como Java ME, ele usa a sua própriamáquina virtual.

• A máquina virtual Dalvik possui as seguintescaracterísticas:– Poder existir múltiplas instâncias da máquina virtual

simultaneamente;

– Baixo consumo de memória;

– Mais eficiente do que uma JVM.

Page 16: Minicurso de Desenvolvimento Android - Iguatu - CE

Dalvik VM

Código JAVA

DalvikExecutable

Compilador Compilador JAVA

JAVA Byte Code

Compilador Compilador DEX

Dalvik Byte Code

APK

Page 17: Minicurso de Desenvolvimento Android - Iguatu - CE

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.

Page 18: Minicurso de Desenvolvimento Android - Iguatu - CE

Instalação e Configuração do Eclipse e do Android

Page 19: Minicurso de Desenvolvimento Android - Iguatu - CE

Conceitos básicos

• Activity

• R.java

• Método findViewById

• Manifest

• Layout

Page 20: Minicurso de Desenvolvimento Android - Iguatu - CE

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

Page 21: Minicurso de Desenvolvimento Android - Iguatu - CE

Activitypackage 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);

}

}

Page 22: Minicurso de Desenvolvimento Android - Iguatu - CE

Ciclo

de

vida d

e u

ma A

ctivity

Activity

onCreate()

onStart()

onResume()

Activity Iniciada

Outra Activity é Iniciada

onPause()

A Activity principal não é mais visível

onStop()

onDestroy()

A Activity principal é destruída

O programa precisa de mais memória

onRestart()

A Activity perde o foco

A Activity perde o foco

A Activity é reaberta através do usuário

O processo é destruído

Page 23: Minicurso de Desenvolvimento Android - Iguatu - CE

Classe R

• É uma classe que possui métodos estáticos comas referências de todos os recursos do projeto.

• A classe R é gerada automaticamente pelo pluginADT do eclipse e NUNCA deve ser alteradamanualmente.

Page 24: Minicurso de Desenvolvimento Android - Iguatu - CE

Classe Rpackage 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;

}

}

Page 25: Minicurso de Desenvolvimento Android - Iguatu - CE

Método findViewByIdActivity 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; }

Page 26: Minicurso de Desenvolvimento Android - Iguatu - CE

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.

Page 27: Minicurso de Desenvolvimento Android - Iguatu - CE

Android Manifest

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="curso.android"

android:versionCode="1"

android:versionName="1.0" >

<uses-sdk android:minSdkVersion="7" />

<application

android:icon="@drawable/ic_launcher"

android:label="@string/app_name" >

<activity android:name=“CursoAndroid"

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>

Page 28: Minicurso de Desenvolvimento Android - Iguatu - CE

Layout

Page 29: Minicurso de Desenvolvimento Android - Iguatu - CE

Mãos à obra!

Page 30: Minicurso de Desenvolvimento Android - Iguatu - CE

Hello World!!

Page 31: Minicurso de Desenvolvimento Android - Iguatu - CE

Widgets

Page 32: Minicurso de Desenvolvimento Android - Iguatu - CE

Utilizando Recursos Estudados

Page 33: Minicurso de Desenvolvimento Android - Iguatu - CE

Referências Bibliográficas

Page 34: Minicurso de Desenvolvimento Android - Iguatu - CE

Obrigado

• E-mail:

[email protected]

[email protected]

http://www.slideshare.net/TheRonildoOliveira