1 / 45

Windows Phone 7 Architecture Deep Dive

WPH313. Windows Phone 7 Architecture Deep Dive . Soumitra Sengupta Principal SDE Lead Windows Phone soumitrs@microsoft.com. Changing Our Game How we are making it happen. DESIGN: END USER COMES FIRST. PLATFORM: FUN AND EASY TO BUILD COMPELLING APPS AND GAMES. HARDWARE:

clem
Télécharger la présentation

Windows Phone 7 Architecture Deep Dive

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. WPH313 Windows Phone 7Architecture Deep Dive SoumitraSengupta Principal SDE Lead Windows Phone soumitrs@microsoft.com

  2. Changing Our GameHow we are making it happen DESIGN: END USER COMES FIRST PLATFORM: FUN AND EASY TO BUILD COMPELLING APPS AND GAMES HARDWARE: OPTIMIZED AND STANDARDIZED

  3. Windows Phone Design SystemCode Name “Metro”

  4. Windows Phone 7 Application Name: Soumitra SenguptaCompany: Microsoft Corporation DEMO

  5. Session Outline Cloud Integration Services App Model UI Model Software Architecture Hardware Foundation

  6. Cloud Integration Services App Model UI Model Software Architecture Hardware Foundation

  7. Hardware Foundation Capacitive touch: 4 or more contact points 800 Sensors: A-GPS, Accelerometer, Compass, Light, and Proximity Camera: 5 mega pixels or more Multimedia: Common detailed specs, Codec acceleration Memory: 256MB RAM or more, 8GB Flash or more GPU: DirectX 9 acceleration CPU: ARMv7 Cortex/Scorpion or better Hardware buttons | Back, Start, and Search 480

  8. Cloud Integration Services App Model UI Model Software Architecture Hardware Foundation

  9. Software Architecture Applications Your App UI and logic Frameworks Silverlight XNA HTML/JavaScript CLR App Model UI Model Cloud Integration App management Licensing Chamber isolation Software updates Shell frame Session manager Direct3D Compositor Xbox LIVE Bing Location Push notifications Windows Live ID Kernel Hardware BSP Security Networking Storage A-GPS Accelerometer CompassLight Proximity Media Wi-Fi Radio Graphics Hardware Foundation

  10. Cloud Integration Services App Model UI Model Software Architecture Hardware Foundation

  11. App Model: Concepts Application Uniquely identifiable, licensable, and serviceable software product packaged as a XAP Application Deployment, Update and Lifecycle Steps include Ingestion, Certification and Signing Windows Phone Marketplace Windows Phone Marketplace Application license Crypto-verifiable object issued to grant rights to an application

  12. App Deployment and Update + • Phone only installs .xap packages signed by marketplace Windows Phone Marketplace • Phone handles all aspects of .xap installation based on the manifest • Individual apps cannot make arbitrary changes to the phone during installation • Users control install, update and uninstall, while the marketplace controls revocation • Individual apps do not control their own lifecycle on the phone

  13. Application Lifecycle • Splash screen • App constructor • Startup event • Exit event • Obscured by shell • Moved to background

  14. App Lifecycle : Obscured • Phone call • Reminder • Battery low Applications enable user to resume What if they answer the phone? • Application is automatically paused • Shell UI Obscures application UI

  15. Application Lifecycle: Deactivate & Activate • We’ll cover “background processing” in the future • You will get more details from Peter’s talk on Wednesday • Hit Start • Open toast • Lock screen User is back where they left off Load state to continue where you left off Save state for later use Assume your process is killed

  16. App Isolation and Execution Application install folders Applications and licenses Running applications • Phone only runs apps that have a valid marketplace license • Apps are sandboxed into separate security accounts while installed and at runtime • Resource allocation policy keeps the foreground app responsive • Resource management policy ensures the user can always use Start to run a new app

  17. App Hosting and Runtime App Domain Silverlight Application Object XNA Game Object Frameworks Silverlight XNA HTML/JavaScript CLR App Model Host • System provides host process for app code App Model UI Model Cloud Integration Xbox LIVE Bing Location Push notifications Windows Live ID App management Licensing Chamber isolation Software updates Shell frame Session manager Direct3D Compositor Location Kernel Push Notifications Hardware BSP Security Networking Storage • Sandbox enforced for host process based on declared capabilities A-GPS Accelerometer Compass Light Proximity Media Wi-Fi Radio Graphics A-GPS Compass Hardware Foundation • Each app executes inside an isolated, least-privileged host process • All app code is transparent and CLS-verifiable, mitigating impact of common attacks • Frameworks enable app code to interact with app model, UI model, and phone functionality

  18. Windows Phone 7 Framework At-a-Glance Common .NetClass Libraries Device and Phone Capabilities Silverlight Presentation and Media Library Cloud Services Integration Windows Phone 7 Framework XNA Framework Windows Phone App and UI Model Xbox LIVE Services Windows Phone Controls

  19. Windows Phone 7 Framework Details Windows Phone Framework Sensors Camera Device Integration Launchers and Choosers Windows Phone Controls PhoneApplicationFrame PhoneApplicationPage PushNotification WebBrowserControl Silverlight Presentation and Media XNA Framework for Games Graphics Gamer Services Content Controls Drawing IsolatedStorage Media Input Audio Shapes Markup Media Navigation Application Object Common .Net Class Libraries Diagnostics Runtime Resources Globalization Reflection Location Text IO Net Security Threading Collections ComponentModel Configuration ServiceModel Linq

  20. Building a Windows Phone 7 Application using Visual Studio Name: Soumitra SenguptaCompany: Microsoft Corporation DEMO

  21. 3 Screens and Cloud Cloud Windows Desktop Xbox Windows Phone XNA Framework XNA Framework XNA Framework Location Service Notification Service Silverlight Presentation and Media Silverlight Presentation and Media Windows Phone 7 Windows Phone 7 Series Frameworks Windows Phone 7 Common .Net Class Libraries

  22. Cloud Integration Services App Model UI Model Software Architecture Hardware Foundation

  23. UI Model: Concepts Application UI and logic for functionality exposed through pages Page A single screen of user interaction elements Session An ordered workflow of user interactions spanning applications

  24. UI Model: Familiar Web Concepts Web application Provide media represented as HTTP resources linked by URL’s Phone application Provides UI represented as XAML pages connected into cross-app flows by URI’s Web browser Requests HTTP resources, renders them, and handles navigation across sites Shell frame Requests pages, renders UI, and handles navigation across apps History and tabs Groups together sequences of HTTP resources corresponding to a user’s activity across sites Sessions and back stack Groups together sequences of pages corresponding to a user’s activity across apps

  25. UI Navigation: Example Pictures Take a look at recent photos People Look up the status for a contact Active Sessions Pictures Continue looking at recent photos

  26. UI and State Management: Concepts Page UI Describes the visual appearance of a page Retained in shell frame to support resuming paused sessions Discarded while the session is paused Page State Contains data that describes an instance of a page, analogous to browser cookie

  27. UI and State Management: Concepts Running Applications Dehydrated and rehydrated on demand from saved state • Apps restarted and UI rehydrated as the user navigates thru the phone Shell Frame Monitors resource usage to decide when to pause sessions

  28. Windows Phone 7 Page Navigation Name: Soumitra SenguptaCompany: Microsoft Corporation DEMO

  29. Graphics Composition Direct3D Surface AppPage Start Experience System Tray Incoming Call Notification Volume SIP App Bar • Shell frame composes all UI into a single screen • Central page management enables cross app UI transitions and other effects • System wide Z order enforcement emphasizes core phone functionality

  30. Graphics Architecture App UI and logic Silverlight XNA HTML/JavaScript Shell frame Compositor Direct3D Window manager Graphics driver

  31. Cloud Integration Services App Model UI Model Software Architecture Hardware Foundation

  32. Cloud Integration: Concepts Your Web Service Windows Phone Custom Web Service Windows Phone Application Existing Web Services Notification Service Location Service Microsoft Services Frameworks Cloud integration client services Windows Phone 7 Windows Phone 7 • Built-in user experiences and APIs integrated with key Microsoft services • Familiar API frameworks for interacting with existing Web 2.0 services • Rich support for incorporating custom web services into app-specific experiences

  33. Location Service Windows Phone Existing Web Services Location Service Microsoft Services System.Device.Location Windows Phone 7 Location client service • Built-in support for consuming GPS, AGPS, and Wi-Fi-based location data • Managed APIs for location-based interaction • Microsoft managed Wi-Fi access point data as part of Windows Phone Services

  34. Location Client Architecture Microsoft Services Windows Phone Location Service App UI and logic Silverlight XNA HTML/JavaScript Location client service Security A-GPS Wi-Fi Radio

  35. Push Notification Service Windows Phone Your Web Service Custom Web Service Existing Web Services Notification Service Microsoft Services Windows Phone 7 Microsoft.Phone.Notification Push client service • Built-in support for efficient, battery-aware mobile push notifications • Managed APIs for notification-driven interaction with existing Web 2.0 sites

  36. Push Notification Service Client Architecture Microsoft Services Microsoft Push Notification Service App UI and logic Microsoft.Phone.Notification Live Tiles service Download Manager Push client service Networking Wi-Fi Radio

  37. Xbox LIVE Your Web Service Windows Phone Game specific web requests Custom Web Service Microsoft Services Authenticated Xbox LIVE calls XNA Game Foundation • Gamer Services APIs for Xbox LIVE Profiles, Achievements, and Leaderboards • Game Foundation handles auth, caching, and partial connectivity for Xbox LIVE • Third party token allows secure integration with game-specific services

  38. Gamer Services Architecture Microsoft Services Xbox LIVE App UI and logic XNA Gamer Services APIs Windows Live ID Game Foundation Download Manager Live ID client service Networking Storage

  39. A differentkind of phone Designedfor life in motion So you can build integrated experiencesand profit from it

  40. Call to Action Download the Windows Phone Developer Tools http://developer.windowsphone.com Create awesome apps and games!

  41. Required Slide Resources Learning • Sessions On-Demand & Community • Microsoft Certification & Training Resources www.microsoft.com/teched www.microsoft.com/learning • Resources for IT Professionals • Resources for Developers • http://microsoft.com/technet • http://microsoft.com/msdn

  42. Related Content • Breakout Sessions • WPH304: An In-Depth View of Building Applications for Windows Phone 7 with Microsoft Silverlight (Part 1) • WPH305: An In-Depth View of Building Applications for Windows Phone 7 with Microsoft Silverlight (Part 2) • Developing Occasionally Connected Applications for Windows Phone 7 • WPH310: Designing and Developing for the Rich Mobile Web • WPH311: Developing Mobile Code Today That Will Run on Windows Phone 7 Tomorrow • WPH309: Microsoft Silverlight Performance on Windows Phone 7 • WPH307: Building Windows Phone Games with Microsoft XNA Game Studio • WPH308: Building a High Performance 3D Game for Windows Phone • WPH303 Understanding the Windows Phone 7 Development Tools • WPH314: Coding4Fun – Learn Windows Phone 7 Development by Creating a Robotic T-Shirt Canon • WPH312: Understanding Marketplace and Making Money with Windows Phone 7 Applications

  43. Required Slide Complete an evaluation on CommNet and enter to win!

  44. © 2010 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.

  45. Required Slide

More Related