plataformas para desenvolvimento em celulares

35
Plataformas para desenvolvimento em celulares André Gomes Lamas Otero São Paulo, 19 de julho de 2009 [email protected] m.br

Upload: andre-otero

Post on 06-Jun-2015

1.664 views

Category:

Technology


0 download

DESCRIPTION

Slides da apresentação realizada em 19 de junho de 2009 na feira técnica da ETEC São Paulo.

TRANSCRIPT

Page 1: Plataformas Para Desenvolvimento Em Celulares

Plataformas para desenvolvimento em celulares

André Gomes Lamas Otero

São Paulo, 19 de julho de 2009

[email protected]

Page 2: Plataformas Para Desenvolvimento Em Celulares

Por que ?

Mercado em forte crescimento– Smartphones– Celulares 3G– Celulares em geral

Mercado pouco explorado Potencial de massificação inexplorado

Page 3: Plataformas Para Desenvolvimento Em Celulares

Filosofia diferente...

Pouca memória... Tela pequena... Não tem teclado... CPU lenta...

Page 4: Plataformas Para Desenvolvimento Em Celulares

... novas possibilidades

Marketing Redes sociais Automação comercial Jogos Produtividade

Page 5: Plataformas Para Desenvolvimento Em Celulares

Quantidade de acessos

0

20

40

60

80

100

120

140

160

2003 2004 2005 2006 2007 2008

Telefones Fixos

Celulares

TV por Assinatura

Banda larga

Usuários de internet

Page 6: Plataformas Para Desenvolvimento Em Celulares

Quantidade de Dispositivos 3G

0

1.000.000

2.000.000

3.000.000

4.000.000

5.000.000

6.000.000

3T08

4T08

jan/0

9fe

v/09

Mar

/09*

abr/0

9

WCDMA

EVDO

Terminal de Dados

Total

Page 7: Plataformas Para Desenvolvimento Em Celulares

Frentes de atuação (1/2)

Desenvolvimento de programas / jogos– Exige conhecimento sobre o modelo a ser

desenvolvido– Exige um ciclo complexo de testes para

certificação– Canais específicos para distribuição

Page 8: Plataformas Para Desenvolvimento Em Celulares

Frentes de atuação (2/2)

Desenvolvimento de sites desenhados para celulares– Tempo para desenvolvimento menor– Não exige conhecimento sobre o modelo de

celular que irá acessar o site– Distribuição pela Internet– Utilização de frameworks especificos (Yahoo

BluePrint, Nokia WRT)

Page 9: Plataformas Para Desenvolvimento Em Celulares

Desenvolvimento de programas

Várias plataformas– Java ME– C++– Symbiam– Python– Qt (framework em C++)– Objective C (framework do iPhone)– Java (Android)– .Net Compact Framework– Adobe Flash Light

Page 10: Plataformas Para Desenvolvimento Em Celulares

Java ME (1/3)

Desenvolvido pela Sun Formado pelos conjuntos:

– Connected, Limited Device Configuration (CLDC)– Mobile Information Device Profile (MIDP)– Diversas “Java Specification Requests”

Cada fabricante implementa os perfis e as JSR para cada modelo que distribuí

Page 11: Plataformas Para Desenvolvimento Em Celulares

Java ME (2/3)

Você pode utilizar NetBeans, Eclipse, ou qualquer outra IDE java para desenvolver e usar o toolkit básico da Sun para testar (Sun Java (TM) Wireless Toolkit 2.5.2_01 for CLDC)

Funciona na grande maioria de modelos de celular

A velocidade fica comprometida em celulares mais simples

Page 12: Plataformas Para Desenvolvimento Em Celulares

Java ME (3/3)

Para cada modelo de celular que você quiser desenvolver você precisa do SDK do fabricante para testes...

Para você distribuir uma aplicação JavaME você deve enviar para um parceiro da Sun para testes e assinatura (deve custar muita grana, pois não tem essa informação em lugar nenhum!!!)

Page 13: Plataformas Para Desenvolvimento Em Celulares

C++

Alguns fabricantes disponibilizam SDKs específicos para cada modelo...

... Ou então o fabricante do processador do celular disponibiliza o SDK, por exemplo, celulares equipados com processadores Qualcomm utilizam um SDK chamado Brew (mais comum nos EUA e UE)

Usado em projetos específicos...

Page 14: Plataformas Para Desenvolvimento Em Celulares

Symbiam (1/3)

Primeiro SO para celulares, criado pela Psion para a série Palm

Nokia iniciou a utilização da plataforma Symbiam 60 em seus Smartphones (o 1o foi o Nokia 7650) em 2002

Apoio de diversos fabricantes: Nokia, Lg, Sansung

Page 15: Plataformas Para Desenvolvimento Em Celulares

Symbiam (2/3)

Nokia compra a Symbiam e inicia um processo de abertura do código fonte da plataforma

Nokia distribuí gratuitamente todas as ferramentas de desenvolvimento para Symbiam

3Q08 Nokia lança S60 5ª edição, incluindo a Nokia no mercado de touch screen com o Nokia 5800 eXpressMusic

Page 16: Plataformas Para Desenvolvimento Em Celulares

Symbiam (3/3)

Possuí programa de certificação para desenvolvedores

Possuí programa para assinatura digital dos programas a serem distribuídos (custa USD$200 anuais o certificado digital)

Distribuição pela Ovi Store https://www.symbiansigned.com/

Page 17: Plataformas Para Desenvolvimento Em Celulares

Python

Linguagem de programação muito fácil de usar

Multi-plataforma Interpretada (mas pode ser compilada) OpenSource Possuí um porte para a série S60

Page 18: Plataformas Para Desenvolvimento Em Celulares

PyS60

http://wiki.opensource.nokia.com/projects/Python_for_S60

http://www.mobilenin.com/pys60/menu.htm http://sourceforge.net/projects/pys60

– Fontes– Binários– Documentação

Page 19: Plataformas Para Desenvolvimento Em Celulares

PyS60

Page 20: Plataformas Para Desenvolvimento Em Celulares

PyS60

Page 21: Plataformas Para Desenvolvimento Em Celulares

Slide 21

PyS60 - UI framework – Components

Page 22: Plataformas Para Desenvolvimento Em Celulares

Slide 22

PyS60 - UI framework – Components

Page 23: Plataformas Para Desenvolvimento Em Celulares

PyS60

Demostração de python em S60

Page 24: Plataformas Para Desenvolvimento Em Celulares

PyS60

Envio de SMSimport appuifw

import messaging

messaging.sms_send("+551188888888", u"oi!!")

appuifw.note(u"Mensagem Enviada", "info")

Page 25: Plataformas Para Desenvolvimento Em Celulares

Qt

Qt é um framework C++ para construção de interfaces gráficas

Muito comum em aplicações *nix (Unix, Linux, Solaris, etc...)

Muilt-plataforma (tem pra win32 também) Possuí um porte experimental para S60

Page 26: Plataformas Para Desenvolvimento Em Celulares

iPhone

SDK exclusivo para desenvolvedores cadastrados na Apple (custa USD$99 anuais)

Roda somente em OsX 10.5 (ou seja um Mac novo...)

Publicação exclusiva pela AppStore (passa por “revisão”* da Apple)

*entenda-se censura

Page 27: Plataformas Para Desenvolvimento Em Celulares

Android

Plataforma para celulares do Google (que comprou empresa de desenvolvimento homônima)

OpenSource e gratuíta (para desenvolver...) Apoio de diversos fabricantes: Lg, Samsung,

Motorola, Toshiba, Huawai, HTC, Asus, Acer Distribuição pelo Android Market (custa

USD$ 25 para se registrar)

Page 28: Plataformas Para Desenvolvimento Em Celulares

.Net Compact Framework

Porte do .Net para Windows CE (hoje chamado de Windows Mobile)

Praticamente igual ao desenvolvimento em .Net para desktops

Page 29: Plataformas Para Desenvolvimento Em Celulares

Adobe Flash Light

Porte da Adobe para o Player Flash A maioria dos celulares hoje em dia possuí

suporte para Flash Utilizado geralmente em:

– Jogos– Screen savers

Pode ou não ser assinado para distribuíção

Page 30: Plataformas Para Desenvolvimento Em Celulares

Desenvolvimento de Sites

Várias plataformas– Yahoo BluePrint– Nokia WRT

Page 31: Plataformas Para Desenvolvimento Em Celulares

Yahoo BluePrint

Utiliza serviços do Yahoo pra hospedagem e Publicação

Notação XML “Roda” dentro do Yahoo2Go http://mobile.yahoo.com/developer

Page 32: Plataformas Para Desenvolvimento Em Celulares

Nokia WebRuntime

Utiliza HTML, CSS e JavaScript como linguagens Você acessa os recursos do celular pelo

JavaScript (Extensões da Nokia) Para o usuário é uma aplicação Nativa, mas para

o desenvolvedor é mais fácil fazer http://www.forum.nokia.com/

Technology_Topics/Web_Technologies/Web_Runtime/

Page 33: Plataformas Para Desenvolvimento Em Celulares

ScreenCasts

WRT : https://admin.emea.acrobat.com/_a799911421/p80534961/

PyS60: https://admin.emea.acrobat.com/_a799911421/p58702778/

Page 34: Plataformas Para Desenvolvimento Em Celulares

Dúvidas ?

Page 35: Plataformas Para Desenvolvimento Em Celulares

Muito Obrigado!