what's new in windows phone "mango"
DESCRIPTION
TRANSCRIPT
7
Jeff [email protected] | @jabrand | slickthought.netDeveloper EvangelistMicrosoft Corporation
What’s New inWindows Phone 7.5(codename Mango)
Agenda
Execution Model & Fast App Switching
Introduction
Background Agents & Reminders
Sensors & Location
Camera
Live Tiles & Push Notification Services Silverlight & XNA Integration
Search Extensibility
Launchers & Choosers
…with TONS of demos
Introduction
Mango?
Over 1500 new APIs
Microsoft.Phone.BackgroundAudio
Microsoft.Phone.UserData
Microsoft.Phone.Scheduler
Microsoft.Devices.FlashModeMicrosoft.Devices.PhotoCamera
Microsoft.Devices.CaptureResolution
Microsoft.Devices.Sensors.GyroscopeMicrosoft.Phone.BackgroundAgent
Microsoft.Phone.Info.PowerSourceMicrosoft.Phone.Info.DeviceStatus
Microsoft.Phone.Net.NetworkInformation.ConnectState
Microsoft.Phone.Scheduler.Alarm
Microsoft.Phone.Scheduler.Reminder
Microsoft.Phone.Shell.ProgressIndicator
Microsoft.Phone.Tasks.BingMapsTask
Microsoft.Phone.Tasks.SaveRingtoneTask
Microsoft.Phone.Tasks.GameInviteTaskMicrosoft.Phone.UserData.Appointments
Microsoft.Phone.UserData.Contacts
Microsoft.Phone.BackgroundAgent
System.Data.Services.Client
System.Windows.Navigation.JournalEntry
Microsoft.Phone.Shell.ShellToast
Microsoft.Devices.Sensors.Compass
Microsoft.Phone.BackgroundAudio.PlayState
Internet Explorer 9
=
Getting Started
A Tour around WP7 Development
Demo
Execution Model
MOVED TO BACKGROUND: DEACTIVATED
Running
Deactivate
Suspended
Activate
Assume your process is killed
Save state for later use
Load state to continue where you left off
User is back where they left off
• Hit Start• Open
toast• Lock
screen
Fast App Switching Just hold down the back button
EXECUTION MODEL
Tombstoning your application
Demo
Background Agents &Reminders
Background Agents Enable background actions when app isn’t
running
Allow scheduling
Great for audio players or location tracking
Background Agents<Tasks> <DefaultTask Name="_default"
NavigationPage="MainPage.xaml" /> <ExtendedTask Name="BackgroundTask"> <BackgroundServiceAgent Specifier="AudioPlayerAgent“ Name="MyAudioPlaybackAgent“ Source="MyAudioPlaybackAgent“ Type="MyAudioPlaybackAgent.AudioPlayer" /> </ExtendedTask></Tasks>
RemindersReminder reminder = new Reminder(name);reminder.Title = titleTextBox.Text;reminder.Content = contentTextBox.Text;reminder.BeginTime = beginTime;reminder.ExpirationTime = expirationTime;reminder.RecurrenceType = recurrence;reminder.NavigationUri = navigationUri;
ScheduledActionService.Add(reminder);
BACKGROUND AGENTS & REMINDERS
Playing music in the background, and setting a reminder for your user.
Demo
Sensors & Location
Accelerometer
PEOPLE
+Y
-Y
+X
+Z
-Z
Detects the force of gravity, as well as any forces resulting from the movement of the device.
Gyroscope
PEOPLE
Determines the rotational velocity of the device on all three axes.
Compass (Magnetometer)
PEOPLE
Determines the device’s rotation relative to the Earth’s magnetic north pole.
Can also detect magnetic forcesaround the device.
Motion
PEOPLE
Combines the data from Compass, Gyroscope, and Accelerometer.
Handles data like yaw, pitch, roll.
Ideal for augmented reality applications.
Location: Sources of Location
22
Location services
+ Accuracy- Power- Speed- Indoors
- Accuracy+ Power+ Speed- Wilderness
+/- Accuracy+/- Power+/- Speed+/- Urban areas
GPS
Cell towers
WiFi
New Emulator Tools
PEOPLE
Accelerometer data
Location Data
Gyroscope & Compass are not yet supported by the emulator.
Accelerometer Tool
PEOPLE
Location Tool
PEOPLE
SENSORS & LOCATION
A look at the raw sensor data, and simple augmented reality.
Demo
Camera
Programmatic Access
PEOPLE
You now have direct access to the camera, including real-time access to raw frames
Enables augmented reality
You also have access to the flash and focus in your applications.
CAMERA
Camera events and changing the raw image to grayscale.
Demo
Live Tiles & Push Notification
Live Tiles Used to require push notifications to
update
Secondary tiles can be created
Deep linking is easy
LIVE TILES
Adding secondary tiles with deep linking
Demo
Push Notifications
Server-initiated communication
Enables key background scenarios
Preserves battery life and user experience
Notification Types
34
New photos online!
Seattle, WA: Sunny and 85 degrees
1415
Push Notifications: Data Flow
35
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
PUSH NOTIFICATIONS
Subscribing to and receiving push notifications
DEMO
Silverlight & XNA - Together
Fully Integrated
Silverlight controls in an XNA game
XNA models in a Silverlight app
Solves the trouble with UI in XNA
SILVERLIGHT & XNA
Using Silverlight UI with XNA models
DEMO
Search Extensibility
Putting Apps In Their Place Extends the search experience
Launches the user directly into your app
Deep linking makes it seamless
Search Extras
SEARCH EXTRAS
Getting our app in the search results
DEMO
Launchers & Choosers
Launchers & ChoosersLaunchers BingMapsDirectionsTask BingMapsTask EmailComposeTask GameInviteTask MarketplaceDetailTask MarketplaceHubTask MarketplaceReviewTask MarketplaceSearchTask MediaPlayerLauncher PhoneCallTask SaveEmailAddressTask SavePhoneNumberTask SaveRingtoneTask SearchTask SMSComposeTask WebBrowserTask
Choosers AddressChooserTask CameraCaptureTask EmailAddressChooserTask PhoneNumberChooserTask PhotoChooserTask
LAUNCHERS & CHOOSERS
Adding a new ringtone to the user’s device
DEMO
KEY TAKE-AWAYS There’s tons of new stuff to try out
This is a first-class mobile platform
The sky is now the limit
Use your imagination, and get coding!
HTTP://CREATE.MSDN.COM
Q&A