desenvolvimento para android - bento gonçalves (08/2011)

Post on 16-Jan-2015

1.638 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Slides do workshop sobre Desenvolvimento para Android, apresentado no Tchêlinux Bento Gonçalves (13/08/2011). http://tchelinux.org/site/doku.php?id=evento_2011_agosto_bento

TRANSCRIPT

Desenvolvimento para

4 Frases que o dono de um Android escuta [todos os dias]

Que marca de iPhone é esse seu ?

Nossa! Com esse dinheiro dava até pra comprar um iPhone!

É uma imitação do iPhone?

A bateria do meu Nokia 5125 dura duas semanas a fio. E eu mando SMS!

Quem sou eu

História do AndroidOutros OSs para dispositivos móveis

Coisas boas do Android

Coisas ruins do Android

O que é o AndroidMercado Mobile

Paradigmas de desenvolvimento

Estrutura de um aplicativo Android

Conceitos utilizados no desenvolvimentoAmbiente e Ferramentas

Hello World Como debugar uma aplicaç!ao móvel

Publicação de Apps no Android Market

Sistemas Operacionais(para dispositivos móveis)

• Visão tradicional‒ Modelo fechado‒ Symbian, PalmOS, WinMo,

Blackberry‒ Linux (sem padrões)‒ JavaME

Sistemas Operacionais(para dispositivos móveis)

• Visão atual‒ Modelo aberto‒ iOS, Android, WinMO,

Blackberry, Symbian‒ Desenvolvimento nativo‒ “Apps” & “Markets”

O Android é um “Software Stack”

Software Stack

• Aplicações

• Middleware

• Sistema Operacional

Parte Linux

• Kernel 2.6• Drivers, memória, rede,

gerenciamento de processos

• Sem glibc (custom)• Sem “unix utils”• Sem Xwindow

Parte Middleware

• Bibliotecas de baixo nível• SSL, OpenGL, Codecs,

Webkit, SQLite, Dalvik

• Application Framework• Activity Mngr, Location Mngr,

Notification Mngr, Telephony

Parte Aplicações

• Home• Contatos• Telefone• Browser• Gmail• Maps• Market (...)

Dizem que Android == Java...

Porque Android != Java

• Android *usa* Java• Implementa parte da

especificação Apache Harmony• dex != class• apk != jar• Dalvik != Oracle JVM• Patentes

Dalvik, Eyjafjörður, Islândia

Dalvik

• Apache Harmony• Otimizado para as

restrições dos dispositivos móveis

• Não precisa de SWAP• Multiplas VMs

https://sites.google.com/site/io/dalvik-vm-internals

Um pouco de história [pic related]

Agosto/2005 – Google adquire uma empresa chamada “Android Inc.”, de Palo Alto (Califórnia) e fundada em

Outubro/2003

Setembro/2007

Novembro/2007

Android 1.0 (Sem nome)

Android 1.0 e 1.1

• Set/2008 e Fev/2009• Primeira versão (e update)• HTC G1 e HTC Dream• Early Adopters

Android 1.5 (Cupcake)

Android 1.5

• Abril/2009• Widgets• Gravação de video• MPEG4• Teclados de terceiros• HTC Hero

Android 1.6 (Donut)

Android 1.6

• Set/2009• Android Market• Suporte a CDMA e VPNs• Navegação GPS• Text-to-speech

Android 2.0 e 2.1 (Eclair)

Android 2.0 e 2.1

• Out/2009 e Jan/2010• Melhorias na câmera• Melhorias no navegador• Desempenho• Motorola Milestone• Nexus One

Android 2.2 (Froyo)

Android 2.2

• Maio/2010• Desempenho• Compilador JIT• V8• Tethering e Hotspot Wi-Fi nativo• Apps no SD• Adobe Flash• Telas com alto DPI (320)

Android 2.3 (Gingerbread)

Android 2.3

• Dez/2010• Nova Interface• Desempenho (GC concorrente)• SIP nativo (VoIP) e chat por video• NFC• Download Manager• Múltiplas câmeras• NDK melhorado• Nexus S

Android 3.0, 3.1 e 3.2 (Honeycomb)

Android 3.x

• Fev-Mai-Jul/2011• Suporte exclusivo a Tablets (Sistema

totalmente redesenhado)• Dispositivos USB (3.1)• Suporte a novos hardwares• Modo de compatibilidade (3.2)• Motorola XOOM

Android 4.0? (Ice Cream Sandwich)

O mercado Android hoje

Vendas - Comparativo

Smartphones - EUA

~500.000 ativações por dia

Estranhas patentes

Incidentes de segurança

Fragmentação (Agosto 2011)

Pirataria

Comunidade

Concorrência

Desenvolver para dispositivos móveis é quebrar paradigmas

Você não usa o celular como usa um computador !

Há coisas que só podem ser feitas com um celular!

Você não pode [nem deve] prever onde e quando seu App será usado.

Bons desenvolvedores conhecem vários programas

Bons desenvolvedores conhecem outros desenvolvedores

Bons desenvolvedores conhecem vários dispositivos

Apps que resolvem um problema

Apps que resolvem um problema que os usuários não sabem que tem

Feedback com bom senso

Android Building Blocks

Application

Activities

Views e Widgets

Services

Foreground Services

Broadcast Receivers

Notifications

Content Providers

Data Storage

• Shared Preferences• Internal Storage• External Storage• SQLite• Network Connection

Intents

Intents implícitos e intent filter

Resources

• Drawables• Layouts• Values• XML• Menu• Animations• RAW

• Tamanhos e densidades de telas• Orientação do dispositivo• Funções do dispositivo (Teclado, Touch)• Localização• Versão do Android

Alternative Resources

AndroidManifest.xml

Debug e testeEmulador x Device

Publicando sua App

• Chaves• Assinatura• Alinhamento• Versionamento• Teste• Mais teste• APK

Android Market

• Regras do Market• Conta de desenvolvedor• US$ 25,00• Licenciamento• In-App Billing• Teste• Bom senso• Usuários

Mais Recursos

• http://developer.android.com• http://portalandroid.org• http://www.androidbrasil.com• http://diariodoandroid.com.br• http://www.euandroid.com.br• http://vidamovelblog.com

?

Obrigado!

ciello [at] gmail [dot] com@gustavociello

top related