Este documento discute as principais tecnologias para desenvolvimento de aplicativos móveis, comparando J2ME, BREW e Symbian C++. Ele explica as configurações e perfis do J2ME, como MIDP e CLDC, e fornece detalhes sobre o mercado brasileiro de celulares e as ferramentas de desenvolvimento para cada tecnologia.
2. Projeto code-blood
Introdução
Esta palestra se destina a desenvolvedores,
tomadores de decisão e analistas comerciais
que estejam interessados no mundo wireless.
Vamos explorar e comprar as tecnologias J2ME,
Brew e C++ Symbian.
Ao final vamos ter uma noção de qual é a
melhor tecnologia para o seu projeto.
3. Projeto code-blood
Antes de começar
• Avaliar o publico alvo.
• Com base no publico alvo definir a plataforma e
tecnologia ser utilizada.
• Levantar limitações dos dispositivos alvo.
• Levando em conta as limitações identificar os
20%-80%
20% da aplicação que fazem 80% da funcionalidades.
• Pensar nas funcionalidades que a plataforma
do celular pode agregar.
• Adequar o projeto as limitações da plataforma
4. Projeto code-blood
O mercado brasileiro
• No Brasil 49.143,46 destes 38.196.304(77,72%)
são pré-pagos e 10.947.152(22,28%) são pós-
pagos.
• Destes 14.670.300 são CDMA e 8.979.588 são
GSM
• O numero de aparelhos GSM no ultimo ano
passou de 2.166.068(6,02%)(mar/2003) para
8.979.588(18,27%) (mar/2004)
• Estes números são da Anatel e vão ser
importantes na hora de escolher a tecnologia
que vamos desenvolver.
5. Projeto code-blood
Java 2 Micro Edition
• J2ME é a versão de Java da Sun destinada a
dispositivos com recursos limitados de hardware
tais como : PDAs, Telefones celulares entre
outros.
• Para possibilitar, um alto grau de flexibilidade , o
J2ME passou a utilizar um esquema de
configurações e profiles
7. Projeto code-blood
Profile- MIDP
• As aplicações escritas com suporte ao
MIDP são chamadas de MIDlet.
• Os MIDlets que serão portáveis entre
todos os celulares que suportem o
profile MIDP.
• Os aparelhos podem ainda prover
bibliotecas que implementam suporte
para características específicas do
celular.
8. Projeto code-blood
MIDP 2.0
• Novos recursos de rede com HTTPS, serial, sockets,
server sockets, datagrams e push.
• Novos recursos de segurança
Permite assinatura de aplicações e privilégios especiais.
• API para desenvolvimento de jogos.
• Distribuição de aplicações via wireless(OTA).
9. Projeto code-blood
MIDP 2.0
• Novos recursos de interface gráfica
Suporte a imagens transparentes.
Configuração do gerenciador de layout.
Criação de componentes pelo programador.
• Suporte para execução de sons
Suporte a geração de tons (obrigatório).
Suporte a .wav e .mid (opcional).
Totalmente compatível com JMF(JSR-135).
10. Projeto code-blood
Outros Profiles/APIs
• CLDC 1.1
• Java™ Technology for the Wireless Industry
• WMA 1.1 (JSR-120)
• MMAPI 1.1 (JSR-135)
• kSOAP, kXML
• J2ME Web Services Specification
11. Projeto code-blood
MMAPI
• Geração de tons (obrigatório).
• Suporte a MIDI, com controle de execução
(obrigatório).
• Geração e playback de .wav (opcional).
• Mpeg player (opcional).
12. Projeto code-blood
Outros Profiles/APIs
• Java™ Technology for the Wireless Industry
• WMA 1.1 (JSR-120)
• MMAPI 1.1 (JSR-135)
• 3D API
• CLDC 1.1
13. Projeto code-blood
Ferramenta de desenvolvimento – J2ME
• J2ME Wireless Toolkit – é um kit básico que
contém bibliotecas e emuladores necessários para
o desenvolvimento.
• Eclipse
• NetBeans 3.5
• Sun ONE Studio 5, Mobile Edition
• Borland JBuilder x
14. Projeto code-blood
BREW
Binary Runtime Environment
• É uma plataforma proprietária da Qualcomm para
dispositivos wireless.
• As aplicações rodam apenas em celulares com Qualcomm
CDMA chipsets em rede CDMA.
• Possui várias APIs que permitem um bom aproveitamento
das capacidades do celular. Ex: MP3, MPEG4, USB,
BlueTooth, Global Position System One.
15. Projeto code-blood
BREW
Desenvolvimento de Aplicações
• Aplicações BREW(applets) são desenvolvidas usando BREW SDK.
• Você também precisa do único ambiente de desenvolvimento
suportado pelo BREW, o Visual C++ versão 6.0 ou mais nova.
• Todas as aplicações precisam passar pelo processo de teste da
Qualcomm, o True Brew. Este processo é caro.
• O modelo de distribuição do Brew impossibilita a pirataria de
software.
• Para se tornar “Authenticated BREW developer” o desenvolvedor
tem que adquirir um certificado da VeriSign class 3 que custa
$400,00 por ano.
16. Projeto code-blood
Symbian - Nativo
• As aplicações para o sistema operacional Symbian são
escritas em C++.
• Para desenvolver em Symbian o desenvolvedor pode
usar:
Visual C++
Borland C++
Metroworks CodeWarrior C++
• As aplicações têm total controle sobre os recursos do
celular.
• Por ser compilado para código nativo as aplicações
executam muito mas rápido do que o J2ME.
17. Projeto code-blood
Symbian - Nativo
• As aplicações podem e de devem ser certificadas para
garantir a qualidade e segurança do código.
• As aplicações têm acesso a informações como o PIN do
celular, o que permite a elaboração de sistemas anti-
pirataria melhores que o do J2ME
• O processo de desenvolvimento é mais demorado e a
curva de aprendizado é maior.
• Praticamente todos os celulares que usam Symbian como
sistema operacional têm suporte a J2ME
18. Projeto code-blood
Prós e Contras – J2ME
Prós Contras
J2ME
Fácil aprendizado e programação, segura, Baixa performance se comparado com sistemas
portável para tecnologias diferentes, fácil nativos, limitado acesso aos recursos do celular,
integração com sistemas legados e ferramentas fácil pirataria e grande fragmentação da
de desenvolvimento gratuitas. plataforma.
BREW
Rápido, bastante acesso aos recursos do Desenvolvimento difícil, o desenvolvedor fica
celular, ótimo sistema de distribuição e de anti- preso a uma tecnologia proprietária e o processo
pirataria e relativamente seguro. de desenvolvimento é caro
Symbian C++
Rápido, bastante acesso aos recursos do celular Ambiente inseguro, difícil aprendizado, sistema
e desenvolvimento relativamente fácil e barato. anti-pirataria pouco aberto.