Windows Phone 7 Series Architecture Deep Dive Istvan Cseri Distinguished Engineer Windows Phone

Slides:



Advertisements
Similar presentations
Android Application Development A Tutorial Driven Course.
Advertisements

Dynamic Analysis of Windows Phone 7 apps Behrang Fouladi, SensePost.
Windows Phone 7.5 Academic RoadShow Christophe Peerens Neomytic.
Android architecture overview
Introduction to Android Mohammad A. Gowayyed CS334-Spring 2014.
Copyright © 2012 Certification Partners, LLC -- All Rights Reserved Lesson 4: Web Browsing.
Sascha P. Corti Developer Evangelist, Microsoft Switzerland |
Windows Phone 8.1 for Developers Sascha Corti Technical Evangelist, Microsoft Switzerland | techpreacher.corti.com
Essentials of Developing Windows Phone Apps Chinthaka Dissanayake Tech Lead Exilesoft.
vs. PeopleIcons SOCIAL COMMUNICATIONS ‘People-centric’ experiences merging social nets with communication HARDWARE CHOICE Range of sizes,
Windows Phone
DEPARTMENT OF COMPUTER ENGINEERING
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
Building Windows Phone Applications with Silverlight Nguyen Thanh Tung Project Manager - MISA JSC.
Mobile Application Development
7 Windows Phone 7 2. Windows Phone 7 for Business 1. About Windows Phone 7 3. Windows Phone 7 for Consumer 4. Windows Phone 7 for the Developer Welcome.
An introduction to. Introductions  I’m Rob Fonseca-Ensor  A Solution Architect at Infusion  I run the Canary Wharf.NET User Group  I blog at
Android vs iOS vs Windows Phone 7 Alejandro Mesa (am3473)
It’s always better live. MSDN Events Developing ASP.NET AJAX Controls with Silverlight.
Silverlight Development Win Phone 7 Mohammed M. Melhem Senior ICT Assistant: Application Silverlight and Win Phone.
Introduction to Android Platform Overview
Case study 2 Android – Mobile OS.
Windows Phone 7 Development Tomer Shamam Senior Architect Sela Group.
Khalid Siddiqui Senior Architect, Mobility Center of Excellence Microsoft Corporation SESSION CODE: WPH311.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
Mobile Application Development with ANDROID Tejas Lagvankar UMBC 29 April 2009.
About me Yichuan Wang Android Basics Credit goes to Google and UMBC.
Lecture 8 – Platform as a Service. Introduction We have discussed the SPI model of Cloud Computing – IaaS – PaaS – SaaS.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
01. Introduction to Android Prof. Oum Saokosal Master of Engineering in Information Systems, South Korea
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation.
Augusto Valdez Senior Product Manager Mobile Communications Business SESSION CODE: WPH202.
 Evolution of Smart Client  What is Smart client?  Types of Smart client  Architectural challenges  Smart Client Architecture  Demo application.
2 Philosophy Customer Design Experience Platform.
Android for Java Developers Denver Java Users Group Jan 11, Mike
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
Developing Windows Phone 7 applications Igor Ralić Vedran Vučetić
Making Money with Windows Phone Applications and Games Todd Biggs, Director of Product Management John Bruno, Lead Program Manager.
Lewis Benge Bring your code to Windows MOB336.
1 Isolating Web Programs in Modern Browser Architectures CS6204: Cloud Environment Spring 2011.
Silverlight 101 Ahead! If you know Silverlight and are looking for more advanced content check out : ‘Microsoft Silverlight “Media” : Moving at 60fps’
Mobile Application Development with ANDROID Umang Patel(6537) LDCE.
Building Windows Phone applications with Silverlight, part 2 Peter Torr Program Manager, Microsoft
Drew Lytle Principal Program Manager Microsoft Corporation SESSION CODE: WPH203.
An Introduction to Developing Applications for Microsoft Silverlight Jaime Rodriguez
Saranya Sriram Developer Evangelist | Microsoft
Soumitra Sengupta Principal SDE Lead Windows Phone WPH313.
OSP209 Input Touch Hardware buttons Media Digital media capture & playback Media library access Data Isolated Storage LINQ (Objects and XML).NET.
1 Android Workshop Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
WINDOWS PHONE 7 DEVELOPER GUIDE A guide to 3 screens and the cloud Scott Densmore Sr. Software Development Engineer Microsoft patterns & practices.
If you are thinking about developing mobile application for your customer, this is an important aspect to consider the platform.
Exploring Networked Data and Data Stores Lesson 3.
Understanding Mobile Devices, Interactions, and Tools Lesson 1.
Building Windows Phone 7 Games and Applications Yes, yes! “Games and Applications” and not “Applications and Games” Content is under NDA – please do no.
Daniel Tizon Semior Consultant, Microsoft Regional Director ANURA-SOLSTEAM Développez pour Windows Phone 7.
Android Application -Architecture.
The world’s most advanced mobile platform
Architecture of Android
Mobile App Development
Lesson 4: Web Browsing.
The Windows Phone Application Platform
Platform as a Service.
Windows Phone multitasking
The Application Lifecycle
Application Development A Tutorial Driven Course
Lesson 4: Web Browsing.
Technical Capabilities
Build /23/2019 © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Presentation transcript:

Windows Phone 7 Series Architecture Deep Dive Istvan Cseri Distinguished Engineer Windows Phone

DESIGN: END USER COMES FIRST PLATFORM: RICHER, DEEPER, EASIER APPS HARDWARE: FASTER TO MARKET, LESS HEAVY LIFTING Changing our Game A new approach with WP7

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

Software Architecture App Model Cloud Integration Services Hardware Foundation UI Model

Hardware Foundation Capacitive touch 4 or more contact points Sensors A-GPS, Accelerometer, Compass, Light, 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, Search

Software Architecture App Model Cloud Integration Services Hardware Foundation UI Model

Kernel Hardware BSP App ModelUI ModelCloud Integration Applications App management Licensing Chamber isolation Software updates Shell frame Session manager Direct3D Compositor Xbox LIVE Bing Location Push notifications Windows Live ID Your App UI and logic A-GPSAccelerometerCompassLightProximity MediaWi-FiRadioGraphics Security Networking Storage Frameworks SilverlightXNAHTML/JavaScript CLR Hardware Foundation Software Architecture

App Model Cloud Integration Services Hardware Foundation UI Model

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

App Lifecycle + Windows Phone Marketplace Phone only installs.xap packages signed by 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

Applications and licenses Application install folders App Isolation and Execution 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 Running applications

Sandbox enforced for host process based on declared capabilities System provides host process for app code App Hosting and Runtime 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, phone functionality App Domain XNA Game Object CLR App Model Host SilverlightXNA HTML/JavaScript Silverlight Application Object Frameworks Kernel Hardware BSP App ModelUI ModelCloud Integration App management Licensing Chamber isolation Software updates Shell frame Session manager Direct3D Compositor Xbox LIVE Bing Location Push notifications Windows Live ID Security Networking Storage Hardware Foundation Push Notifications Location A-GPS Accelerometer Compass Light Proximity Media Wi-Fi Radio Graphics CompassA-GPS

Windows Phone 7 Series Frameworks At-a-glance

Windows Phone 7 Series Frameworks Details Common Base Class Library Collections ComponentModelConfiguration Diagnostics Reflection IO Security Threading RuntimeResources GlobalizationText Location Net ServiceModel Linq Application Object Silverlight Presentation and MediaXNA Frameworks for Games Windows Phone Frameworks Navigation ShapesMarkup Media ControlsDrawingIsolatedStorage Audio Media Graphics Input DrawingGamerServices Content PhoneApplicationPagePushNotificationWebBrowserControlSensorsPhoneApplicationFrame CameraDevice Integration Launchers & Choosers Windows Phone Controls

3 Screens and Cloud Common Base Class Library Silverlight Presentation and Media XNA Frameworks Windows Phone 7 Series Frameworks XNA Frameworks Cloud Notification Service Location Service Windows Phone Windows Desktop Xbox

Software Architecture App Model Cloud Integration Services Hardware Foundation UI Model

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

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

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

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

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

DEMO: UI MODEL

Graphics Composition 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

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

Software Architecture App Model Cloud Integration Services Hardware Foundation UI Model

Cloud Integration: Concepts 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 Windows Phone Cloud integration client services Frameworks Windows Phone Application Your Web Service Custom Web Service Existing Web Services Microsoft Services Notification ServiceLocation Service

Windows Phone Location 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 Location client service System.Device.Location Existing Web Services Microsoft Services Location Service

Location Client Architecture Location client service App UI and logic Radio Wi-Fi A-GPS Microsoft Services Security Windows Phone Location Service

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

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

DEMO: PUSH NOTIFICATION

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

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

A different kind of phone Designed for life in motion So you can build integrated experiences & profit from it

Call to Action Download the Windows Phone Developer Tools Create awesome apps and games!