Desenvolvendo para Dispositivos Móveis Luiz Miranda Programas & Soluções Informática
O que veremos hoje ? Parte I - Introdução Tipos de dispositivos Palm X PocketPC Conhecendo dispositivos disponíveis Parte II – Desenvolvendo aplicativos Opções de desenvolvimento Plataforma .NET .NET Compact Framework ASP.NET Mobile Controls Futuro Windows Mobile e Whidbey
Conhecendo a tecnologia atual Parte I Conhecendo a tecnologia atual
Mobilidade para que ? Diversos tipos de profissionais passam grande parte do tempo fora de um local fixo Vendedores Médicos Consultores Advogados Informação em todo lugar !!! Notebook ? Tamanho e Peso Bateria de pouca duração É realmente portátil ? Algumas aplicações não necessitam de um computador de “verdade”
Tipos de dispositivos móveis Computadores de bolso (Palms, PocketPc, Outros) Telefones celulares Smartphones
Palms Dividida em duas empresas PalmOne: dispositivos PalmSource: sistema operacional PalmOS Varias linhas com versões diferentes de PalmOS e Processador Zire Zire(2MB,OS4.1,DragonBall 16MHZ), Zire21(8MB, OS5.2,126MHZ), Zire71(16MB,OS5.2, 144MHZ,SD) Tungsten Tungsten E(32MB,OS5.2,126MHZ,SD), Tungsten T3 (64MB,400MHZ,Xscale,SDIO, bluetooth)
PocketPC Baseados em WindowsCE (3.0 ou 4.x) Possuem uma camada de apresentação para PocketPC (PocketPC 2000, 2002, Windows Mobile 2003, WM 2003SE) Coloridos, mínimo de 32MB, slot SD e/ou Compact Flash Baseados na arquitetura ARM (xScale, IMAC, TI, Sansung)
PocketPC:Modelos HP/Compaq IPAQ 1945 (64MB, 266MHZ, SDIO, bluetooth,US$300) IPAQ 2215 (64MB, 400MHZ,SDIO/CF,xScale, bluetooth,US$400) IPAQ 4155 (64MB, 400MHZ, SDIO, xScale, bluetooth, WiFi, US$400), IPAQ 4355 (64MB, 400MHZ, SDIO, xScale, bluetooth, WiFi, teclado, US$450)
PocketPC:Modelos Dell Axim X30(312MHZ, 32MB, SDIO,xScale, US$199) Axim X30(312/624MHZ, 64MB, SDIO,xScale, BlueTooth, WiFi, US$274/US$314) Axim X50(520MHZ, 64MB/128MB, SDIO/CF, xScale, Bluetooth, WiFi, US$434) Axim X50v(624MHZ, 64MB/128MB, SDIO/CF, xScale, Bluetooth, WiFi, VGA, US$499)
HP - IPAQs IPAQ 1945 IPAQ 2215 IPAQ 4355
Dell X30 X50
PocketPC Phone Edition Todos os recursos de um PocketPc (tamanho de tela, touchscreen, memória) Telefonia móvel (maioria GSM/GPRS) Recursos adicionais no SO para telefonia (discagem, integração dos softwares, SMS)
PocketPC Phone Edition HTC Qtec, Wallaby, XDA I, SX56,T-Mobile, Gradiente Partner (32/64MB, SD, GSM/GPRS, ARM 206MHZ) XDA II (128MHZ, 400MHZ, xScale, SDIO, GSM/GPRS, bluetooth, Camera) HP HP 6315 (64MB, 200MHZ, TI IMAP 1510, Bluetooth, Wi-Fi, SDIO, GSM/GPRS, Camera) Sansung i700 (64MB, 300MHZ, xScale, SD, GSM/GPRS, Camera)
PocketPC Phone Edition XDA II Partner/XDA HP 6315
SmartPhone Telefone celular com recursos de PDA Windows Mobile for SmartPhone (2002 ou 2003) Tela não é “touchscreen” Uso com uma única mão
SmartPhone Motorola MPx200 Motorola MPx220 Orange SPV Sansung i600 32MB, SD, TI OMAP 132MHZ, Motorola MPx220 32MB/64MB, SD, 200MHZ, BlueTooth, Camera (1.2mp), WM2003SE Orange SPV 32MB, SDIO, TI OMAP 132MHZ Sansung i600 32MB, SDIO, xScale 200MHZ
SmartPhone MPx200 MPx220 i600 SPV
Conectividade Mobilidade é uma necessidade crescente Mobilidade com conectividade é o “boom” do momento Algumas opções Bluetooth Wi-Fi GPRS/GSM x 1xRTT/CDMA
Desenvolvendo aplicações para o mundo móvel Parte II Desenvolvendo aplicações para o mundo móvel
Desenvolvimento MobileTookit MobileVB / CrossFire (AppForge) eVC MobileVB / CrossFire (AppForge) Microsoft .NET .NET CompactFramework VB.NET C# ASP.NET Mobile Web Application
Desenvolvendo aplicações para PocketPC .NET Compact Framework Desenvolvendo aplicações para PocketPC
.NET CompactFramework Versão simplificada do .NET Framework Mesmo ambiente de desenvolvimento (Visual Studio.NET 2003) Classes/métodos do .NET CF são exatamente iguais ao .NET
.NET CompactFramework Algumas classes não existem no CF ADO.NET ok Remoting, WMI, OLEDB, suporte a COM ADO.NET ok SQLCE e client SQLServer Maioria dos componentes da WinForm: versões simplificadas DataGrid não é editável
.NET CompactFramework Compatível com PocketPC 2000, 2002, WM 2003, WM2003SE SP1 e SP2 lançados (SP3 em beta) Melhoria significativa de performance XML mais rápida Abertura de forms mais rápida Algumas propriedades implementadas
.NET CompactFramework Desenvolvimento Winforms Aplicativos reais rodando no PDA ASP NET Mobile Application ASP NET Mobile controls Renderizam WML, cHTML ou HTML Pode ser usado por celulares (WAP) Atualizações constantes para suporte a novos dispositivos
.NET CompactFramework O que é necessário para desenvolver ? Visual Studio.NET 2003 VC, Delphi .NET e outros ambientes .NET por enquanto não suportam desenvolvimento para CF Não é preciso um dispositivo real: device emulator
.NET CompactFramework Manipulação de dados. Opções ? XML SQLCE SQLClient – WiFi WebServices – banco de dados remoto PocketAccess – por enquanto apenas com ferramentas de terceiros
Aplicação WinForms Rodando no emulador
.NET Compact Framework Mãos no código !!!!
ASP.NET Web Mobile Application Desenvolvendo para dispositivos conectados
ASP.NET Mobile Applications Aplicações thin-client: cliente não precisa ter nada instalado Necessita apenas de um mini-browser WAP Foco principal: celulares Praticamente todos os celulares atuais suportam WAP Aplicativo na verdade é um conjunto de páginas Web renderizadas como WML, xHTML ou HTML
ASP.NET Mobile Controls - Saída Adaptativa Saída adaptativa de acordo com cliente que requisitou a página Gera WML, xHTML ou HTML As páginas são compostas de ASP.NET Mobile Controls, que são controles que são renderizados de acordo com o cliente Cada ASP.NET Mobile Control “sente” o tipo de dispositivo e tenta gerar uma página dinamicamente que aproveita ao máximo as suas características
As páginas são criadas de forma semelhante a páginas ASP As páginas são criadas de forma semelhante a páginas ASP.NET convencionais Os Mobile Controls são em geral versões simplificadas dos controles HTML correspondentes O LayOut da página é simples e somente um controle pode ser colocado em cada linha. Lembrem-se: os celulares possuem tela muito pequena !!!
Desenvolvimento usando ASP NET Mobile Controls
Smartphones União PDA + Celular SmartPhone = Poder de processamento + Sistema Operacional sofisticado + Memória + Celular Vantagens Always connected Simplicidade de uso Elimina necessidade de se carregar PDA + Celular Desvantagens Economizar bateria = baixo poder processamento Tela muito pequena Interface simplificada
Desenvolvimento para SmartPhones Necessário instalar WM SDK 2003 SmartPhone deve rodar SmartPhone 2003 Já temos SmartPhones com WM2003 !!! MPx220 <- disponível no Brasil !!! Audiovox SMT 5600
Desenvolvimento para SmartPhones Não é para qualquer tipo de aplicação Lembrar que é um celular e não um PDA Nada de touchscreen Nada de DataGrid Somente duas opções de menu, como nos celulares comuns. Menu da esquerda não pode ter submenus e funcionar como um “ENTER”
Desenvolvimento para SmartPhones Limitações de memória e performance do processador (por enquanto !!!) Vários componentes da WinForm não existem e os que existem possuem diversas limitações. Interface deve ser pensada com muito cuidado
Desenvolvimento para SmartPhones Apesar disto Always connected !!! WebServices é a palavra chave Unificação de dispositivos. Nada de carregar PDA + Celular Para aplicações simples e práticas, para uso com apenas uma mão
Futuro Windows Mobile 2005 Novo design Melhor bluetooth Melhorias nos aplicativos internos
Futuro Whidbey (VS 2005) Suporte activesync Melhorias no emulador Suporte a desenvolvimento usando VC++ Suporte aos novos recursos incluídos no VB.NET e C#
Futuro Whidbey (VS 2005) Novo JIT Suporte a COM !!! Melhor código sendo gerado Grandes melhorias de performance Foco em XML e ADO.NET Suporte a COM !!! Controle sobre marshalling interop
Futuro Whidbey Novos controles para WinForms WebBrowser DateTimePicker MonthCalendar LinkLabel NotificationBallon RichInk UserControl, Splitter, DataContainer
Futuro Whidbey Salvar Bitmaps Rotacionar imagens Pen styles Docking e Achoring Multiresolution support Suporte a portas seriais, registro, sons E mais um montão de coisas ...