app-to-app communication

Post on 25-Feb-2016

58 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

App-to-App Communication. Sean McKenna Program Manager, Windows Phone seanmck@microsoft.com 2-212. What is App-to-App Communication?. In the beginning…. Extending apps with the phone. Your App. What about the other way…?. Extending the phone with apps. And finally…. - PowerPoint PPT Presentation

TRANSCRIPT

App-to-App CommunicationSean McKennaProgram Manager, Windows Phoneseanmck@microsoft.com2-212

What is App-to-App Communication?

In the beginning…

Your App

Extending apps with the phone

What about the other way…?

Extending the phone with apps

And finally…

Custom URI AssociationsLaunch other apps to complete tasksPlay an album on SpotifyPlay a video in YouTubePost an update to FacebookLaunch device settings

Link your app into core experiencesBrowserMessagingEmailLauncher.LaunchUriAsync(new Uri("myapp:foo=1&bar=2"));

Useful Built-in URI AssociationsTask URI SchemeLock screen settings ms-settings-lock:Email and accounts ms-settings-emailandaccounts:Location settings ms-settings-location:Search for apps by publisher zune:search?publisher=<publisherID>

File Type AssociationsLaunch files in the right appMicrosoft OfficeAdobe ReaderHike & Bike

Handle custom files in your appBrowserEmailOffice Hubvar pdfFile = await StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appdata:///Local/mydoc.pdf"));

Launcher.LaunchFileAsync(pdfFile);

Useful built-in file typesMicrosoft Word documents

Microsoft PowerPoint presentations

Microsoft Excel spreadsheets

Demo: Opening an Office Document

A Look Under the Hood

Source App

Execution Manager

Package Manage

r

Launch by file:Foo.bar

TokenID = 1234

Get handlers for ‘.bar’

Data Sharing ServiceCreate file

brokering token

Target AppLaunch target with token

Redeem token for file

User Experience

Guiding PrinciplesUser is always in controlApps cannot take over an extension

The list of installed apps is private user dataApps cannot query installed apps, URI associations, or file extensions

Standard tasks should be simple and predictableStandard types are handled by built-in experiences

One Handler

Launch URI: skype:call?5551234

No handlers

2+ Handlers

What’s happening in the wild?

Demo: Building a mashup with URI Associations

Using URI Associations to Extend Your App

Spotifyspotify:album:<albumID>spotify:track:<trackID>

YouTubevnd.youtube:<videoID>

Using URI Associations to Extend Your App Facebook

fb:profile[?id=<profileId>]fb:events[?id=<eventId>]fb:groups[?id=<groupId>]fb:pages[?id=<pageId>]fb:post?text=<textToPost>

Foursquarefoursquare://venues/<venueID>foursquare://checkins/<checkinID>foursquare://tips/<tipID>foursquare://users/<userID>

Using URI Associations to Extend Your AppHere Drive (+others)

ms-drive-to:?destination.latitude=<latitude> &destination.longitude=<longitude> &destination.name=<name>

Here Maps (+others)ms-walk-to:?destination.latitude=<latitude> &destination.longitude=<longitude> &destination.name=<name>

App Launching via ProximityTarget apps• Your app can be launched based on a URI sent from another

device• Handler code is exactly the same• Proximity capability is not requiredSource apps• You can launch apps on other devices using the Proximity

APIs

Demo: Launching via proximity

Coming Soon:Facebook Single Sign-On

Facebook Single Sign-OnRegister your app with Facebook Dev PortalInvoke auth with FB AppID and requested permissionsHandle reactivation when user returns from Facebook app

Facebook Single Sign-On

Your App Facebook App

RecapUse URI schemes and file associations to extend your appSupport your own schemes and file types for exposureHelp us evangelize and catalog these extensions

Sean McKennaseanmck@microsoft.com

THANK YOU!

Sean McKenna seanmck@microsoft.com

Q&A

Evaluate this session

Scan this QR code to evaluate this session and be automatically entered in a drawing to win a prize!

© 2013 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.

© 2012 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.

Coming Soon: Facebook Single Sign-On

Facebook Single Sign-OnRegister your app with Facebook Dev PortalInvoke auth with FB AppID and requested permissionsHandle reactivation when user returns from Facebook app

Facebook Single Sign-On

Your App Facebook App

top related