SlideShare a Scribd company logo
Katrien De Graeve
Developer Evangelist
Microsoft Belgium
Designing and Developing a
Windows Phone 7 Application in
Silverlight End-to-End – Part 2
SESSION CODE: WPH303
Part 1 Recap
5
CLOUD
SCREEN
Phone Emulator
Samples Documentation
Guides Community
Packaging and Verification Tools
Notifications
Location Identity Feeds
MapsSocial
App Deployment Registration
Validation
Certification
Publishing
Marketplace
MO and CC Billing
Business Intelligence
Update Management
Elements of the Windows Phone 7 Application Platform
Tools
Portal ServicesCloud Services
Sensors Media Data
Xbox LIVE Notifications
.NET Framework managed code sandbox
Location
Phone
Runtime – On “Screen”
6
Location
Location
services
+ Accuracy
- Power
- Speed
- Indoors- Accuracy
+ Power
+ Speed
- Wilderness
+/- Accuracy
+/- Power
+/- Speed
+/- Urban areas
GPS
7
Bing Maps
Use of Location Services
Bing Maps Silverlight Control
Based on desktop version
New events and event argument classes (MapDragEventArgs,
MapFlickEventArgs, MapPan, MapResolved, MapZoom)
Differences Phone and Desktop versions:
http://msdn.microsoft.com/en-us/library/ff955762.aspx
Adding location and loading
real data
9
Tips, Tricks and Lessons Learned
Accessing location consumes battery, store location
Tip: use “Bing Maps Online Interactive SDK”
http://www.microsoft.com/maps/isdk/silverlight/
Create your Bing Maps developer key
http://msdn.microsoft.com/en-us/library/ff428642.aspx
10
Choosers and Launchers
APIs for launching built-in applications
Choosers: always return a value (CameraPictureTask,
PhotoChooserTask
Launchers: launch an application without returning any
value (PhoneCallTask, etc)
11
List of choosers and launchers
Launchers
BingMapsTask
MarketplaceDetailTask
MarketplaceHubTask
MarketplaceReviewTask
MarketplaceSearchTask
MediaPlayerLauncher
PhoneCallTask
SaveEmailAddressTask
SavePhoneNumberTask
(cont’d)
SearchTask
EmailComposeTask
SMSComposeTask
WebBrowserTask
Choosers
CameraCaptureTask
PhoneNumberChooserTask
PhotoChooserTask
EmailAddressChooserTask
14
Application Lifecycle and Tombstoning
PhoneApplicationService
App events
Application_Launching
Application_Activated
Application_Deactivated
Application_Closing
http://msdn.microsoft.com/en-us/library/ff817008(VS.92).aspx
Adding CameraCaptureTask
Saving data
demo
16
Tips, Tricks and Lessons Learned
Application execution lifecycle and tombstoning
CameraCaptureTask and testing on device
BackgroundWorker
17
Push Notifications
Server-initiated communication
Enables key background scenarios
Preserves battery life and user experience
18
New photos online!
Seattle, WA: Sunny and 85 degrees
Notification Types
1
4
1
5
19
Push Notifications: Data Flow
Push client
Push
service
Your
service
Tile
App
Toast
Send push data to URI
Send push
data to client
Send URI
to server
Open push channelReturn URIData to App
Data to toast
Data to tile
Event
out.loud Push Notification
demo
21
Tips, Tricks and Lessons Learned
BackgroundWorker
OData Service: ChangeInterceptor
Notify User visually and with vibration when inside app
You are in charge
Using a Tile Schedule:
http://msdn.microsoft.com/en-us/library/ff769548(v=VS.92).aspx
Closing the loop
Application bar, back key
demo
23
Finetuning, not covered
Orientation support
Integration with authentication & membership
Integration with Twitter
Unit testing
Error handling 
...
24
Session Objectives and Takeaways
High level overview of an end-to-end App
Integrate most of concepts in one sample
Cloud services
MVVM
Design of Views: Controls, Pages and Navigation
Development of ViewModel/Model
Integration with Phone and use of Phone Frameworks
25
Resources
Get started, all tooling is free and available to all:
http://developer.windowsphone.com
Performance on Windows Phone 7 – must read material:
http://windowsteamblog.com/windows_phone/b/wpdev/archive/2010/09/1
3/building-high-performance-silverlight-apps-on-windows-phone-7.aspx
Windows Phone 7 Jump Start training (12 hours training,
including labs and video):
http://blogs.msdn.com/b/mikeormond/archive/2010/08/19/windows-
phone-7-jumpstart-training-on-demand.aspx
26
Windows Phone 7: A New Kind of Phone
Mobility Smack Down
Related Content
Building Games for Windows Phone 7 with XNA
© 2008 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.
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.

More Related Content

Viewers also liked (12)

Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Members Receive 2015 PRSM Awards __April 2015
Members Receive 2015 PRSM Awards __April 2015Members Receive 2015 PRSM Awards __April 2015
Members Receive 2015 PRSM Awards __April 2015
 
Session 26 Henrik Eriksson
Session 26 Henrik ErikssonSession 26 Henrik Eriksson
Session 26 Henrik Eriksson
 
Trend Event for Engineering Companies
Trend Event for Engineering CompaniesTrend Event for Engineering Companies
Trend Event for Engineering Companies
 
amaan cv
amaan cvamaan cv
amaan cv
 
frostllc
frostllcfrostllc
frostllc
 
The holiday of september 16th
The holiday of september 16thThe holiday of september 16th
The holiday of september 16th
 
Multi-mania 2013: HTML5 Games to native Windows apps - attach of the yeti
Multi-mania 2013: HTML5 Games to native Windows apps - attach of the yetiMulti-mania 2013: HTML5 Games to native Windows apps - attach of the yeti
Multi-mania 2013: HTML5 Games to native Windows apps - attach of the yeti
 
Acne toloza marianela - www.instituto taladriz.com.ar
Acne   toloza marianela - www.instituto taladriz.com.arAcne   toloza marianela - www.instituto taladriz.com.ar
Acne toloza marianela - www.instituto taladriz.com.ar
 
Tríptic npc definitiu
Tríptic npc definitiuTríptic npc definitiu
Tríptic npc definitiu
 
Afiche
AficheAfiche
Afiche
 
Sistemas bioclimaticos
Sistemas bioclimaticosSistemas bioclimaticos
Sistemas bioclimaticos
 

Similar to Designing and developing a Windows Phone 7 Silverlight Application End-to-End - Part 2

Windows Phone 7 Architecture Overview
Windows Phone 7 Architecture OverviewWindows Phone 7 Architecture Overview
Windows Phone 7 Architecture Overview
Bhavya Siddappa
 
Modern C&C Systems, Using New Technologies
Modern C&C Systems, Using New TechnologiesModern C&C Systems, Using New Technologies
Modern C&C Systems, Using New Technologies
Tamir Khason
 
Windows phone7 By Subodh
Windows phone7 By Subodh Windows phone7 By Subodh
Windows phone7 By Subodh
Prashant Singh
 
Resume for Ladan Jamali
Resume for Ladan JamaliResume for Ladan Jamali
Resume for Ladan Jamali
Ladan Jamali
 
Cloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile AppsCloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile Apps
Nick Landry
 
Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8
Karthikeyan Anbarasan (AK)
 
WP7 Platform Architecture
WP7 Platform ArchitectureWP7 Platform Architecture
WP7 Platform Architecture
Kivanc Ozuolmez
 
HariKrishna-2+year-Dotnet-Profile
HariKrishna-2+year-Dotnet-ProfileHariKrishna-2+year-Dotnet-Profile
HariKrishna-2+year-Dotnet-Profile
batchuhari
 

Similar to Designing and developing a Windows Phone 7 Silverlight Application End-to-End - Part 2 (20)

Designing and developing a Windows Phone 7 Silverlight Application End-to-End...
Designing and developing a Windows Phone 7 Silverlight Application End-to-End...Designing and developing a Windows Phone 7 Silverlight Application End-to-End...
Designing and developing a Windows Phone 7 Silverlight Application End-to-End...
 
Windows Phone 7 Architecture Overview
Windows Phone 7 Architecture OverviewWindows Phone 7 Architecture Overview
Windows Phone 7 Architecture Overview
 
Build once deploy everywhere using the telerik platform
Build once deploy everywhere using the telerik platformBuild once deploy everywhere using the telerik platform
Build once deploy everywhere using the telerik platform
 
Modern C&C Systems, Using New Technologies
Modern C&C Systems, Using New TechnologiesModern C&C Systems, Using New Technologies
Modern C&C Systems, Using New Technologies
 
Windows phone7 By Subodh
Windows phone7 By Subodh Windows phone7 By Subodh
Windows phone7 By Subodh
 
Building Cloud-Enabled Cross-Platform Mobile Apps in C# with Azure App Services
Building Cloud-Enabled Cross-PlatformMobile Apps in C# with Azure App ServicesBuilding Cloud-Enabled Cross-PlatformMobile Apps in C# with Azure App Services
Building Cloud-Enabled Cross-Platform Mobile Apps in C# with Azure App Services
 
Resume for Ladan Jamali
Resume for Ladan JamaliResume for Ladan Jamali
Resume for Ladan Jamali
 
TechDays 2013 Developer Keynote
TechDays 2013 Developer KeynoteTechDays 2013 Developer Keynote
TechDays 2013 Developer Keynote
 
NexGen Software Inc
NexGen Software IncNexGen Software Inc
NexGen Software Inc
 
.NET Development
.NET Development.NET Development
.NET Development
 
Cloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile AppsCloud-enabling the Next Generation of Mobile Apps
Cloud-enabling the Next Generation of Mobile Apps
 
droidcon2011
droidcon2011droidcon2011
droidcon2011
 
Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8Windows azure mobile services and windows phone 8
Windows azure mobile services and windows phone 8
 
Janakiraman_Apr2016_3SF
Janakiraman_Apr2016_3SFJanakiraman_Apr2016_3SF
Janakiraman_Apr2016_3SF
 
Janakiraman_Mar2016_SF
Janakiraman_Mar2016_SFJanakiraman_Mar2016_SF
Janakiraman_Mar2016_SF
 
Whats new windows phone 8 1
Whats new windows phone 8 1Whats new windows phone 8 1
Whats new windows phone 8 1
 
Ordina SOFTC Presentation - Windows Phone 7 and the cloud
Ordina SOFTC Presentation - Windows Phone 7 and the cloudOrdina SOFTC Presentation - Windows Phone 7 and the cloud
Ordina SOFTC Presentation - Windows Phone 7 and the cloud
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
WP7 Platform Architecture
WP7 Platform ArchitectureWP7 Platform Architecture
WP7 Platform Architecture
 
HariKrishna-2+year-Dotnet-Profile
HariKrishna-2+year-Dotnet-ProfileHariKrishna-2+year-Dotnet-Profile
HariKrishna-2+year-Dotnet-Profile
 

More from Katrien De Graeve

More from Katrien De Graeve (7)

Fitting the pieces together - at Drupal Summit Europe - 2011
Fitting the pieces together - at Drupal Summit Europe - 2011Fitting the pieces together - at Drupal Summit Europe - 2011
Fitting the pieces together - at Drupal Summit Europe - 2011
 
IE9 Pinning workshop slides - MS Webcafe nr by the water
IE9 Pinning workshop slides - MS Webcafe nr by the waterIE9 Pinning workshop slides - MS Webcafe nr by the water
IE9 Pinning workshop slides - MS Webcafe nr by the water
 
Multi-mania: Hacking your way through website issues with F12 devtools
Multi-mania: Hacking your way through website issues with F12 devtoolsMulti-mania: Hacking your way through website issues with F12 devtools
Multi-mania: Hacking your way through website issues with F12 devtools
 
Webcafe 3 - MIX11 hidden gems and top news
Webcafe 3 - MIX11 hidden gems and top newsWebcafe 3 - MIX11 hidden gems and top news
Webcafe 3 - MIX11 hidden gems and top news
 
TechDays 2011 Belgium & Lux - Resources
TechDays 2011 Belgium & Lux - ResourcesTechDays 2011 Belgium & Lux - Resources
TechDays 2011 Belgium & Lux - Resources
 
UX@Vitra - Experience Continuum
UX@Vitra - Experience ContinuumUX@Vitra - Experience Continuum
UX@Vitra - Experience Continuum
 
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
 

Recently uploaded

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 

Recently uploaded (20)

Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 

Designing and developing a Windows Phone 7 Silverlight Application End-to-End - Part 2

  • 1.
  • 2. Katrien De Graeve Developer Evangelist Microsoft Belgium Designing and Developing a Windows Phone 7 Application in Silverlight End-to-End – Part 2 SESSION CODE: WPH303
  • 4.
  • 5. 5 CLOUD SCREEN Phone Emulator Samples Documentation Guides Community Packaging and Verification Tools Notifications Location Identity Feeds MapsSocial App Deployment Registration Validation Certification Publishing Marketplace MO and CC Billing Business Intelligence Update Management Elements of the Windows Phone 7 Application Platform Tools Portal ServicesCloud Services Sensors Media Data Xbox LIVE Notifications .NET Framework managed code sandbox Location Phone Runtime – On “Screen”
  • 6. 6 Location Location services + Accuracy - Power - Speed - Indoors- Accuracy + Power + Speed - Wilderness +/- Accuracy +/- Power +/- Speed +/- Urban areas GPS
  • 7. 7 Bing Maps Use of Location Services Bing Maps Silverlight Control Based on desktop version New events and event argument classes (MapDragEventArgs, MapFlickEventArgs, MapPan, MapResolved, MapZoom) Differences Phone and Desktop versions: http://msdn.microsoft.com/en-us/library/ff955762.aspx
  • 8. Adding location and loading real data
  • 9. 9 Tips, Tricks and Lessons Learned Accessing location consumes battery, store location Tip: use “Bing Maps Online Interactive SDK” http://www.microsoft.com/maps/isdk/silverlight/ Create your Bing Maps developer key http://msdn.microsoft.com/en-us/library/ff428642.aspx
  • 10. 10 Choosers and Launchers APIs for launching built-in applications Choosers: always return a value (CameraPictureTask, PhotoChooserTask Launchers: launch an application without returning any value (PhoneCallTask, etc)
  • 11. 11 List of choosers and launchers Launchers BingMapsTask MarketplaceDetailTask MarketplaceHubTask MarketplaceReviewTask MarketplaceSearchTask MediaPlayerLauncher PhoneCallTask SaveEmailAddressTask SavePhoneNumberTask (cont’d) SearchTask EmailComposeTask SMSComposeTask WebBrowserTask Choosers CameraCaptureTask PhoneNumberChooserTask PhotoChooserTask EmailAddressChooserTask
  • 12. 14 Application Lifecycle and Tombstoning PhoneApplicationService App events Application_Launching Application_Activated Application_Deactivated Application_Closing http://msdn.microsoft.com/en-us/library/ff817008(VS.92).aspx
  • 14. 16 Tips, Tricks and Lessons Learned Application execution lifecycle and tombstoning CameraCaptureTask and testing on device BackgroundWorker
  • 15. 17 Push Notifications Server-initiated communication Enables key background scenarios Preserves battery life and user experience
  • 16. 18 New photos online! Seattle, WA: Sunny and 85 degrees Notification Types 1 4 1 5
  • 17. 19 Push Notifications: Data Flow Push client Push service Your service Tile App Toast Send push data to URI Send push data to client Send URI to server Open push channelReturn URIData to App Data to toast Data to tile Event
  • 19. 21 Tips, Tricks and Lessons Learned BackgroundWorker OData Service: ChangeInterceptor Notify User visually and with vibration when inside app You are in charge Using a Tile Schedule: http://msdn.microsoft.com/en-us/library/ff769548(v=VS.92).aspx
  • 20. Closing the loop Application bar, back key demo
  • 21. 23 Finetuning, not covered Orientation support Integration with authentication & membership Integration with Twitter Unit testing Error handling  ...
  • 22. 24 Session Objectives and Takeaways High level overview of an end-to-end App Integrate most of concepts in one sample Cloud services MVVM Design of Views: Controls, Pages and Navigation Development of ViewModel/Model Integration with Phone and use of Phone Frameworks
  • 23. 25 Resources Get started, all tooling is free and available to all: http://developer.windowsphone.com Performance on Windows Phone 7 – must read material: http://windowsteamblog.com/windows_phone/b/wpdev/archive/2010/09/1 3/building-high-performance-silverlight-apps-on-windows-phone-7.aspx Windows Phone 7 Jump Start training (12 hours training, including labs and video): http://blogs.msdn.com/b/mikeormond/archive/2010/08/19/windows- phone-7-jumpstart-training-on-demand.aspx
  • 24. 26 Windows Phone 7: A New Kind of Phone Mobility Smack Down Related Content Building Games for Windows Phone 7 with XNA
  • 25. © 2008 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. 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.