plataforma windows mobile

Upload: tiago-caetano

Post on 16-Jul-2015

846 views

Category:

Documents


0 download

DESCRIPTION

Trabalho de investigação da plataforma windows mobile

TRANSCRIPT

1

1|PginaInformtica Mvel

2

ndicendice ............................................................................................................................................................. 2 Resumo ......................................................................................................................................................... 3 Introduo ...................................................................................................................................................... 4 Desenvolvimento ........................................................................................................................................... 5 Histria da plataforma do Windows mobile................................................................................................ 5 A plataforma do Windows Mobile 7.5 ........................................................................................................ 6 Componentes em Runtime.................................................................................................................... 7 Servios em Cloud ................................................................................................................................ 9 Servios Portal .................................................................................................................................... 10 Ferramentas de desenvolvimento ....................................................................................................... 11 Conluso...................................................................................................................................................... 13 Referncias .................................................................................................................................................. 14

2|PginaInformtica Mvel

3

ResumoEste relatrio realizado no mbito disciplina de Informtica Mvel do Curso de Engenharia de Informtica da Escola Superior Tecnolgica, do Instituto Politcnico de Castelo Branco, com o objectivo de investigar as tecnologias actuais de desenvolvimento de aplicaes para Windows Mobile 7.5, e as suas respectivas Application Programming Interface.

3|PginaInformtica Mvel

4

IntroduoEste relatrio tem objectivo descrever s tecnologias actuais e API que a Microsoft disponibiliza no desenvolvimento de aplicaes para o Windows Mobile, actualmente a verso 7.5 (Mango) no mbito da disciplina de Informtica Mvel. De modo a compreender toda a evoluo destas tecnologias, feito um breve historial dos aspectos mais importantes que altera e revoluciona o mercado no desenvolvimento de aplicaes para dispositivos mveis. Desde o aparecimento dos primeiros telemveis at ao aparecimento do primeiro iPhone, esta realidade que provocou uma enorme agitao nos mercados, e no qual se comea aperceber que o desenvolvimento de aplicaes mveis uma rea com grande potencial, no qual pode-se obter grande liquidez. Da surge novas plataformas que possibilitam o desenvolvimento dessas aplicaes. Apesar da empresa da Microsoft ser uma das pioneiras, de facto Apple que introduz novos conceitos nesta rea. Seguidamente e sendo o cerne desta investigao abordado todos componentes mais importantes na plataforma do Windows Mobile. feito uma descrio desses mesmos componentes, como tambm da sua API. Outros aspectos que no deixam tambm de ser importante o conjunto de ferramentas que a Microsoft disponibiliza para desenvolvimento das aplicaes mveis nomeadamente Visual Basic, Expression Blend.

4|PginaInformtica Mvel

5

DesenvolvimentoHistria da plataforma do Windows mobileAntes da actual gerao de smarthphones, tablet Pc, a primeira gerao de telemveis apenas possuam funcionalidades bsicas, como por exemplo, realizar chamadas, enviar mensagens de texto, e aplicaes muito rudimentares. No existia uma loja de aplicaes, e no estava disponvel uma Application Programming Interface (API) para os programadores. A primeira verso do Windows mobile, surge no ano 2000, com o aparecimento dos Pocket PC que criou assim as primeiras oportunidades legtimas para que os programadores pudessem criar as suas primeiras aplicaes para dispositivos mveis. Esta primeira verso do Windows mobile j oferecia aplicaes como Word, Excel, Outlook, Internet Explorer, Windows Media Player e outros. Com o aparecimento do sistema operativo Windows mobile, a Microsoft disponibilizou um conjunto de ferramentas para desenvolver aplicaes nativas para os Pocket PC. No entanto tambm podemos aperceber alguns problemas iniciais, os telemveis apresentavam um ecr de pequena dimenso o que no era compatvel com a maior parte das aplicaes, para alm de ser bastante caros, a subscrio de um servio de dados, no se justificava derivado no ter a rapidez necessria para utilizador final. Era tambm necessrio a utilizao de uma caneta, no qual demonstra que estes dispositivos no eram to simples e poderosos como hoje em dia como por exemplo os multi-touch. Em 2007 a Apple concebe o seu primeiro iPhone, um novo telemvel concebido do zero, mudando para sempre a computao mvel, apresentando um formato liso e fcil de utilizar, introduz uma melhor navegao, uma interface ecr tctil (touchscreen), incluindo multi-touch e tambm funcionalidades como pinch and flick. Para alm destas novas tecnologias maior capacidade de hardware, o iPhone foi o primeiro smarthphone a permitir algum desenvolver aplicaes personalizadas e at mesmo distribui-las com inteno de potencialmente obter lucro. Depois de alguns anos e aps serie de revises do sistema operativo usado pela iPhone, mantendo sempre o mesmo padro original, a sua popularidade cresceu nos mercados, como consequncia disso, as pessoas que nunca antes tinham considerado o uso de telemveis, em vez de realizarem operaes bsicas como enviar uma sms, realizar chamadas, subitamente utilizavam para navegar na internet, verificar o seu email, aceder ao facebook, ou seja estvamos presente numa nova era. Com o crescimento e o sucesso do iphone, que no passou despercebido aos outros concorrentes, derivado as quedas de vendas dos seus dispositivos mveis, os utilizadores tambm comearam a exigir funcionalidades idnticas que iphone possua independentemente do seu fabricante. A Microsoft e uma pequena empresa chamada Google ao verificar esta evoluo no mercado, comeou a desenvolver a sua prpria soluo mvel, mas em vez de focarem-se em aspectos de hardware, desenvolveram o seu prprio sistema operativo que inclui muitas das inovaes encontradas nos dispositivos e nos sistemas do iphone, ao contrrio da Apple a Google disponibilizou o seu sistema operativo de forma gratuita, com o objectivo de atrair programadores para criar aplicaes mveis em dispositivos com o sistema operativo de Android. Desta forma a Google no s disponibilizou API do seu sistema operativo, como tambm disponibilizou um conjunto de ferramentas de modo a ser possvel projectar novas aplicaes. A semelhana do iTunes existe tambm uma loja de aplicaes onde os utilizadores podem realizar o download de aplicaes, a maior parte gratuitas e outras com um baixo custo. Pouco tempo aps o lanamento do sistema operativo Android, os fabricantes comearam a colocar no mercado dispositivos moveis com a tecnologia de Android. Nesta fase a loja de aplicaes (marketplace) demonstrava j ser potencialmente lucrativa, reflectindo-se tambm o crescimento no mercado a utilizao do sistema operativo Android. Com o sucesso do iPhone e com surgimento do sistema operativo Android, a Microsoft em vez de desenvolver uma verso j existente do Windows Mobile, decidiu procurar criar um novo sistema operativo, 5|PginaInformtica Mvel

6 para garantir as necessidades dos utilizadores. E de facto a nova soluo da Microsoft, seria uma verso completamente diferente da anterior, recorrendo a tecnologia de multi-touch e uma nova interface. Para alm disso a Microsoft em vez de colocar no mercado uma gama de dispositivos mveis, com o seu sistema operativo, como j tinha feito anteriormente, padronizou o seu hardware, e colocou a disposio dos programadores a plataforma de desenvolvimento de aplicaes mveis para o seu sistema operativo. A plataforma tem como base a tecnologia .NET e Silverlight. No MIX 2010, a Microsoft disponibilizou as primeiras ferramentas de modo a que os programadores, pudessem iniciar o seu trabalho no desenvolvimento de aplicaes para o Windows Phone 7. Ao contrrio do Android e do iPhone, as ferramentas disponveis j eram muito bem conhecidas pela maior parte da comunidade ou programadores no Visual Studio, no qual permitiu assim reduzir drasticamente o tempo de aprendizagem no desenvolvimento de aplicaes. Neste mesmo evento a Microsoft demonstrou tambm inmeros demos de aplicaes com base na plataforma de Silverlight, e o desenvolvimento de jogos para Xbox com base na plataforma de desenvolvimento XNA, o que provocou uma grande motivao para os programadores desenvolverem aplicaes com base nestas plataformas. Outra grande motivao proporcionada pela Microsoft foi a criao da sua prpria loja de aplicaes, que permitiu aos programadores criar e distribuir as suas aplicaes tendo a possibilidade de obter lucros. Actualmente o sistema operativo do Windows Mobile a verso 7.5 (mango), uma actualizao verso 7.0 no qual podemos verificar algumas diferenas como Bing Vision, Bing Audio,a integrao Windows Live Messenger, e Bing Image Search, entre outros.

A plataforma do Windows Mobile 7.5Para evitar muitos dos problemas que atormentaram o desenvolvimento de aplicaes em verses anteriores do seu sistema operativo Windows Mobile, a Microsoft decidiu seguir o exemplo da Google e da Apple, em definir ou padronizar os requisitos mnimos de hardware de modo a suportar o seu sistema operativo, como tambm qualquer utilizador deveria ser capaz utilizar qualquer dispositivo com Windows Mobile7.5. Como podemos ver atravs da tabela 1, a Microsoft no criou um bsico smartphone, estes dispositivos estavam par a par com dispositivos de Android e iPhones.

Tabela 1- Requisitos mnimos de hardware para Windows Phone

6|PginaInformtica Mvel

7 Desta forma, no s a Microsoft padronizou a sua lista de recursos de hardware, como tambm forneceu aos programadores uma arquitectura favorvel ao desenvolvimento rpido de aplicaes. A arquitectura do Windows Phone 7.5 assim dividida em quatro componentes: Componentes Runtime Ferramentas Servios Cloud Servios Portal

Figura 1- Plataforma da arquitectura do Windows Phone

Componentes em Runtime Os dois principais componentes de desenvolvimento runtime consite na utilizao da tecnologia Silverlight e XNA framework. Silverlight a mais recente tecnologia da Microsoft para auxiliar no desenvolvimento de Rich Internet Applications (RIA). Actualmente na quarta reviso (Silverlight 4) permite aos programadores .NET criar aplicaes de internet, com uma capacidade de resposta bastante baixa. Esta plataforma requere que o utilizador instale um plugin, idntico ou similar ao popular Plugin Flash no entanto um processo rapido e fcil de concluir. A plataforma Silverlight para Windows Phone em comparao com Silverlight para desenvolvimento web, so similares, a maior parte das funcionalidades esto disponveis para verso Windows Phone em runtime, como tambm disponveis para o novo estilo de interface Metro que inerente ao Windows Phone 7.5. A plataforma XNA, que tinha como objectivo inicial ajudar os programadores a desenvolver jogos em DirectX para pc, com o tempo a Microsoft extendeu esta plataforma fornecendo um conjunto de biblioteca e ferramentas necessrias para desenvolver jogos personalizados para Xbox 360. Para alm das plataformas XNA e Silverlight, os componentes runtime incluem um elemento mdia, que rapidamente se tornou um aspecto importante para todos os smartphones, incluindo Windows Phone 7.5, este componente, com funes de multimdia, normalmente estava associado Windows Mdia Player. Nesta situao, relativamente ao Windows Phone 7.5, os componentes esto inerentes ao popular dispositivo Zune da Microsoft em que as interaces dos elementos so idnticas, com objectivo de gerir ficheiros do tipo multimdia e reproduzi-los. 7|PginaInformtica Mvel

8 Os componentes em runtime so tambm constitudos por poderosos sensores (sensors), que podem ser usados pelas nossas aplicaes, inclui tambm a capacidades de utilizar GPS(location), realizar chamadas (Phone), acelermetro, notificaes e por fim nenhum aplicao pode ser desenvolvida sem dados(data). Na primeira verso do Windows Mobile 7 no existia uma verso compacta do SQL Server, como existia em verses anteriores, porm existe vrias formas de armazenar dados. O Windows Phone 7.5 e a verso 7.0 utiliza o conceito de isolamento de dados de modo a facilitar o armazenamento e retorno de dados no dispositivo. Todo o desenvolvimento de aplicaes assim baseado nas duas principais plataformas Silverlight e XNA framework, em que todos os pedidos realizados a API sempre feito de forma protegida e controlada (conceito de sandbox), o programador apenas tem que realizar esses pedidos como cliente ou externo, e construir assim aplicaes seguras e rpidas. Assim estas duas frameworks, juntamente com os componentes Windows Phone frameworks e todas as classes disponveis na biblioteca, disponibiliza todos os componentes necessrios para construir as aplicaes.

Figura 2- Plataforma da arquitectura do Windows Phone

De uma forma mais especfica, relativamente aos componentes em runtime, pudemos interpreta-los da seguinte forma: Silverlight- Framework ideal para desenvolvimento de RIA (Rich Internet Application), e para criao UI (User Interface) para aplicaes no Windows Phone. As ferramentas necessrias so o Visual Studio ou Expression Blend, este tipo de interfaces so baseadas em linguagem de marcao do tipo de XAML. XNA Framework- A XNA framework composta por servios e recursos focados no desenvolvimento de jogos. A Microsoft disponibiliza esta tecnologia que permite aos profissionais desenvolverem de forma rpida e robusta jogos para Windows Phone, Xbox 360, Zune HD e Windows 7.5. Esta plataforma disponibiliza um conjunto de API para o desenvolvimento de jogos, isto inclui 2D e 3D grficos. 8|PginaInformtica Mvel

9 Sensores- Todos os sensores do dispositivo mvel so acessveis pela API, no qual tem como objectivo retornar dados de modo a que sejam manipulados pela aplicao, como por exemplo multi-touch input, acelermetro, microfone e outros. Mdia - Silverlight e XNA Framework permitem aos programadores um modelo de programao que torna possvel incorporar grficos de animao e mdia nas suas aplicaes. Desta forma existe uma variedade de API que suporta diversos tipos de ficheiros mdia. Dados - O armazenamento de forma isolada permite que uma aplicao mantenha os dados em uma pasta isolada sandboxed virtual. Todas as operaes de entrada e sada so restritas ao armazenamento isolado e no tem acesso directo aos ficheiros do sistema operativo. Isso impede o acesso no autorizado e corrupo de dados por outras aplicaes. Os Dados podem ser guardados numa base dados relacional e pode ser acedido usando LINQ para SQL. Uma das instncias que possibilita este isolamento atravs do Isolated StorageSettings ou IsolatedStorageFile Objects. Localizao - O Servio de Localizao da Microsoft para Windows Phone permite que as aplicaes desenvolvidas acedam as informaes do utilizador relativamente a sua localizao fsica ou posio geogrfica. Para obter por exemplo a localizao actual de um utilizador utiliza-se a classe System.Device.Location.GeoCoordinateWatcher que esta localizada no System.Device.dll. Servios em Cloud Com o lanamento do Windows Phone 7, a Microsoft forneceu um conjunto de servios alojados em nuvem (cloud services), tornando assim as aplicaes e os servios mais poderosos. No s traz inmeras vantagens, como torna as aplicaes mais funcionais. Podemos realar que os servios disponveis na nuvem, no so dependentes do tempo de durao da bateria, como tambm os servios esto sempre presentes ( always on). A tecnologia Windows Azure, Servios Xbox LIVE, servios de alertas, e servios de localizao, juntamente com uma variedade de outros servios da web, permitem que os programadores partiham dados na nuvem beneficiando assim o desenvolvimento das suas aplicaes proporcionando uma melhor experincia para o utilizador ou consumidor final. Um dos componentes mais interessantes Notification Service, que pode fornecer ao utilizador alertas como por exemplo do tempo, resultados de desporto e outras situaes.

9|PginaInformtica Mvel

10Figura 2- Conceito de Cloud Services da Microsoft

Outro servio disponvel na cloud, tambm muito interessante o Bing Maps control, que permite a consulta de mapas atravs do Windows Phone 7.5. O desenvolvimento de aplicaes nesta plataforma realizado atravs Visual Studio 2010, em que os servios so hospedados em data centres da Microsoft. Todas estas aplicaes so colocadas no mercado Windows Phone, no qual so certificadas e distribudas aos consumidores finais, como j vamos poder verificar a seguir. Servios Portal A Microsoft Windows tal como aconteceu no iPhone proporcionou um ambiente ou um local centralizado para que as aplicaes pudessem ser certificadas e comercializadas e onde ns consumidores finais pudssemos comprar ou actualizar uma aplicao. Desta forma todas as aplicaes comercializadas tinham que ser registadas e distribudas, a distribuio feita atravs de uma nova aplicao designada Hub Suite. Para alm disso foi colocado tambm servios disponveis de validao e certificao do cdigo das aplicaes. Todas estas aplicaes poderiam ser testadas no emulador do Windows Phone, mas para serem certificadas existe uma equipa da Microsoft que procura qualquer cdigo malicioso que viola os termos acordados. Outro servio interessante relacionado com a aplicao Hub Suite, o servio de facturao (billing service), que disponibiliza aos programadores uma adicional API, como um exemplo prtico, uma determinada aplicao poderia ser controlada de forma que um determinado acesso do utilizador eventualmente por uma actualizao ou alguma extenso da aplicao original apresente ou no custos para o consumidor final. Todo este processo efectuado por etapas, primeiro o registo e a validao da aplicao, o responsvel pelo desenvolvimento da aplicao, ter que inscrever-se na aplicao Hub Suite com seu Live ID, concluir o seu registo e poder obter todas as ferramentas necessrias em um nico donwload. A certificao, publicao e a gesto das actualizaes da aplicao, obriga apresentao de uma candidatura no formato .XAP que essencialmente um ficheiro compactado que contm todos os ficheiros da aplicao. Todo este processo pode ser acompanhado, inclusive pode-se obter estado da submisso do processo da aplicao. Quando o processo estiver concludo, pode-se definir os preos e seleccionar os mercados onde se deseja publicar a aplicao. Caso a aplicao sofra alteraes, novas funcionalidades ou uma verso completamente diferente do original deve realizar os mesmos passos. De forma compreender ou obter uma viso geral do processo, a figura abaixo demonstra todo o ciclo de vida.

10 | P g i n aInformtica Mvel

11

Figura 3- Ciclo do registo, validao e comercializao de uma aplicao no Hub Suite

Ferramentas de desenvolvimento Ao contrrio do Windows Mobile, Windows Phone 7.5, apresenta um conjunto de ferramentas de ambiente e desenvolvimento das suas aplicaes, sendo o seu principal IDE, o Visual Basic, que pode ser adquirido em vrias verses, Visual Studio Ultimate, Premium e Professional. Para alm desta ferramenta, a Microsoft disponibiliza o IDE , Expression Blend que permite ao designers trabalhar de forma mais fluida, e criar melhores experincias com as suas aplicaes. Talvez uma das melhores partes que a Microsoft disponibilizou uma verso gratuita do Expression Blend que pode ser usada especificamente para Windows Phone 7.5. Um das vantagens deste IDE que possibilita trabalhar de forma sincronizada com os restantes elementos da equipa, ou seja trabalham exactamente com os mesmos ficheiros que um programador. Uma das ferramentas de integrao com o Visual Studio e com Express Blend de modo a realizar testes e debug das aplicaes de forma mais eficiente, o emulador do Windows Phone no qual pode-se verificar a nossa aplicao a ser executada. Este emulador suporta dispositivos perifricos, acelermetro, GPU, armazenamento de dados, networking, keyboard entre outras tecnologias, a imagem seguinte demonstra o ambiente de trabalho do emulador.

11 | P g i n aInformtica Mvel

12

Figura 4- Emulador do Windows Phone integrado no Visual Studio

Outro IDE j referido anteriormente e importante na integrao da plataforma Windows Mobile, XNA Game Studio, que integra todas as ferramentas necessrias no desenvolvimento de jogos, inclusive para Xbox, actualmente a verso utilizada 4.0. Estas aplicaes referidas anteriormente e que tambm no deixa de ser importante toda a documentao envolvente, guidelines e a prpria comunidade, nomeadamente fruns, blogs, toda a participao ajuda no desenvolvimento de aprendizagem de um programador, no qual tambm se pode obter excertos de cdigo de simples aplicaes.

12 | P g i n aInformtica Mvel

13

ConlusoAo realizar este trabalho aprofundei os conhecimentos relativamente s tecnologias de desenvolvimento de aplicaes mveis para Windows Phone 7.5, as suas plataformas envolventes como tambm as ferramentas necessrias, mas penso que deveria ter aprofundado mais as API disponveis e referir mais exemplos da sua utilizao. Outro aspecto menos positivo, foi no comparar a utilizao desta plataforma com outras j existentes no mercado e para outros tipos de dispositivos mveis, e obter uma viso do qual estava a ser mais utilizada e que poderia obter maior lucros no desenvolvimento de aplicaes mveis. No entanto acho que conseguir atingir os objectivos propostos para esta investigao.

13 | P g i n aInformtica Mvel

14

Referncias- 31 Days of Windows Phone. (s.d.). Obtido em 05 de 03 de 2012, de Blankenblog: http://www.jeffblankenburg.com/2010/09/30/31-days-of-windows-phone-7/ - George W. Clingerman. (s.d.). George W. Clingerman. Obtido em 05 de 03 de 2012, de George W. Clingerman: http://www.xnadevelopment.com/ - Microsoft. (06 de 03 de 2012). Coloque seus aplicativos para Windows Phone no mercado com mais rapidez. Obtido de MSDN Magazine: http://msdn.microsoft.com/pt-br/magazine/hh781024.aspx - Microsoft. (s.d.). Application Platform Overview for Windows Phone. Obtido em 05 de 03 de 2012, de MSDN Microsoft: http://msdn.microsoft.com/en-us/library/ff402531%28v=vs.92%29.aspx - Microsoft. (s.d.). Visual Basic 2010 Express. Obtido em 06 de 03 de 2012, de Microsoft: http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-basic-express - Microsoft. (s.d.). Windows Phone: uma plataforma. Obtido em 03 de 05 de 2012, de MSDN Microsoft: http://msdn.microsoft.com/pt-br/hh230679 - Petzold, C. (s.d.). Programming Windows Phone 7 Series Free. - The Windows Club. (s.d.). Learn to Develop Windows Phone 7.5 Mango Applications: Part 1. Obtido em 05 de 03 de 2012, de The Windows CLub: http://www.thewindowsclub.com/tutorial-develop-windowsphone-applications

14 | P g i n aInformtica Mvel