460 likes | 569 Views
What’s C oming N ext to the Windows Phone Application Platform. Brandon Watson. @ brandonwatson. Core principles. ThePhone@microsoft.com 425-985-5568 @ brandonwatson. Major Investment A reas. Multi-tasking Enhanced Phone Framework XNA Silverlight Integration
E N D
What’s Coming Next to the Windows Phone Application Platform Brandon Watson @brandonwatson
Core principles ThePhone@microsoft.com 425-985-5568 @brandonwatson
Major Investment Areas • Multi-tasking • Enhanced Phone Framework • XNA Silverlight Integration • Integrating with the phone • Performance • Database Access • Complete the push notification and Tile experience • Marketplace Services • Sockets
Hardware Availability and Debugging • Not all phones will have same hardware configuration • Gyro and Compass optional (but if Gyro present, Compass present) • Motion Sensor quality based on sensors present • Accelerometer, Gyro, and Compass - best quality • Accelerometer and Compass – good for AR scenarios(reduced quality without Gyro) • Physical hardware required for most debugging scenarios • Accelerometer can be debugged with emulator
New and updated APIs in “Mango” • Chooser Tasks related to user data • EmailAddressChooserTask • PhoneNumberChooserTask • AddressChooserTask • Microsoft.Phone.UserData for direct access • Contacts • Appointments • Important points • Contacts and Appointments APIs are read only • Third party social network data cannot be shared
What is App Connect? • Added functionality 3rd party apps provide for Bing items • Four item types: • Movies • Places • Events • Products
Three Easy Steps to Implement Search Extras • Update your app’s Manifest • Use the Extensions element • One child Extension element for each category your app supports • Your app will appear in those items! • This is a great way to drive downloads if your app isn’t yet installed • Add an Extras.XML file to your XAP • Specify captions for each Bing category • Accept Context to automatically open the item in your app • Create a SearchExtras page that accepts parameters. • Search for the item using the parameters passed to your app.
Multitasking Themes • Fast Application Resume • Ability to resume applications that the user has recently used • Apps stay in memory unless memory is needed for other apps • *Every* app should do this • Background Agents • Ability to run your code in the background • Audio, Timed or on Idle • Notifications • Ability to create alarms and reminders • UX and behavior is the same as the phone Alarms and Calendar items • Background Transfer Service • Application can queue up transfers in the background
Windows Phone Harmony Delightful and Responsive UX Battery Friendly Health Never Regret App Install Network Conscience UX Integrated Feel Hardened Services
Application Lifecycle Re-load state ONLY if tombstoned Application is resident in memory; system detaches resources and pauses threads Tombstoned Save but do not dispose of state
Windows Phone Harmony - UX • Working Set • Maximize # of dormant apps • 5 MB for periodic • 10 MB for audio • BTS limits per app Delightful and Responsive UX • CPU • Balance foreground and background • Monitor usage Never Regret App Install • Periodic agents run serially when screen is on • App isolation is maintained • No app execution on install • Additional ingestion rules Integrated Feel
Windows Phone Harmony - Health • New System Services • Secure • Performant • Reliable • Stress tested Battery Friendly • Efficient Network Usage • Aligned with radio • On Idle agents don’t use radio • Periodic Agents • CPL provides user control • Expire after 14 days • Run 15 seconds every 30 min • Cache GPS • Execute in parallel when screen is off • Participate in battery saver mode Network Conscience Hardened Services
Profiler & Mapping DEMO
Uservoice • We want to hear from you • Released – Windows Phone Developer Feedback App • Provides phone interface to make suggestions about Windows Phone Developer platform • Website http://wpdev.uservoice.com • Released – User Voice for Windows Phone • Makes it very easy to integrate user feedback into your app
Call to Action • Keep building WP7 apps and submit them to marketplace • All apps are forward compatible • Mango allows you to build deeply integrated phone experiences • Multitasking opens up completely creative opportunities • Download the Beta WPDT today and start experimenting
Thanks to Shawn Oster, PM The future. Yesterday. Oren Nachman Software Development Engineer in TestSilverlight for Windows Phone
Agenda • Feedback • The Software Stack • Shifting Focuses • Overview of features coming in the next version • Silverlight 4 features vs. new phone features
Mango Your feedback here
The BigPicture Extras Calendar Contacts Maps Cloud and Integration Services Push, Alerts Silverlight and XNA integration FAS App Model UI Model Multitasking Gen GC SQL CE Software Architecture Silverlight 4.0 Hardware Foundation Camera, Sensors & Motion Flexible chassis SoC
Performance • ListBox scrolling • Memory working set • Off-thread image decoding • BackgroundCreation • Other targeted speed and graphics improvements
Feature Areas • General Silverlight 4 Improvements • Input • Output • Controls • Networking • Media & Graphics • Silverlight & XNA • Performance
General Silverlight 4 Improvements • What It Is • Implicit styles • Data binding enhancements • ICommand support • What It’s Not • Printing, MouseWheel, Right-Click, Drag and Drop
Input • Text • IME integration • TextBox events • Touch • Tap, DoubleTap, Hold
Output • Support for all languages on the phone • Red Squiggly
Controls • RichTextBox (read-only) • WebBrowser uses IE9 • Clipboard API • Fixes for Silverlight Toolkit controls
Networking • Sockets • TCP, UDP Unicast, UDP Multicast • Other Improvements • Full header access • WebClient now returns on originating thread
Silverlight 4 Code Sample
Media and Graphics • WebCam API • Improved battery usage for video in MediaElement • 32 bits per pixel support • Defaults to 16, same as WP7 • VideoBrush
Silverlight & XNA • Page-level • Element-level
Thanks Jaime! Mango Application Lifecycle Fast App Resume Resuming .. . Restore state! IsAppInstancePreserved == false State preserved! IsAppInstancePreserved == true Save State! Tombstoned Tombstone the oldest app Phone resources detached Threads & timers suspended
Sam Jarawan Creepy Twitter