desktop app converter: trazendo apps win32 para a windows store

27
www.lambda3.com. br Desktop App Converter (Project “Centennial”) Trazendo apps Win32 para a Windows Store dotNetConf.local | São Paulo - Lambda3 | 30/08/2016

Upload: igor-abade

Post on 21-Feb-2017

153 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

w w w. l a m b d a 3 . c o m .b r

Desktop App Converter(Project “Centennial”)

Trazendo apps Win32 para a Windows Store

dotNetConf.local | São Paulo - Lambda3 | 30/08/2016

Page 2: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Desde 2006• Visual Studio ALM

Sobre mim

@igorabadewww.tshooter.com.br

Desde 2010• Consultoria• Desenvolvimento• TreinamentoDemocracia Organizacional

Page 3: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Windows 10operating system

Bridging technologies

Win32desktop

Webhosted

Obj.CiOS

Universal Windows Platform

WWAC++& CX

.Netlanguages

HTMLDirectX

XAML

C++

.Netlanguages

MFCWFWPF

.Netruntime

Vamos falar sobre modelo de aplicações?

Page 4: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Por que precisamos de um Modelo de Aplicações?• Windows nunca teve a definição de “o que é uma aplicação”

• Quer dizer, você sabe o que é quando vê uma, mas não foi formalizado• Começou com os arquivos .exe mas…

• Como você instala?• Como você armazena estado?• Por quanto tempo a aplicação fica em execução?• Como é feito o versionamento?• Como você integra com o SO?• Como você integra com outras aplicações?• Do que a sua aplicação é capaz?

• Precisamos de um Modelo Universal

Page 5: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Fácil de obter e atualizar

Núcleo e plataforma de aplicação unificados

A jornada da convergência

Windows Phone 7.5

Windows Phone 8Windows Phone 8.1

Windows 8

Xbox One

Windows on Devices

Xbox 360

Windows 8.1

Windows 10

Kernel do SOunificado

Convergedapp model

Page 6: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Phone Small Tablet

2-in-1s(Tablet or Laptop)

Desktops & All-in-OnesPhablet Large Tablet

Classic Laptop

Xbox IoTSurface Hub

Holographic

Windows 10

Page 7: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Multiple device families

PC XBoxMobile Surface Hub

HoloLensDevices +IoT

Universal Apps

One Store +One Dev Center

Reuse Existing CodeOne SDK +

Tooling

Adaptive User Interface Natural

User Inputs

One Universal Windows Platform

Page 8: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

O que é o “UWP Windows App Model”• Define o ciclo de vida da aplicação• Unificado em todos os dispositivos Windows• Escala desde IOTMobilePCXboxHololens

• Do nascimento ao fim da vida• Instalação• Ambiente de execução• Gestão de Recursos• Atualização • Modelo de dados • Desinstalação

Page 9: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Modelo de Aplicações UWPInclui todas as aplicações que rodam no Windows• Novas aplicações Universal Windows Apps• Aplicações Existentes• Phone Apps • Windows 8.1 Apps• Aplicações Clássicas Windows (CWA, Classic Windows Apps)

Desktop App Converter (Project “Centennial”)• Estende o UWP App Model para Aplicações Clássicas

Windows

Page 10: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Apresentando o Desktop App ConverterDesktop App Converter – Trazendo apps Win32 para a Windows Store

Page 11: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

What is Project Centennial?

Aperfeiçoa a plataforma Windows para todos os desenvolvedores• Converte aplicações desktop para a tecnologia de

implantação Universal Windows (appx)• Mantém seu código atual Win32/.NET funcionando• Mesmo código para PCs com Windows 10 e Windows 7/8• Adicione components Universal Windows ao longo do

tempo• Monetização via Windows Store (ou outro canal de

distribuição)

Page 12: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Fluxo de trabalho do desenvolvedor

MSI

Desktop App ConverterConverte o instalador desktop existenteResulta numa app empacotada com manifesto UWP

Teste, Atualize e EvoluaFaça mudanças de código compatíveis para as versões legadas e AppXEvolua a versão AppX para tirar proveito da Universal Windows Platform

Publique e DistribuaDistribua o pacote da aplicação via sideloading, MDM ou Windows Store*

AppX

* Em breve

Page 13: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Classic Desktop ApplicationCódigo Win32 / .NETInstalador MSI/EXE/BAT…Roda num processo desktop

Passo 0 – Aplicação Win32 Desktop

Classic Windows App

Page 14: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Universal App Package

Benefícios Imediatos:Tecnologia de deployment moderna para todas as aplicaçõesAtualizações transparentes, desinstalação limpaMonetização via Windows StoreRoda seu código atualPequena quantidade de mudanças no código (se tiver)

Passo 1 – Converter a Aplicação

Classic Windows App

Page 15: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Dem

oConversão de aplicação Desktop

Page 16: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Como isso funciona?• Deployment• Usa Universal Windows Platform Deployment Stack• Extensões para os pontos de extensibilidade WIn32• Extensões do Shell (ex. associações de tipo de arquivo)

• Resolve “DLL Hell”, “Registry Bloat”/“Windows Rot”• Redirecionamento/Mesclagem do Registry• Redirecionamento/Mesclagem do Sistema de Arquivos• Redirecionamento de escrita para alguns diretórios• Mesmo código continua funcionando no

Windows 7, 8, etc.

Page 17: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Ponte (bridge) para a Universal Windows PlatformNeste ponto sua aplicação já tem:• Instalação moderna• Ativação por Tiles, tipos de arquivo ou Protocolos URL• App Identity acesso à API UWP • UWP App Model• Ou seja… Tudo o que uma

UWA pode fazer!

Page 18: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Exemplos de recursos:Suporte a Live TilesNotificações AvançadasCortanaetc.

Passo 2 – Chamar APIs UWP

Universal Windows API

Classic Windows App

Universal App Package

Page 19: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Continuando a Migração para UWP

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

• Fazer tudo o que uma aplicação UWP pode fazer• Tirar proveito de mais APIs UWP• Tirar proveito de Serviços de Aplicação, Tarefas de

Segundo Plano & gatilhos• Migrar UI para XAML

Page 20: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Passo 3 – Adicionar um Componente UWP

Exemplos de Recursos:Interface de Usuário em XAMLTarefas de Segundo PlanoFile Picker UI

Rodar no App ContainerComunicação via AppService

Universal Windows App

Classic Windows App

Universal App Package

Page 21: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Processos Desktop & App Container• Código atual executando em um processo Desktop• Aplicação UWP roda em um App Container• Ativar processo Desktop a partir de App Container e

vice-versa• Inter Process Communication (via AppService)

Activate

Activate

DesktopProcess

App ContainerProcess

Page 22: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Passo 4 – Migrar código para UWP

Mover código/componentes compatíveis para o App Container

Universal Windows App

Classic Windows App

Universal App Package

Page 23: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Passo 5 – Totalmente UWP

Move código restante para o App ContainerRoda em todo lugarPCMobileXbox OneHoloLensetc.

Universal App Package

Universal Windows App

Page 24: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Complete a Migração para UWP• Remova código não-aderente• Mais APIs Win32 suportadas no AppContainer

• Mova o resto do código para o App Container• Rode em qualquer dispositivo (PC, phone, Xbox One,

HoloLens, etc.)

Page 25: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Resumo• Project Centennial é uma

ponte para UWAs• Converte suas aplicacões

para AppX• Virtualiza acesso a

recursos• Permite que você

adicioner Recursos UWA aos poucos

Page 26: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

Perguntas?

Desktop App Converter (Project “Centennial”)Trazendo apps Win32 para a Windows Store

Page 27: Desktop App Converter: Trazendo Apps Win32 para a Windows Store

www.lambda3.com.br