440 likes | 617 Views
Session Code. Product Manager, Windows Phone Developer. Microsoft Corporation. Windows Phone Multitasking & Live Tiles. Larry Lieberman. Key takeaways for Windows Phone. Broad set of multitasking features. Balances user experience with phone health. Familiar .NET programming model.
E N D
Session Code Product Manager, Windows Phone Developer Microsoft Corporation Windows Phone Multitasking & Live Tiles Larry Lieberman
Key takeaways for Windows Phone Broad set of multitasking features Balances user experience with phone health Familiar .NET programming model
Windows Phone Multitasking Block Diagram Alarms & Reminders File Transfers Background Audio Periodic Execution Fast App Switching Built-in services 3rd-party services Resource Management
Harmony Delightful and Responsive UX Battery-Friendly Health Never Regret Installing Apps Network-Aware Integrated Experiences Hardened Services UX
Multitasking and Phone Health New OS services Processing on demand Balance foreground and background Align with system and user activity Monitor resource usage
Fast App Switching Support Keeps user in control Compile and test for Mango Suspends application threads Load or refresh state* OS Compatible with 7.0 apps Reattach resources* * Only if needed.
Application Lifecycle Reload / refresh state only if needed Activated Running Tombstoned Dormant Deactivated Application is resident in memory; system detaches resources and pauses threads Save state but do not discard it
Alarms and Reminders Demo
Alarms and Reminders - Overview Same UX as built-in alarms and reminders Deep link back into the application Efficient implementation based on OS services
Background Transfer Service - Limits 1 2 3 4 5
Background Transfer Service - Limits 20 MB 20 MB Unlimited 100 MB 5 MB
Background Transfer Service - Overview Balances functionality with phone health and user cost Simplifies download management in apps Efficient implementation based on OS services Persists across reboots
Live Tiles Demo
Live Tiles - Overview Pin multiple tiles to Start New flip animation with additional content Update three ways: push, schedule, or local API
Background Agents demo
End-to-End Architecture Developer Application OS MyApp Solution MyApp.dll MyApp Project Single App UX WMAppManifest Logic System Services ISO Store Cloud MyAppAgent Project Logic Different Processes MyAppAgent.dll
Background Agents code
Background Agents – Basic Functionality Allowed Restricted • Tile updates • Toasts • Location • Networking • Storage • Most framework APIs • Microphone • Camera • Sensors • Graphics • Audio • All XNA libraries
Background Agents – Two Flavors Periodic Agent Resource-Intensive Agent • Runs every 30 minutes • Any network connection • Runs for 25 seconds • Used for location, data sync, etc. • Runs on external power • Non-cell network connection • Runs for 10 mins, recurring • Used for daily tasks, large data syncs, etc. ...when battery level is > 20% and battery saver is not on ...when battery level is > 90%
Background Agents - Overview Separate resource-constrained process Managed by the OS to maintain phone health User stays in control via system settings Familiar .NET programming model
Background Audio demo
Background Audio Architecture 20/30 West End Girls Pet Shop Boys MusicApp.dll UX Zune Playback Cloud ISO Store All playback logic lives in the agent! Logic MusicAgent.dll
Background Audio code
Background Audio Playback - Overview HTML 5 Audio Playback in Internet Explorer Track-based playback for standard formats Buffer-based playback for custom formats Guaranteed resources for continuous playback
Recap Broad set of multitasking features Balances user experience with phone health Familiar .NET programming model
Health UX
Feedback Your feedback is very important! Please complete an evaluation form! Thank you!
Questions? • Session Code • Speaker Name • Title • Email • Blog • … • You can ask your questions at “Ask the expert” zone within an hour after end of this session
Session Code Company Name Company Title of Presentation Name
Session Code Company Name Company Name Company Title of Presentation Name
Slide Title • First level • Second level • Third level • Fourth level • Fifth level
PowerPoint Guidelines • Font, size, and color for text have been formatted for you in the Slide Master • Use the color palette shown below • Hyperlink color: www.microsoft.com Sample Fill Sample Fill Sample Fill Sample Fill Sample Fill Sample Fill
Demo Title Name demo
Video Title video
Announcement Title announcement
Code Sample • Get-Process –computername srv1 • class TechEdProgram • { • public static void Main() • { • System.Console.WriteLine("Hello, Tech·Ed!"); • } • }