Windows PhoneGuilherme Defreitas JuraszekMicrosoft StudentPartnerhttp://about.me/guilherme@guidef
AgendaHardwareMetroFerramentasCiclo de VidaSensores e Integração MultitaskingPushNotifications
Telacapacitiva4 oumaispontos de contatoSensoresA-GPS, Acelerômetro, Luz, Proximidade, *Giroscópioe *Bússola800 Câmera5 mega pixels oumaisMultimediaAceleração de CodecsMemória e Armazenamento256MB RAM e 8GB Flash ou superiorGPUAceleraçãopor hardware e DirectX 9480 CPU800Mhz ou superiorBotões | Voltar, Iniciar, BuscarHardware
Metro
Ubiquidade
Limpo, Leve e RápidoProjetado para ToqueTipografiaMovimentoFoco no ConteúdoMovimentoFoco no conteúdoMetro
Metro
Desenvolvimento
Ferramentas
MXALeXtensibleApplicationMarkupLanguageXML com “schemas” definidos pela tecnologiaDeclarativa e com suporte a code-behindSilverlightDefinição de animações e componentes gráficos
CodeXAMLO XAML é observável e pode ser manipuladoO Código é observador e manipuladorSilverlight
Live TilesÍcones vivosTransmitem informaçãoAnimados
PagesAplicaçãopodeterumaoumaispáginas	URI únicaHerda de PhoneApplicationPage- OnNavigatedFrom- OnNavigatedTo
Pivot
Panorama
Demo 1Visual Studio 2010 + Microsoft BlendWindows Phone EmulatorLive Tiles
Ciclo de VidaTombstonedIsAppInstancePreserved
Ciclo de VidaRunning AppDeactivated AppPhoneApplicationPage.OnNavigatedToPhoneApplicationPage.OnNavigatedFromPhoneApplicationService.ActivatedPhoneApplicationService.DeactivatedFramework:Attach ResourcesFramework:Detach ResourcesFramework:Resume Timers and ThreadsFramework:Suspend Timers and ThreadsDormant AppDormant App
SensoresCâmera +5mpGPSAcelerômetroGiroscópioBússola
CâmeraUtilizar através de CameraTaskEmbutir na sua aplicação
LocationGPS + Wi-Fi + CelularQuanto maior a precisão, maior o consumo de energiaGeoCoordinateWatcher
AcelerômetroMede aceleração no dispositivoBom para maiores aceleraçõesDisponível em todos os dispositivos
GiroscópioMede a velocidade rotacional em 3 eixos: X, Y e ZMuito sensívelIndica a rotação mesmo quando o dispositivo está paradoOpcional em telefones MangoIndisponível em telefones pré-Mango
BússolaRetorna coordenadas para o polo norte magnéticoSujeito a interferênciasNecessita de calibraçãoOpcional em telefones MangoIncluso em alguns telefones pré-Mango
Motion SensorSensor virtual que combina Giroscópio + bússola + acelerômetroMais precisoResposta mais rápida
Motion SensorPrefira sempre o Motion Sensor se disponível
Demo 2Acelerômetro + Emulador
Launchers and ChoosersInteração com recursos existentesUtiliza aplicações nativas do telefone para tarefas comuns
LaunchersNão retornam informaçãoCompartilhar status em redes sociaisBindMapsEnviar emailEnviar SMSRealizar uma chamada telefônica
ChoosersRetornam informaçãoCâmeraBuscar contatosFotos
Demo 3LaunchersandChoosers
DesempenhoThreadsMVVMProgramação assíncrona
Demo 4Threads
ComunicaçãoSockets (UDP e TCP)Streaming de áudio e vídeoComunicação com protocolos próprios em aplicações legadasWebClient (HTTP e HTTPS)Suporte a autenicaçãoAssíncrono
Isolated StorageLocal onde a aplicação pode gravar seus dadosÉ persistenteIsolado entre aplicações
Local DatabaseBanco de dados relacional para persistência de dadosUtiliza Linqto SQL Duas estratégias de criação- CodeFirst- DatabaseFirst
MultitaskingBackground AgentsPeriodicTasksResourceIntensiveTasksBackground Transfer
Periodic TasksExecutado a cada 30 min25 segundos de duraçãoBatterySaverModeMax. de 6MB de memória
Resource Intensive Tasks10 min. de duraçãoRequer fonte de energiaRequer conexão Wi-FiRoda apenas com a tela bloqueadaMax. de 15MB de memória
Background Transfer5MB para upload20MB para download (celular)100MB para download (Wi-Fi)Requer rede 3GTransferência mínima 3G (50kbps) e Wi-Fi (100kbps)
Push Notifications
Push NotificationsLive TilesRawToast
Push NotificationsLive Tiles
Push NotificationsToast
Demo 5PushNotifications
MarketplaceJá disponível no Brasil70% - Desenvolvedor 30% - MicrosoftGrátis para estudantes (Dreamspark), $99 anuais para não estudantesSuporte a Trials
Marketplace
RecursosWindows Phone 7 ToolkitWindows Phone Marketplace Test KitData Binding e MVVM
Ondecomeçar?http://create.msdn.comhttp://msdn.microsoft.com/pt-br/ff380145
DreamsparkGrátis para estudantesAcesso a diversos softwares e treinamentos
Perguntas?
Obrigado! :D
Desenvolvimento para Windows Phone 7

Desenvolvimento para Windows Phone 7

Notas do Editor

  • #5 PossuidiversosfabricantesEvitar a fragmentaçãoPadronizar um conjunto de requisitosmínimosAplicaçõesfuncionem de forma corretaindependente de dispositivomóvel
  • #6 Metro é o novo padrão de linguagem visual adotadopela Microsoft para o Windows Phone.
  • #7 A idéiaéque o usuáriotenha a mesmaexperiência de forma consistenteindependentemente de dispositivo. Não é necessárioreaprender a usar a cadadispositivoouaplicação. Todososdispositivos e aplicaçõescompartilham dos mesmosprincípios de organização e comportamento.Iniciarumatarefaem um dispositivo e concluirem outro
  • #8 Foconaleveza e simplicidadeProjetadoparafácilnavegaçãopor toqueTipografiaclara e organizadaMovimento, transições e animaçõesFoco no conteúdo da aplicação, onde a própriainformaçãoguia o usuáriosem a necessidade de elementosadicionaisnatela
  • #11 Silverlight – Utilizadoparaaplicaçõesgerais, orientadas a dadosXNA - Games
  • #12 Visual Studio 2010 Express – IDE de programaçãoExpression Blend for Windows Phone – Ferramenta de DesignWindows Phone EmulatorGratuitasTrabalhamintegradas(utiliza o mesmoprojetoemambas)Instaladas com um únicoinstaladorInstalatambém o emulador
  • #13 XAML – XML + extençõesadicionadaspela MicrosoftUtilizado de forma declarativaDefinição de componentes e controlesDefinição de animações e componentesgráficos
  • #17 Funcionam como AbasSão interessantes para mostrar grupos de informações de um mesmo item
  • #18 Extendem a área útil do dispositivoFuncionam com uma fluidez melhor que o pivotIdeais para a tela inicial da sua aplicaçãoAgrupam informações em grupos lógicos
  • #21 Demonstrar:Visual StudioXAML e Code BehindEmuladorExpression BlendDemo DataAnimações
  • #22 Running – AplicaçãoemexecuçãoDeactivated – Eventodisparadoquando a aplicaçãosai do primeiroplanoDormant – Aplicaçãonãoestamaisemprimeiroplano - Todas as threads e timers sãoparados - Os dados sãopreservados - A aplicação continua namemória - Todosos dados devemser salvos no Activated – Eventodisparadoquando a aplicaçãoretornapara o primeiroplanoTombstoned – Aplicaçãoéremovida da memória - Preserva a pilha de navegação - Preserva o State Activated/Deactivated/Closing – Limite de 10 segundos
  • #32 DemoAcelerômetroLocation
  • #36 DemoLaunchers and ChoosersDemonstrar Bing
  • #38 DemoLaunchers and ChoosersDemonstrar BingDemonstrar Photo Hub e câmera
  • #40 Persistente – Os dados podemserrecuperados entre as diversasexecuções da aplicaçãoFuncionacomo um diretórioCadaaplicaçãopodeutilizarapenas o seu Isolated StorageNãoépermitidocompartilhamento de arquivos entre aplicações
  • #41 É um banco de dados relacionalparamanipulação de dadosUtilizaobrigatoriamenteLinq to SQL paramanipulação dos dadosNãoépermitidoacesso via SQLDuasestratégias de criaçãoCode First Classes simples (POCOS) anotadas com métodosquedescrevem o mapeamentoobjetorelacionalDatabase Fist – Modelagemrealizada no SQL Server Management Studio e conversãopara o mapeamentoLinq to SqlutilizandoSQLMetal
  • #46 1 – Aplicação seinscrevedizendoquequerrecebernotinicações no servidor da Microsoft - Recebeumaidentificação e uma URI2 – Aplicaçãocadastraessaidentificaçãonasuaaplicação WEB3 – Suaaplicação web envia um POST para o servidor da Microsoft dizendoqual o conteúdo da mensagem e a URI4 – O servidor da Microsoft enviaos dados para o telefone
  • #47 Live Tiles – Notificaçõessãomostradasdiretamentenos Tiles da aplicaçãoRaw – Dados enviadospara o aplicativo. Seuaplicativoprecisaestaraberto, casocontrário a mensagemédescartadaToast – Notificações no topo do celular
  • #48 Live Tiles
  • #49 Live Tiles
  • #50 DemoPush Notifications
  • #54 3 AplicativospublicadosnaMarketPlace = 1 Windows Phone DeviceNãoésorteio