05 dezembro 2008

Guerra de canivetes suícos: Smartphones

A briga dos smartphones (telefones celulares mais avançados) está pegando fogo com a chegada de grandes concorrentes nesta indústria. Conheça as principais tecnologias e sua participação no mercado (dados de 2008).

As chamadas plataformas de celulares são basicamente os Sistemas Operacionais (SO) construidos sobre diferentes tipos de hardware. Os principais SO móveis incluem Symbian OS (45% do mercado[13]), RIM's BlackBerry (17% [14]), Windows Mobile (12%[15]), Familia Linux (7.3%[16]), Palm OS (2%[17]), A Ångström Distribution, e o Darwin (iPhone OS) (0.3%[18]). A Open Handset Alliance's Android é o mais recente smart phone adicionado pelo Google e parceiros como T-Mobile (qual lançou o modelo G1 em 22 de Outubro, 2008). As esperanças do grupo OHA com Android irá obter até 4% de participação do mercado até o final do ano.[19]

As principais tecnologias são:
Novo celular da Nokia - N97

Tem bastante participação de mercado espalhado pelo mundo. A Nokia é lider de mercado exceto no Japão. Nokia tem 52.9% do mercado de smartphones.[23] Symbian no Japão é forte no relacionamento com a operadora NTT DoCoMo. Existem várias implementações de interfaces com usuário sobre Symbian (algumas plataformas como UIQ e a plataforma da Nokia chamada S60) são imcompatíveis. O requisito para uma aplicação funcionar é a mesma ser assinada [26] , o que de certa forma, atrapalha o potencial de aceitação e crescimento como plataforma de aplicações móveis. Tem recebido muitas advertências sobre possíveis virus (atualmente trojan horses).[27]
iPhone da Apple

O iPhone (e iPod Touch) usa um SO chamado iPhone OS, derivado do Mac OS X. Aplicações de terceiros foram habilitadas para serem instaladas através do Installer.app, sendo um tanto que difícil no início. Depois do firmware 1.1.1 para o iPhone e o release do iPod Touch, contudo, um web service permitia a a instalação de aplicações de terceiros. Com o release do iPhone OS 2.0, em Julio de 2008, aplicações nativas agora são habilitadas para instalar e podem ser baixadas via iTunes App Store, embora exista outras "jailbreaking" para instalar aplicações de terceiros ainda disponíveis para iPhone OS.
Obs. Outras fontes recentes atestam que o iPhone já é o primeiro lugar nas vendas geral e que já ultrapassou, inclusive, as vendas do Windows Mobile no mundo.
  • RIM BlackBerry SO (15.2% participação do mercado - vendas Q3 2008)
Este SO é focado para fácil operação e foi originalmente projetado para aplicações de negócios (business). Recentemente ele tem um incremento de aplicações de terceiros e foi aperfeiçoado para oferecer um suporte multimédia .
Windows CE SO junto com Windows Mobile middleware está amplamento utilizado na Asia. A duas variantes de melhoramento deste SO, o Windows Mobile 6 Professional (para celulares com touch screen) e Windows Mobile 6 Standard foram anunciado em Fevereiro de 2007. O Windows Mobile está desfrutando de grande popularidade devido à baixa barreira à entrada de terceiros para desenvolvedores escreverem novas aplicações para a plataforma.
  • Linux SO (5.1% participação de mercado - vendas Q3 2008)
Linux é forte na China onde é usado pela Motorola, e no Japão, usado pela DoCoMo.[28][29] Ao invés de ser uma plataforma de direito próprio, o Linux é usado como base para uma série de diferentes plataformas desenvolvidas por vários fornecedores, incluindo a Motorola e TrollTech, que são na maioria incompatíveis. [30][31] PalmSource está direcionando para rodar uma interface de execução em Linux[32] Outra plataforma baseada em Linux está sendo desenvolvida pela Motorola, NEC, NTT DoCoMo, Panasonic, Samsung, e Vodafone.[33] PalmSource tradicionalmente usou a sua plataforma desenvolvida pela Palm Inc. Access Linux Platform (ALP) é um melhoramento que estava previsto para ser lançado no primeiro semestre de 2007. Ela irá utilizar as especificações técnicas do Linux Phone Standards Forum. A Access Linux Platform irá incluir uma camada de emulação para suportar aplicações desenvolvidas para dispositivos baseados em Palm.
BREW foi desenvolvido nos USA pela Qualcomm, Inc e é conhecida na América do Norte. BREW é uma plataforma de desenvolvimento móvel para aplicações finais (end-to-end) distribuida no ecossitema. BREW recentemente ganhou uma posição na Europa através dos Three Skypephone oferecida pela rede 3.
  • Android do Google e parceiros OHA (Release liberado em 22 Outubro de 2008)

Android - novo competidor

Android que foi desenvolvido pelo Google, ainda tá começando a entrar na "guerra" e possui uma pequena parte de smartphones no mercado devido à sua recente data de libertação. O SO atualmente só tem um o HTC Dream (G1), sendo executado na rede da T-Mobile E.U.A. Android foi desenvolvida como uma plataforma que poderia ser executado em muitos dispositivos. A Sprint também tem planos para vender um telefone Android a partir de fevereiro ou março de 2009. Apesar de já ter outros ai usando Android.


Participação no mercado móvel (dados de novembro de 2008) - fonte


Os smarthphones estão cada vez mais poderosos, mas eles diferem basicamente em duas coisas: como eles são construídos (eis as tecnologias acima, suas plataformas ou SOs) e o que eles podem fazer.

A medida que desenvolvedores tem menos restrições para criar aplicações nesta indústria, a tendência é ter mais aplicações útéis para os seus usuários, tornando-os cada vez mais multi tarefas, como um canivete suíco ai de baixo, mas com a diferença de ser um celular, que acessa a rede, toca música, tira foto, tem GPS, filma, tem agenda, despertador, relógio, ... a sim, e faz as ligações né, quase esqueci! :)

04 novembro 2008

Video ensina como usar MTJ no Eclipse para programar em Java ME

No último post foi divulgado que o projeto MTJ (Mobile Tools for Java), uma ferramenta para unificar e facilitar a programação da plataforma Java ME, possibilitando integrar diferentes SDK (emuladores) através da IDE Eclipse, está disponível e permite aumentar a produtividade. Segue um video com mais informações sobre como usar MTJ.

O video do link permite você aprender a instalar, criar um projeto MIDlet, rodar e depurar aplicações usando o seu emulador com suporte a Java ME, podendo ser o WTK, Motorola, Nokia, etc.

Getting Started with MTJ

This screen cast will guide you through the process of using the Mobile Tools for Java (MTJ) to develop Java ME applications. You will learn how to configure Eclipse and also how to create, run and debug MIDlets using MTJ.

Total running time 11:06 minutes

O link do video é: http://live.eclipse.org/node/614

23 outubro 2008

Fim do plugin Eclipse ME e início do MTJ (Mobile Tools for Java)

O plugin mais conhecido do Eclipse para desenvolver aplicações móveis usando a plataforma java me é o chamado EclipseME, ele foi substituido por outro, denominado MTJ (Mobile Tools for Java), que vem para suprir os problemas e limitações do eclipseme. Conheça um pouco sobre esse plugin e como instalar e usar na sua IDE Eclipse.

No desenvolvimento para aplicações móveis em Java uma das ferramentas mais populares são os emuladores/simuladores, tal como o Wireless Tool Kit (fornecido pela Sun Microsystems) e outros SDKs fornecidas por fabricantes de celulares como Motorola, Nokia, etc. As IDEs mais populares são Eclipse e Netbeans (desenvolvedores em geral), sendo que para Eclipse, o plugin desenvolvido por Craig Setera, com ajuda de colaboradores expontâneos se tornou referência. Agora no entanto, o "fim foi decretado" e um novo plugin vem ai: MTJ (Mobile Tools for Java), com apoio e ajuda do próprio Craig Setera.

Além de Craig, temos também dois principais grupos que assumiram o desenvolvimento e evolução do MTJ, a Motorola e a SyBase. Nós aqui do CESAR, que prestamos serviço para a Motorola fazemos parte deste time que mantém o MOTODEV Studio for Java e MTJ. Grande conquista para nós do CESAR. :)

Como instalar o MTJ
Acesso o portal do MTJ e copie a URL para realizar o update:
http://download.eclipse.org/dsdp/mtj/updates/0.9/stable

Figura 1: Acessando a opção de update on-line do eclipse (versão 3.4 ganymede)


Figura 2: sequência de passos para adicionar repositório do MTJ para baixar na internet


São 3 possíveis opções que o usuário pode baixar:
  • Mobile tools for java (default); permite criar os projetos e rodar aplicações.
  • Mobile tools for java documentation; vem com tutoriais.
  • Mobile tools for java SDK; vem com developer guide para entender como extender ou contribuir com o projeto MTJ.

Um exemplo prático
Após baixar e o eclipse via update manager o eclipse vai pedir para reiniciar a IDE. Feito isso, basta criar um projeto MTJ (new MIDlet Project) e fazer uma aplicação Java ME usando as configurações já conhecidas do eclipseme, mas com melhorias na interface e algumas features a mais, tal como wizard para configuração do JAD, opções para rodar aplicações diretamente, etc.

Figura 3: Criando um projeto MTJ


Figura 4: acessando a perspectiva Java ME visualizando a tela de configuração

Uma feature bacana é a tela de configuração (acessada pelo arquivo Application Descriptor na view da esquerda), onde podemos acessar a tela de configurações com vários recursos, tais como as informações do JAR/JAD; opção para empacotar aplicação (distribuir); exportar um build ant; rodar o código atual (usando a configuração da classe MIDlet) ou usando a configuração do JAD atual; depurar a aplicação; escolher qual SDK e o device do mesmo. Além disso, existe abas específicas onde se pode configurar aplicação, com personalização para telefones Motorola e Nokia. :)


Conclusões
Esse projeto vem no momento oportuno e era uma necessidade antiga. O MTJ não é novo, mas ninguém estava assumindo o seu desenvolvimento. Com essa iniciativa, liderada pela Motorola, acredito que vai "deslanchar", pois o MTJ poderá ser adotado por outras plataformas como Android em breve, que já demonstraram interesse. A IDE MOTODEV Studio for Java atual já vem com o MTJ integrado para rodar o seu emulador.