build 2016 - b829 - project centennial: bringing existing desktop applications to the universal...
Post on 15-Apr-2017
412 Views
Preview:
TRANSCRIPT
#Build2016
Converting your desktop app to use the Universal Windows Platform (Project Centennial)John SheehanDistinguished Engineer
B829
What is Project Centennial?Improving the Windows platform for all developersConvert desktop apps to the Universal Windows deployment technology
Keep your current Win32/.NET code running
Code targets Windows 10 and Windows 7 PCs
Add Universal Windows components over time
Monetize via Windows Store or other distribution of choice
Developer Workflow
MSI
Desktop App ConverterConverts existing desktop installerResults in a packaged app with UWP manifest
Test, Update and EvolveMake compatible code changes that go into both MSI and app packageEvolve app package to take advantage of the Universal Windows Platform
Publish and DistributeDistribute the app package via sideloading, MDM or the Windows Store*
AppX
*Pending availability
Classic Desktop ApplicationWin32/.NET code baseMSI installerRuns in a desktop process
Step 0 – Win32 Desktop App
Classic Windows App
Universal App Package
Immediate Benefits:Modern deployment technology for all appsSeamless updates, clean uninstallMonetize via Windows Store or other distribution of choiceRuns your current codeSmall amount of code changes needed (if any)
Step 1 – Convert the App
Classic Windows App
Demo
Evernote – Conversion and Deployment
How does it work?DeploymentUses Universal Windows Platform deployment stackExtensions for required Win32 extension pointsShell extensions (e.g. file type associations)
Solving “DLL Hell” and “Registry Bloat”Registry redirection / mergingFilesystem redirection / mergingWrite redirect for certain directoriesSame code will continue work on Windows 7, 8, etc.
Bridge to the Universal Windows PlatformAt this point your app already hasModern deploymentActivation via Tiles, file types or URI protocolsApp Identity access to more UWP API surfaceUWP App Model
What else does this enable? Short answer: Anything a UWP app can do !
Feature Examples:Live Tile supportActionable NotificationsCortanaetc.
Step 2 – Call UWP APIs
Universal Windows API
Classic Windows App
Universal App Package
Continue the Migration to UWPDo anything a UWP app can doTake advantage of more UWP APIsTake advantage of app services, background tasks & triggersMigrate UI to XAML
Configuration
Security Management
Updates
Natural User Inputs
One SDK + Tooling
Cloud Services
One Store +One Dev Center
Adaptive User
Interface
Holographic Xbox
Devices +IoT
Surface HubMobilePC
Demo
Adding Live Tiles
Step 3 – Add a UWP Component
Feature Examples:XAML UI front endBackground tasksFile Picker UI
Runs in the App ContainerCommunication via AppService Universal Windows App
Classic Windows App
Universal App Package
Desktop & App Container processesCurrent code running in Desktop processUWP app code runs in App ContainerActivate Desktop process from App Container and vice-versaInter process communication (via AppService)Activat
e
Activate
DesktopProcess
App ContainerProcess
Demo
Communicating between UWP and Desktop components
Step 4 – Migrate code to UWP
Move UWP Compatible code/components into the App Container
Universal Windows App
Classic Windows App
Universal App Package
Step 5 – Fully UWP
Move remaining code into the App ContainerRun everywherePCMobileXbox OneHoloLensetc.
Universal App Package
Universal Windows App
Complete Migration to UWPClean up/replace non-compliant codeMore Win32 APIs supported in the AppContainerMove remaining code into the App ContainerRun everywhere (PC, phone, Xbox One, HoloLens, etc.)
Demo
Completing the migration to UWP
Call to Action - http://aka.ms/desktopbridge
Upcoming Windows Insider Preview build will deliver the bits
Meet us in the “Ask The Experts” area
HELLOJohnI
am
Bring your own installer to the “App Consult Area”
Share Your Story for Challenge PointsGive us 3 minutes of feedback about your work right after this session at the Flash Voting sign.Join in on 15-30 minutes in depth feedback sessions at the Visual Studio: Share Your Story booth.Register in 2 minutes for Visual Studio feedback opportunities after build at http://aka.ms/devtodev.
Please Complete An Evaluation FormYour input is important!
or
© 2016 Microsoft Corporation. All rights reserved.
top related