windows 8 as an application integration hub

17
CHARMS, PICKERS, CONTRACTS WINDOWS 8 AS AN APP INTEGRATION HUB @JimWooley http://www.ThinqLinq.com

Upload: jim-wooley

Post on 24-May-2015

607 views

Category:

Technology


6 download

DESCRIPTION

Slide deck for Windows 8 as an Application Integration Hub. Demonstrates how Contracts, Pickers, and Charms contribute to making Windows 8 a hub for applications to communicate between each other while retaining sandboxed isolation.

TRANSCRIPT

Page 1: Windows 8 as an Application Integration Hub

C H A R M S , P I C K E R S , C O N T RAC T S

WINDOWS 8 AS AN APP INTEGRATION HUB

@JimWooleyhttp://www.ThinqLinq.com

Page 2: Windows 8 as an Application Integration Hub

WEB BASED APPLICATION INTEGRATION

Page 3: Windows 8 as an Application Integration Hub

WIN8 APPLICATION INTEGRATION

Page 4: Windows 8 as an Application Integration Hub

WINDOWS 8 INTEGRATION OPTIONSC

on

tract

s ExtensionProtocol

Pick

ers File

Contact

Ch

arm

s SearchShareSettings

Page 5: Windows 8 as an Application Integration Hub

• File Extensions (.mp3, .jpg, .foo)• Protocol (mailto)• Schema.org

Page 6: Windows 8 as an Application Integration Hub

PICKERS

• FileOpenPicker• FileSavePicker• FolderPicker• ContactPicker• CredentialPicker

Page 7: Windows 8 as an Application Integration Hub

FILEOPENPICKER

var openPicker = new Windows.Storage.Pickers.FileOpenPicker();openPicker.fileTypeFilter.replaceAll([".png", ".jpg", ".jpeg"]);openPicker.pickSingleFileAsync().then(function (file) { if (file) {

// Do something with the selected file } else { // The picker was dismissed with no selected file }});

Page 9: Windows 8 as an Application Integration Hub

SEARCH CONTRACT

Share provides a lightweight, in context, easy experience for accomplishing

Share provides a lightweight, in context, easy experience for accomplishing

Page 10: Windows 8 as an Application Integration Hub

SEARCH ACTIVATION

protected override void OnSearchActivated(SearchActivatedEventArgs args)

{ SearchResultsPage1.Activate( args.QueryText, args.PreviousExecutionState);}

Page 11: Windows 8 as an Application Integration Hub

SHARE CONTRACTS H A R E P R O V I D E S A L I G H T W E I G H T , I N C O N T E X T , E A S Y

E X P E R I E N C E F O R U S E R D R I V E N A P P L I C AT I O N I N T E G RAT I O N S .

Page 12: Windows 8 as an Application Integration Hub

SHARING FROM SOURCE TO TARGET

Source App Share Broker Share Target App

Registers with the DataTransfer

Manager

Receives event and fills

DataPackage

User selects “Share”, active

app is sent event

Filters list of Target Apps and

Quicklinks

User selects Target App or

Quicklink Activated for sharing

Activate Target as kind shareTarget Processes

DataPackage contents

Reports Complete

Completes async calls and returns

Page 13: Windows 8 as an Application Integration Hub

SHARE SOURCE

protected override void OnNavigatedTo(NavigationEventArgs e){ this.dataTransferManager = DataTransferManager.GetForCurrentView(); this.dataTransferManager.DataRequested += new TypedEventHandler<DataTransferManager, DataRequestedEventArgs>(this.OnDataRequested);}private void OnDataRequested(DataTransferManager sender, DataRequestedEventArgs e){ DataPackage requestData = e.Request.Data; requestData.Properties.Title = title; requestData.Properties.Description = description; requestData.SetText(dataPackageText);}

Page 14: Windows 8 as an Application Integration Hub

SHARE TARGET

Page 15: Windows 8 as an Application Integration Hub

WINDOWS 8 INTEGRATION OPTIONSC

harm

s SearchShareSettings

Pick

ers File

Contact

Con

tract

s ExtensionProtocol

Page 16: Windows 8 as an Application Integration Hub

RESOURCES

• Building Windows Bloghttp://blogs.msdn.com/b/b8/ • Build Videos

http://www.buildwindows.com/ • Windows 8 Samples

http://code.msdn.microsoft.com/windowsapps/• Activation options

http://msdn.microsoft.com/en-us/library/windows/apps/hh464906.aspx#file_activation• Contracts & Micro formats

http://www.schema.org

Page 17: Windows 8 as an Application Integration Hub

QUESTIONS>

@JimWooleyhttp://www.ThinqLinq.com