Presentation is loading. Please wait.

Presentation is loading. Please wait.

Don’t reinvent the wheel There are apps out there that are amazing at what they do – extensibility helps you leverage them. Better Together Extensibility.

Similar presentations


Presentation on theme: "Don’t reinvent the wheel There are apps out there that are amazing at what they do – extensibility helps you leverage them. Better Together Extensibility."— Presentation transcript:

1

2

3

4

5 Don’t reinvent the wheel There are apps out there that are amazing at what they do – extensibility helps you leverage them. Better Together Extensibility makes it easy to plug in existing services that your users rely on every day Adding functionality Have you ever used an app and thought of a great feature? Extensibility lets you make it happen. Why is extensibility important?

6 Don’t reinvent the wheel There are apps out there that are amazing at what they do – extensibility helps you leverage them. Better Together Extensibility makes it easy to plug in existing services that your users rely on every day Adding functionality Have you ever used an app and thought of a great feature? Extensibility lets you make it happen. Why is extensibility important?

7 Don’t reinvent the wheel There are apps out there that are amazing at what they do – extensibility helps you leverage them. Better Together Extensibility makes it easy to plug in existing services that your users rely on every day Adding functionality Have you ever used an app and thought of a great feature? Extensibility lets you make it happen. Why is extensibility important?

8 App Services App Extensions App Handover Your App App Handover App Extensions App Services

9

10

11

12 App Handover with LaunchURIForResultsAsync( )

13 LaunchUriForResultsAsync Demo Adding Cropping to our Photo-Editing Application

14 var queryUri = new Uri("appb-forresults:"); string packageFamilyName = "sample.uwpappb"; await Launcher.QueryUriSupportAsync(queryUri, LaunchQuerySupportType.Uri, packageFamilyName);

15 UWP App AUWP App B var options = new LauncherOptions(); options.TargetApplicationPackageFamilyName = "sample.uwpappb"; await Launcher.LaunchUriForResultsAsync(new Uri("appb-forresults:?works=today"), options); var resultData = new ValueSet(); resultData.Add("Result", "Value"); operation.ProtocolForResultsOperation.ReportCompleted(resultData);

16

17 App Handover with LaunchURIForResultsAsync( ) App Services

18 App Services Demo Adding Grayscale to our Photo-Editing App inline

19 var services = await AppServiceCatalog. FindAppServiceProvidersAsync(“com.my.appservice");

20 <uap:Extension Category="windows.appService" EntryPoint="BackgroundService.Service"> //Regular Service Background task public sealed class Service : IBackgroundTask

21 using (var connection = new AppServiceConnection()) { connection.AppServiceName = “com.my.appservice"; connection.PackageFamilyName = "my.app"; AppServiceConnectionStatus status = await connection.OpenAsync(); … } var request = new ValueSet(); request.Add(“key", “value"); var response = await connection.SendMessageAsync(request);

22 UWP App Services Host UWP Client A UWP Client B AppServiceConnection App Service Background Task

23 Expose Endpoint Facebook Contoso Feed Pickup Location Consume Contoso Feed Consume People

24

25

26

27 App ServicesApp Extensions

28 PhotoExt

29 <uap3:AppExtension Name=“PhotoExt" Id="base" PublicFolder="Public" DisplayName="Invert" Description="Invert Image">

30 App Extensions CODE WALKTHROUGH

31

32

33 App Extensions

34

35

36

37

38

39


Download ppt "Don’t reinvent the wheel There are apps out there that are amazing at what they do – extensibility helps you leverage them. Better Together Extensibility."

Similar presentations


Ads by Google