@2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

45
@2011 Éfren L. Souza 1 Plataforma Android Uma Visão Geral para Desenvolvedores

Transcript of @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Page 1: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 1

Plataforma Android

Uma Visão Geral para Desenvolvedores

Page 2: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 2

O que é o Android?

Android é uma pilha de softwares para dispositivos móveis que inclui um sistema operacional, bibliotecas e aplicações essenciais.

Page 3: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 3

OHA (Open Handset Alliance)Grupo de organizações liderado pela

Google para desenvolver dispositivos móveis

Page 4: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 4

Smartphones

HTC G1,Droid,Tattoo

Motorola Droid (X)

Suno S880 Samsung Galaxy Sony Ericsson

Page 5: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 5

Tablets

Velocity Micro Cruz Gome FlyTouch Acer beTouch

Dawa D7

Toshiba Android SmartBook

Cisco Android Tablet

Page 6: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Algumas características… Android SDK:

Ferramentas de desenvolvimento Emulador Conjunto de bibliotecas

Linguagem de programação: Java

Máquina virtual: Dalvik (Kernel GNU/Linux)

@2011 Éfren L. Souza 6

Page 7: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Mihail L. Sichitiu 7

Page 8: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Mihail L. Sichitiu 8

Page 9: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 9

Arquitetura

Page 10: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 10

Arquitetura (Applications)

Disponibiliza um conjuntos de aplicações de núcleo: Cliente de Email Programa SMS Calendário Browser Lista de Contatos

Todas essas aplicações são escritas em Java.

Page 11: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 11

Arquitetura (App Framework)

Possibilita e facilita o reuso de componentes

Desenvolvedores têm acesso completo às mesmas APIs usadas pelas aplicações de núcleo

Page 12: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 12

Arquitetura (Libraries)

Disponibiliza um conjunto de bibliotecas C/C++ usado pelas outras camadas do sistema

O desenvolvedor acessa essas bibliotecas através da camada application framework

Page 13: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 13

Arquitetura (Runtime)

Core Libraries Fornece funcionalidades da linguagem Java APIs

Estruturas de dados Acesso à arquivos Acesso à rede

Page 14: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 14

Arquitetura (Runtime)

Dalvik Virtual Machine Desenvolvido para que um dispositivo possa

executar várias MVs eficientimente

Page 15: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

@2011 Éfren L. Souza 15

Arquitetura (Linux Kernel)

Conta com Kernel do Linux para Gerenciar processos e memória

Conexões de rede

Modelo de driverAbstrai a ligação entre o hardware e as

outras camadas

Page 16: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

DESENVOLVENDO APLICATIVOS PARA

ANDROID

@2011 Éfren L. Souza 16

Page 17: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

17

Page 18: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Fundamentos das Aplicações Cada aplicação android vive em seu

próprio mundo Processo próprio Máquina virtual própria Próprio ID de usuário Linux

@2011 Éfren L. Souza 18

Page 19: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Componentes das Aplicações Atividades (Activities)

Apresenta uma interface Uma aplicação pode ter uma ou várias

atividades A atividade pode ser comprada à uma janela

Serviços (Services) Não possuem interface Executam em background Não interferem em outros serviços ou

atividades

@2011 Éfren L. Souza 19

Page 20: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Hierarquia de visão Você define uma Activity usando uma

hierarquia de View e ViewGroup

@2011 Éfren L. Souza 20

Page 21: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Alguns Views Form Stuff, Spinner, Auto Complete

@2011 Éfren L. Souza 21

Page 22: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Alguns Views Date Picker, Time Picker

@2011 Éfren L. Souza 22

Page 23: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Alguns Views Map View e Web View

@2011 Éfren L. Souza 23

Page 24: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Notificações Toast, Status Bar e Dialog Notifications

@2011 Éfren L. Souza 24

Page 25: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Layout

@2011 Éfren L. Souza 25

Page 26: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Widgets É uma aplicação que pode ser embutida

em outras aplicações É mais comum estar embutida no Home

Screen

@2011 Éfren L. Souza 26

Page 27: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Widgets

@2011 Éfren L. Souza 27

Page 28: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

DO QUÊ PRECISO PARA DESENVOLVER PARA

ANDROID?

@2011 Éfren L. Souza 28

Page 29: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Precisa instalar... Sistema Operacional

Windows, MAC OS ou Linux JDK 5.0 ou superior Eclipse

ADT (Android Development Tools) SDK Starter Package

Somente o núcleo de desenvolvimento Usado para baixar os outros componentes

@2011 Éfren L. Souza 29

Page 30: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

SDK Starter Package SDK Tools (pré-instalado) Plataformas Android SDK Add-Ons USB Driver para Windows Exemplos Documentação

@2011 Éfren L. Souza 30

Page 31: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Android Virtual Device (AVD)

@2011 Éfren L. Souza 31

Page 32: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

O CLÁSSICO “HELLO WORLD”

@2011 Éfren L. Souza 32

Page 33: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Criar um novo projeto Android (1)

@2011 Éfren L. Souza 33

Page 34: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Criar um novo projeto Android (2)

@2011 Éfren L. Souza 34

Page 35: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Código da Aplicação

@2011 Éfren L. Souza 35

Page 36: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Executando a Aplicação

@2011 Éfren L. Souza 36

Page 37: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Trabalhando com o XML (1)

@2011 Éfren L. Souza 37

res/layout/main.xml

res/values/strings.xml

Page 38: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Trabalhando com o XML (2)

@2011 Éfren L. Souza 38

Page 39: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Como Vender Minha Aplicação? Existem duas formas:

Cobrar pelo download Colocar publicidade

Distribuindo a aplicação

Publicidade na aplicação

@2011 Éfren L. Souza 39

Page 40: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Aplicações de Sucesso ColorNote

@2011 Éfren L. Souza 40

Page 41: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Aplicações de Sucesso IBeer

@2011 Éfren L. Souza 41

Page 43: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Aplicações de Sucesso IFart iFart developer makes $40,000 in 2 days (

http://www.edibleapple.com/2008/12/28/ifart-developer-makes-40000-in-2-days/)

@2011 Éfren L. Souza 43

Page 44: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Para finalizar… É uma plataforma de desenvolvimento

fácil e livre Android vs IOS Uma boa ideia (às vezes não tão boa

assim), pode lhe deixar rico!!!

@2011 Éfren L. Souza 44

Page 45: @2011 Éfren L. Souza1 Plataforma Android Uma Visão Geral para Desenvolvedores.

Obrigado!

@2011 Éfren L. Souza 45