3. Mercado Mobile
• Existem hoje milhares de
dispositivos móveis
• No mundo são mais de 2,5
bilhões de aparelhos celulares
• O mercado de dispositivos
móveis movimenta cerca de 100
bilhões de dólares por ano
4. Mercado Mobile
• O mercado de jogos para celular
movimentou mais de 1 bilhão de
dólares nos Estados Unidos em
2006
• Este mercado cresce 18% ao ano
• Em 2008 o mercado mundial de
jogos para celular movimentará 8
bilhões de dólares
5. Mercado Mobile
• No Brasil há hoje mais de 100
milhões de celulares em
operação
• O Brasil é o sexto maior mercado
do mundo em celulares
• O mercado de jogos para
celulares no Brasil, movimentou
30 milhões em 2006
6. Mercado Mobile
• Há hoje uma disseminação massiva de
celulares, smartphones, pdas.
• Com o blackberry (por exemplo) pode-se:
– Visualizar emails, planilhas, documentos
– Fazer reuniões usando o MSN
– Gerenciar suas fotos usando o Picasa
Mobile
– Ver suas noticias preferidas com o
Netvibes Mobile
7. Mercado Mobile
• As vendas de smartphones no
Brasil tiveram um crescimento
de 140%
• No mundo a taxa de crescimento
média será de 28% nos
próximos 5 anos
8. Mercado Mobile
• Cada vez mais empresas como a
Apple, SonyEricsoon, Nokia,
investem em tecnologia para
dispositivo móveis
• Os celulares, pdas e
smartphones, a cada dia estão
com um maior poder de
processamento
9. Mercado Mobile
• Com a popularização dos dispositivos
móveis surge a necessidade de
aplicações para essa grande massa
de consumidores
• Segundo a InfoExame de setembro
de 2007, o desenvolvimento de
aplicações para dispositivos móveis é
algo bastante promissor
10. Tipos de Dispositivos
• Celulares
• PDA´s (Personal Digital Assistence)
–Palm
–PocketPC
• Smartphones
–Symbian
–Window Mobile
–Palm
–BlackBerry
11. Tipos de Aplicações
• Jogos 2D e 3D
• Aplicações Corporativas, com
conexão a servidores web
• Aplicações Corporativas off-line
• Aplicações que gerenciam o
conteúdo do dispositivo.
12. Tipos de Aplicações
• Aplicações que usam tecnologias
específicas do dispositivo
–Bluetooth
–GPS
–Captura de Imagem, Vídeo e
Som
14. O que é Java ME
• Java ME é uma coleção de
tecnologias e especificações
(JSRs)
• Java ME usa um subconjuntos de
componentes Java SE, tais como
maquinas virtuais menores e
APIs mais enxutas
15. Arquitetura Java ME
• KVM
• Configurations
–CDC
–CLDC
• Profiles
–MIDP 1.0, 2.0 e 3.0
• Pacotes Opcionais
• JTWI e MSA
16. KVM
• Kilobyte Virtual Machine
• Utilizada em dispositivos mais
limitados para a configuração CLDC
• Ela não possui todos os recursos da
JVM, porém executa em um sistema
de 16 a 32 bits e um total de 160 Kb
a 512 Kb de memória
17. Configurations
• Fornece um ambiente Java
completo.
• O conjunto de classes é pequeno
e deve ser estendido por perfis.
Não implementa classes de
interface com o usuário.
18. Configurations
• Uma configuração é divida em:
–Código proprietário que faz
interface com o sistema
provido pelo dispositivo
–Um conjunto de APIs básicas
(subjconjunto da Java SE)
19. CDC
• Connected Device Configuration
• Utilizada em dispositivos com
maior capacidade de
processamento e memória
• Presente em PDAs, smartphones
• Suporta Ponto Flutuante
20. CLDC
• Connected Limited Device
Configuration
• Utilizada em dispositivos com
recursos limitados de
processamento e memória
• Presente em celulares, pagers
entre outros.
21. CLDC
• CLDC 1.0 Não suporta Ponto
Flutuante
• CLDC 1.1 Suporta Ponto
Flutuante
23. Profiles
• São mais específicas que as
configurações
• Provêem um conjunto de APIs
para auxiliar o desenvolvimento
de aplicações
24. Profiles
• Tipos:
–Foundation Profile: usado em
dispositivos que possuem CDC
–MIDP: usado em dispositivos
que possuem CLDC
25. Profiles
–Information Module Profile
(IMP): subset do MIDP, para
dispositivos sem capacidade
gráfica
–Personal Profile (PP):
dispositivos com capacidades
gráficas avançadas
26. MIDP
• Mobile Information Device Profile
• Prove um conjunto de APIs que
podem ser utilizadas no
dispositivo
• MIDP 1.0
• MIDP 2.0
• MIDP 3.0
27. MIDP 1.0
• Prove API para manipulação de
–UI
–Conexão HTTP, e Socket
–RMS
28. MIDP 2.0
• Evolução do MIDP 1.0, trazendo
APIs adicionais, para facilitar o
desenvolvimento de aplicações
• GameAPI
• Media
• HttpsConnection
• Push-Registry
29. MIDP 3.0
• Traz um conjunto de APIs para
facilitar ainda mais o
desenvolvimento
• Pode se ter várias MIDLETs na
mesma aplicação
• Jogos mais ricos
• Melhorias nas parte de UI e de
RMS
30. Pacotes Opcionais
• São bibliotecas para o
desenvolvimento de funções
específicas.
• O desenvolvedor escolhe qual pacote
irá utilizar
• São bibliotecas, que, em geral,
dependem de recursos presentes em
dispositivos específicos (Bluetooth,
Suporte a 3d....)
31. Pacotes Opcionais
• JSR-75: PDA Profile for J2ME
• JSR-120: WMA - Wireless
Messaging API
• JSR-135: MMAPI - Mobile Media
API
• JSR-172: WSA - Web Services
• JSR-179: Location API
32. Pacotes Opcionais
• JSR-184: M3G - Mobile 3D
Graphics API
• JSR-229: Payment API
• JSR-172: JAXP XML Parser
• JSR-226: Scalable 2D Vector
Graphics API
33. JTWI
• JSR 185 - Java Technology for
the Wireless Industry
• Tentativa resolver:
–Fragmentação do Mercado
–Diferenças de implementações
entre os fabricantes
34. MSA
• JSR248 - Mobile Service
Architecture
• Evolução do JTWI
• Engloba especificações mais
recentes e nova realidade dos
celulares
38. MIDLET
• São aplicações escritas para o
perfil MIDP.
• Deve estender
javax.microedition.midlet.MIDlet
• São distribuídas em JARs, similar
a distribuição JavaSE
39. MIDLET
• MIDLET SUITE:
–JAR que possui mais de uma
MIDLET
–As midlets do JAR, podem
compartilhar recursos e classes
dentro do mesmo JAR
40. MIDLET
• Dentro do JAR que contém a
MIDLET deve haver o arquivo
manifesto.
• Além do Manifesto é
acompanhado ao JAR o descritor
da aplicação(JAD).
41. MIDLET
• Nos descritores, são definidos os
atributos da aplicação como:
–MIDlet-Name
–MIDlet-Version
–MIDlet-Icon
–MicroEdition-Profile
–MicroEdition-Configuration