introdução silverlight windows phone
TRANSCRIPT
![Page 1: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/1.jpg)
Introdução ao Silverlight para Windows PhoneNuno Luz | Mobility Solutions Specialist Microsoft Portugal
16-04-2012
![Page 2: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/2.jpg)
Windows Phone
Agenda• Introdução ao Windows Phone
• Ferramentas
• Silverlight
• Novidades na versão Mango
• Novidades na versão Tango
• Truques e dicas
• App-me-up
![Page 3: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/3.jpg)
Introdução ao Windows Phone
![Page 4: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/4.jpg)
Windows Phone
O nosso ecossistema
Outlook e Office
integrados
Integra-se com as
suas infraestrut
uras
Facilita o desenvolvimen
to de aplicações
empresariais
![Page 5: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/5.jpg)
Windows Phone
O user interface
Design inspirado na sinalética de transportes
Rápido e intuitivo
![Page 6: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/6.jpg)
Windows Phone
App connect
Integração das aplicações no centros (Música + Vídeos e Imagens)
Pesquisa no mercado a partir da lista de aplicações
![Page 7: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/7.jpg)
Windows Phone
Live Tiles e notificações
![Page 8: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/8.jpg)
Ferramentas
![Page 9: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/9.jpg)
As melhores ferramentas de desenvolvimento
Aplicações intuitivas e cativantes com o interface Metro
Inclui ferramentas para proteger os dados do negócio
Desenvolvimento acelerado e mais facilitado
Suporte para tecnologias e serviços actuais
Ferramentas largamente utilizadas e reconhecidas mundialmente
Todas as ferramentas necessárias num só download gratuito
Beneficios:
![Page 10: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/10.jpg)
Windows Phone
Modelos de projecto
• O Visual Studio oferece uma série de modelos de projecto
• Cada um corresponde a um tipo especifico de aplicação
10
![Page 11: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/11.jpg)
Windows Phone
Modelos de aplicação
• “Windows Phone” application– Projecto simples de uma página
• “DataBound” application– É um exeplo de aplicação que utiliza databinding
• Class Library– Projecto sem UI para conter classes reutilizaveis
• “Pivot” application– Aplicação com vários ecrãs onde a navegação é feita na
horizontal
• “Panorama” application– Aplicação com o fundo panorâmico (na horizontal), que
ocupa mais do que um ecrã11
![Page 12: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/12.jpg)
Windows Phone
Tipos de aplicação
• Os três tipos de projectos de aplicação oferecem um user interface para diferentes experiências de utilização
12
![Page 13: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/13.jpg)
Windows Phone
Expression Blend: Design gráfico
• Orientado para os designers, permite importar e criar gráficos e vectores, e ainda criar animações.
– O Blend faz parte do SDK.13
![Page 14: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/14.jpg)
Windows Phone
Visual Studio: Criação do código
• Um programador pode pegar na base desenhada no Blend e tratar da “canalização” para que a mesma funcione.
– O Visual Studio também permite trabalhar o design de uma aplicação mas não de forma tão completa como o Expression Blend
14
![Page 15: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/15.jpg)
Silverlight Windows Phone
![Page 16: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/16.jpg)
Windows Phone
Elementos e o XAML
• O XAML é a linguagem que descreve os componentes do interface do Silverlight
16
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <TextBox Height="72" HorizontalAlignment="Left" Margin="8,19,0,0" Name="firstNumberTextBox" Text="0" VerticalAlignment="Top" Width="460" TextAlignment="Center" /> . . . <Button Content="equals" Height="72" HorizontalAlignment="Left" Margin="158,275,0,0" Name="equalsButton" VerticalAlignment="Top" Width="160" Click="equalsButton_Click" /> . . .</Grid>
16
![Page 17: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/17.jpg)
Windows Phone
O code behind
• Cada página XAML tem associada um ficheiro, denominado de code behind no qual assenta a lógica de programação
1717
![Page 18: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/18.jpg)
Application ChromeSystem Tray e Application BarSystem Tray
Àrea que mostra informações do sistema (reservada ao sistema)O programador pode esconder esta na sua app:Microsoft.Phone.Shell.SystemTray.IsVisible = false;
Application BarÀrea da aplicação onde estão os botões de acesso às tarefas mais comuns da aplicação
![Page 19: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/19.jpg)
Windows Phone
Pode ter opacidade e ficar minimizado
Utilizar ApplicationBar em vez de criar um menu próprio
Até 4 botões + menu opcional
Basta deslizar a barra para cima de modo a mostrar o menu
Navegação - Application Bar
![Page 20: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/20.jpg)
Windows Phone
Application Bar no Xaml
20
<phone:PhoneApplicationPage x:Class=“MyApp.MainPage” … >
<phone:PhoneApplicationPage.ApplicationBar> <shell:ApplicationBar x:Name="AppBar" IsMenuEnabled="True"> <shell:ApplicationBar.Buttons> <shell:ApplicationBarIconButton x:Name="NewContactButton" IconUri="Images/appbar.new.rest.png" Text="New" Click="NewContactButton_Click"/> <shell:ApplicationBarIconButton x:Name="SearchButton" IconUri="Images/appbar.feature.search.rest.png" Text="Find" Click="SearchButton_Click"/> </shell:ApplicationBar.Buttons> <shell:ApplicationBar.MenuItems> <shell:ApplicationBarMenuItem x:Name="GenerateMenuItem"
Text="Generate Data" Click="GenerateMenuItem_Click" /> <shell:ApplicationBarMenuItem x:Name="ClearMenuItem" Text="Clear Data" Click="ClearMenuItem_Click" /> </shell:ApplicationBar.MenuItems> </shell:ApplicationBar> </phone:PhoneApplicationPage.ApplicationBar>
![Page 21: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/21.jpg)
Windows Phone
Navegação• O Silverlight no Windows
Phone utiliza um modelo de navegação baseado em páginas
– Semelhante ao modelo das páginas de internet
– Cada página é identificada por um URI diferente
– A navegação é feita com ajuda do botão “Back”
– O botão “Back” pode ser contornado
– É ainda possível passar dados entre páginas
![Page 22: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/22.jpg)
Windows Phone
Navegação não linear
• Atenção ao desenhar a aplicação!
• Se navegar da ‘pagina3’ para a ‘MainPage’ e o utilizador tocar no botão Back, o que é que acontece?
– O utilizador espera que a aplicação feche?
– De facto é levado de novo para a página 3!
• Solução: nova API– NavigationService.RemovebackE
ntry()22
![Page 23: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/23.jpg)
Windows Phone
NavigationService.RemoveBackEntry()• Quando se navega da ‘Pagina3’ para a
‘MainPage’, deve-se introduzir um marcador na query string:
• E no método OnNavigatedTo() na MainPage, procura-se pelo marcador, e remove-se a ‘ Pagina3’ e ‘Pagina2’ do histórico de navegação (navigation history stack):
23
NavigationService.Navigate(new Uri("/MainPage.xaml?homeFromThird=true", UriKind.Relative));
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e ){ if (e.NavigationMode == System.Windows.Navigation.NavigationMode.New && NavigationContext.QueryString.ContainsKey( “homeFromThird" )) { NavigationService.RemoveBackEntry(); // Remove ThirdPage NavigationService.RemoveBackEntry(); // Remove SecondPage }
![Page 24: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/24.jpg)
Demo
ApplicationBar e navegação
24
![Page 25: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/25.jpg)
Novidades no Mango
![Page 26: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/26.jpg)
Windows Phone 7.5
Software Architecture
App Model
Cloud and Integration
Services
Hardware Foundation
UI Model
Gyro
Camera, Sensors & Motion
Fast App Switch Silverlight and
XNA Integration
Silverlight 4.0
Flexible chassis
SQL CEGen GC
Push, Alerts
Multitasking
Calendar Contacts Maps
Extras, Tiles
Sockets
![Page 27: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/27.jpg)
Windows Phone
Silverlight Bing Map• Controle do Silverlight Map
• Optimizado para Windows Phone– Touch Enabled
Pinch – zoom in/out Trandução
– Caching
http://www.microsoft.com/maps/developers/mobile.aspx
![Page 28: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/28.jpg)
Windows Phone
Localização no emulador
• O emulador do SDK 7.1 do Windows Phone trás um simulador de localização
28
![Page 29: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/29.jpg)
Windows Phone
Câmara
• É possível capturar uma imagem a partir de uma aplicação
• A aplicação também pode apresentar a visualização da câmara
29
• A aplicação pode aceder directamente ao vídeo e mostrar o mesmo para se criar uma aplicação de realidade aumentada ou uma câmara com interface personalizado.
• A classe PhotoCamera permite controlar a cârmara e mostrar a mesma no ecrã.
![Page 30: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/30.jpg)
Windows Phone
Sensores disponíveis
• Existem 3 sensores diferentes– Acelerometro– Compasso– Giroscópio
• Nem todos os sensores estão disponíveis em todos o telefones
– O Giroscópio apenas está disponíveis em telefones com o Mango
• Os sensores são utilizados todos da mesma forma:
– Despoletam um evento quando têm alguma leitura
![Page 31: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/31.jpg)
Windows Phone
A biblioteca de sensores
• Os sensores de movimento estão em Devices.Sensors library
• É necessário adicionar uma referência para o projecto
using Microsoft.Devices.Sensors;
![Page 32: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/32.jpg)
Windows Phone
Determinar se os sensores estão disponíveis
• Todos os sensores expôem a propriedade IsSupported que pode ser utilizada para verificar se o equipamento tem o sensor
• Se uma aplicação tentar utilizar um sensor que não esteja disponível ocorre uma excepção:
– Testar sempre antes de usar!
• Todos os telefones têm acelerómetro
if (Gyroscope.IsSupported){ // we have a gyro on the phone}
![Page 33: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/33.jpg)
Windows Phone
Simulador de movimento
• O SDK do Windows Phone tem um simulador que permite testar o código.
![Page 34: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/34.jpg)
Demo
Mapas, câmara e sensores
34
![Page 35: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/35.jpg)
Novidades no Tango
![Page 36: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/36.jpg)
Windows Phone
Tango explicado
Equipamentos de baixo custo para mercados emergentes
23 novos mercadosBahrain, Bulgária, China, Costa Rica, Croacia, Estonia, Islandia, Iraque, Israel, Cazaquistão, Letónia, Lituania, Qatar, Roménia, Arábia Saudita, Eslováquia, Eslovenia, Tailandia, Turquia, EAU, Ucrania, Venezuela e Vietname
Requisitos de memória e processadorAcomoda processadores 7x27 e 256 MB de memória.Não permite correr Background agents.
Nokia Lumia 610
![Page 37: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/37.jpg)
Testem o Tango hoje! Instalem o Windows Phone 7.1.1 SDK
Update Download: http://tinyurl.com/cuh8nez Confirmem que a vossa app correm bem em
baixa memória Adicionem a vossa app a 23 novos mercados!
2 emuladores
256 e 512 MB
![Page 38: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/38.jpg)
Recursos e Dicas
![Page 39: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/39.jpg)
Windows Phone
Opções de distribuição no Marketplace
“Beta” Targeted PublicNúmero de utlizadores 100 Ilimitado Ilimitado
Preço Sem custoPode ser
pago Pode ser pago
Limite de tempoExpira após 90
dias Sem limiteSem limite
Actualizável Não Sim Sim
Certificação necessária Não Sim Sim
Visivel ao Publico Não Não* Sim
Controle de acesso WL ID’s Não Não
Utilizadores tipo Beta Privados Público
![Page 40: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/40.jpg)
Windows Phone
Recursos
Mapashttp://www.microsoft.com/maps/developers/mobile.aspxApp Hubhttp://create.msdn.com/en-US/ Silverlight Developer Toolkithttp://silverlight.codeplex.com
![Page 41: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/41.jpg)
Windows Phone
Marketplace Test Kit
Verifica o Xap para ver se passa nos testes de certificação do Marketplace
Fornece detalhes em caso de falha e aponta soluções
![Page 42: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/42.jpg)
Windows Phone
+Recursos
App Hub http://create.msdn.com
Tools http://wpdev.ms/wpsdk71rc
WP on MSDN Library
http://wpdev.ms/wponmsdn
WP “How To” Index http://wpdev.ms/wphowtos
WP UX Guide http://wpdev.ms/wpuxguide
WP P&P Guide http://wpdev.ms/wppnpguide
WP Dev Blog http://wpdev.ms/developerblog
Porting to WP http://wpdev.ms/porting
WP Labs (WP7) http://wpdev.ms/wprtmhols
WP Labs (WP7.5) http://wpdev.ms/mangohol
WP SL Quick Starts http://wpdev.ms/xamlquick
![Page 43: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/43.jpg)
Windows Phone
+Recursos: Videos
WP Jumpstart http://wpdev.ms/jumpstarts
WP How To Videos http://wpdev.ms/howvidsWP “Absolute Beginners”
http://wpdev.ms/beginvids
Inside WP on C9 http://wpdev.ms/insidewpDesign Toolbox http://wpdev.ms/designtbWP Game Dev Vids http://wpdev.ms/gamevidsWP at MIX 11 Vids http://wpdev.ms/wpmix11WP at TENA 11 Vids http://wpdev.ms/wptena11
![Page 44: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/44.jpg)
Windows Phone
+Recursos: Outros
App Hub FAQ http://wpdev.ms/apphubfaq
App Hub Forums http://wpdev.ms/ahforumRegistration Walkthrough
http://wpdev.ms/regwalk
Submission Walkthrough
http://wpdev.ms/subwalk
Cert Requirements http://wpdev.ms/certreqWP Samples on MSDN
http://wpdev.ms/officialsamples
SL Toolkit for WP http://wpdev.ms/wpsltkAzure Toolkit for WP http://wpdev.ms/wpwaztk
![Page 45: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/45.jpg)
Windows Phone
+Recursos: de terceiros
Silverlight Show on WP
http://www.silverlightshow.net/Search.aspx?q=%5Bwindows-phone-7%5D
Windows Phone Geek
http://www.windowsphonegeek.com/
WPDEV on Twitter http://twitter.com/#search?q=wp7devWPDEV on REDDIT http://www.reddit.com/r/wp7devWPDEV on Stack
Overflowhttp://stackoverflow.com/questions/tagged/windows-phone-7
![Page 46: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/46.jpg)
App me up e MSP
![Page 47: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/47.jpg)
Windows Phone
App me up
Formação e tutoriais Suporte directo Notícias e novidades em primeira mão App VIP – ganha um Nokia
![Page 48: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/48.jpg)
Programa Microsoft Student
PartnerO programa Microsoft Student Partners destina-se a jovens estudantes, de todo o mundo, com espírito empreendedor, paixão por tecnologia e que desempenhem um papel activo nas respectivas comunidades académicas.
Através da ligação privilegiada que mantém com a Microsoft, as funções do MSP passam por:- Organizar eventos de teor tecnológico;- Divulgar as mais recentes novidades tecnológicas;- Apoiar no desenvolvimento das ideias dos seus colegas;- Participar em projectos de cariz social;- Etc.
Em suma, o MSP tem a tarefa de aproximar a sua comunidade académica das tecnologias Microsoft.
http://microsoftstudentpartners.com
![Page 49: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/49.jpg)
Q&A
![Page 50: Introdução Silverlight Windows Phone](https://reader035.vdocuments.site/reader035/viewer/2022062709/5590cd5c1a28abab1c8b460d/html5/thumbnails/50.jpg)
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.