Windows Developer Day Fall Creators Update Chris Cortes

Slides:



Advertisements
Similar presentations
How to Build Multi- threaded Applications in.NET Mazen S. Alzogbi Technology Specialist Microsoft Corporation.
Advertisements

Advanced Windows 8 Apps Using JavaScript Jump Start Exam Prep Advanced Windows 8 Apps Using JavaScript Jeremy Foster Microsoft Developer Evangelist.
30 April 2014 Building Apps for Windows Phone 8.1 Jump Start WinRT Apps & Silverlight.
Windows Phone 8 Tips & Tricks for Developers Sascha Corti, Microsoft Switzerland Technical Evangelist | techpreacher.corti.com.
The Windows Runtime (WinRT) is the shared runtime and API space used by store apps across the Windows platform (phone and client) 5 Common WinRT.
APLIKACIJE KOJE SU IZVAN SEBE Domagoj Pavlešić, dizzy.hr.
Advanced Windows Mobile Application Development
11/12/ :06 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Office 365 Development July 2014.
5/2/2018 1:53 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
Windows Calls Applications (windows.applicationmodel.calls)
Asynchronous Programming with C# v.Next
The Future of C# and Visual Basic
Silverlight apps on Windows Phone 8.1
TechEd /6/2018 6:15 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Timesheets and Statusing in Project 2013
What’s New in the Lync Client SDK 9/8/2018 8:15 AM
9/11/ :55 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Build /13/2018 2:24 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Project Rome: Cross device interactions
Project Rome: Activity API & Pick Up Where I Left Off
Customizing your device experience with assigned access
Modernizing App Experiences
Using the right networking APIs for your Universal Windows app
What’s New in Accessibility (for Developers and Users)
Building great Metro style apps for mobile broadband devices
Myth Busting: Hosted Web Apps
Microsoft Build /9/2018 8:05 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Windows Phone multitasking
DotnetConf 11/14/2018 3:27 AM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE.
Building Apps for Windows Phone 8.1 Jump Start
Microsoft Ignite /14/ :21 AM BRK2101
Protecting Premium Video in Windows
11/19/ | App Model & Storage © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
Microsoft Ignite /20/2018 2:21 PM
Tips and tricks for developing Metro style apps using XAML
Metro style apps using XAML: Make your app shine
11/23/2018 8:30 AM BRK3037 BRK3037: Dive deep on building apps and services with the Office 365 Communications Platform David Newman Senior Program Manager.
Bring existing desktop apps to UWP with the Desktop Bridge
Microsoft Ignite NZ October 2016 SKYCITY, Auckland.
TechEd /29/ :46 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
12/2/2018 4:10 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
12/2/ :23 PM APP-410T Real time communication: keep your Metro style app connected whether it is running or suspended Raghu Gatta Principal Development.
Vector iconography: Using SVG images in your app
A/B Testing for UWP Apps: Experiment for Success
12/5/2018 4:31 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Search: integrating into the Windows 8 search experience
Building event-driven, long-running apps with Windows workflow
Building responsive apps and sites with HTML5 web workers
12/7/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Bare Metal Development for the Universal Windows Platform
TechEd /9/2018 4:17 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Windows Runtime App Lifecycle
Intro to Workflow Services and Windows Server AppFabric
File type associations and AutoPlay
1/2/2019 9:19 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
Welcome to Azure Notebooks
Microsoft Build /18/ :04 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Internal social media units
Cortana Skills Windows Developer Day, Fall Creators Update
2/16/2019 1:48 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Office 4/3/2019 Deep Dive into native Universal App development with the Office 365 APIs Speaker name Title Microsoft Corporation © 2012 Microsoft.
4/9/ | Contracts © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
4/15/2019 1:57 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Windows 8 Security Internals
4/29/2019 9:20 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
5/3/2019 9:33 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS.
User Segmentation and Targeted Push Notifications for UWP apps
03 | Async Programming & Networking Intro
WCL425 App Compat for Nerds Chris Jackson.
Presentation transcript:

Windows Developer Day Fall Creators Update Chris Cortes October 10, 2017 Chris Cortes UWP Program Manager

Multitasking in the Fall Creators Update Single Process Model and Persistent Events Chris Cortes UWP Program Manager

5/26/2018 6:51 AM Multitasking in UWP Single Process and Multiple Process Models Multitasking for your Scenario Persistent Events © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Single Process Model Activate in Background New Callbacks Suspended 5/26/2018 6:51 AM Single Process Model Activate in Background Launch/Activated Background Activated New Callbacks Leaving Background Entered Background Suspended Terminated Foreground Resume Background Resume © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Background Media Playback Add Manifest Entry Use any Windows Audio API Stream to hold Network <Capabilities> <uap3:Capability Name="backgroundMediaPlayback“ /> </Capabilities> var player = new MediaPlayer(); player.Source = MediaSource.CreateFromUri(new Uri("https://contoso.com/song.mp3")); player.Play();

Background Location Tracking Extended Execution Reason Check Background Access Request in Foreground private async void StartNavigation(){ session = new ExtendedExecutionSession(); session.Reason = ExtendedExecutionReason.LocationTracking; session.Description = “Turn by Turn Navigation"; session.Revoked += session_Revoked; var result = await session.RequestExtensionAsync(); if (result == ExtendedExecutionResult.Allowed){ StartPeriodicLocationUpdate(); } else { CheckBackgroundAccessAndNotifyUser(); } private async void session_Revoked(object sender, ExtendedExecutionRevokedEventArgs args){ if(args.Reason == ExtendedExecutionRevokedReason.SystemPolicy){ NotifyUser();

Run While Minimized Extended Execution Reason Handle Request Result Handle Revoked Event Battery-Aware private async void RequestBackgroundProjectCompilation(){ session = new ExtendedExecutionSession(); session.Reason = ExtendedExecutionReason.Unspecified; session.Description = “Compile Project File"; session.Revoked += session_Revoked; var result = await session.RequestExtensionAsync(); if (result == ExtendedExecutionResult.Allowed){ StartCompilation(); } else { CheckBackgroundAccessAndNotifyUser(); } private async void session_Revoked(object sender, ExtendedExecutionRevokedEventArgs args){ if(args.Reason == ExtendedExecutionRevokedReason.SystemPolicy){ NotifyUser();

Restricted Scenarios for Enterprise 5/26/2018 6:51 AM Restricted Scenarios for Enterprise ExtendedBackgroundTaskTime No Execution Time Exceeded on Background Tasks Background Access and Battery Saver still apply ExtendedExecutionUnconstrained ExtendedExecutionForegroundSession Run while Minimized until Standby © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Background Activation with Triggers 5/26/2018 6:51 AM Background Activation with Triggers New Triggers and Capabilities Added Each Release Multi-Instance Resource Grouping Task Grouping Background Activated Overridden Method in XAML Event on CoreApplication Background Access Status User Controls in Settings Battery Saver © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Persistent Event Creation Background Activation for Frameworks Separate Registrations from AllTasks Background Task Registration Group Event Create Event Registration Token Table . const string MyTaskGroupId = "4F8904E0-3F25-9A0C-41D3-0305E82C3333"; const string MyTaskGroupDebugName = "My Task Group"; var group = BackgroundTaskRegistration.GetTaskGroup(MyTaskGroupId); if (group == null) {      group = new BackgroundTaskRegistrationGroup(MyTaskGroupId, MyTaskGroupDebugName); } var builder = new BackgroundTaskBuilder(); builder.Name = "Tasks Name"; builder.IsNetworkRequested = true; builder.TaskEntryPoint = "Tasks.MyTask"; builder.SetTrigger(myTrigger)); builder.TaskGroup = group; builder.Register();

Persistent Event Usage Background Activation for Frameworks App Subscribes to Event App Unsubscribes to Unregister public App(){     this.InitializeComponent();     this.Suspending += OnSuspending;     PersistentEvents.MaintenanceWindow += BgWork.Maintenance; }   public static void Maintenance(object sender, PersistentEventArgs e) {      var def = e.GetDeferral();      UpdateUserContent();      def.Complete();  }

Multitasking with the Single Process Model 5/26/2018 6:51 AM Multitasking with the Single Process Model Background Media Playback Location Tracking Run While Minimized Restricted Scenarios for Enterprise Background Activation Persistent Events © 2014 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Additional Information Single Process Model: https://docs.microsoft.com/en-us/windows/uwp/launch- resume/app-lifecycle Background Activation: https://docs.microsoft.com/en-us/windows/uwp/launch- resume/create-and-register-an-inproc-background-task Background Task Registration Groups: https://docs.microsoft.com/en- us/windows/uwp/launch-resume/group-background-tasks Manifest Attributes for Background Tasks: https://docs.microsoft.com/en- us/windows/uwp/launch-resume/declare-background-tasks-in-the-application- manifest

Code Samples Background Media Playback: https://github.com/Microsoft/Windows- universal-samples/tree/master/Samples/BackgroundMediaPlayback Extended Execution: https://github.com/Microsoft/Windows-universal- samples/tree/master/Samples/ExtendedExecution Background Activation: https://github.com/Microsoft/Windows- universal-samples/tree/master/Samples/BackgroundActivation Persistent Events: https://github.com/cc-cortes/Simple-Persistent- Events