Partilhar via


O que é uma aplicação Plataforma Universal do Windows (UWP)?

O UWP é uma das muitas formas de criar aplicações cliente para o Windows.

Observação

Se está a começar a desenvolver Windows aplicações, recomendamos que considere usar SDK de Aplicações Windows e WinUI em vez de UWP. Embora ainda seja suportada, a UWP não está em desenvolvimento ativo. Por favor, consulte Comece a desenvolver Windows apps para mais informações.

Para descarregar as ferramentas que terá de começar a criar Windows aplicações, veja Instalar ferramentas para o SDK de Aplicações Windows e depois escreva a sua primeira app.

Onde se encaixa o UWP na história do desenvolvimento da Microsoft?

O UWP é uma opção para criar aplicações que correm em dispositivos com Windows 10 e Windows 11, e que podem ser combinadas com outras plataformas. As aplicações UWP podem utilizar APIs Win32 e classes .NET (ver API Sets para aplicações UWP, Dlls para aplicações UWP e .NET para aplicações UWP).

Recursos de um aplicativo UWP

Um aplicativo UWP é:

  • Seguro: os aplicativos UWP declaram quais recursos de dispositivo e dados eles acessam. O usuário deve autorizar esse acesso.
  • Capaz de usar uma API comum em todos os dispositivos que correm Windows.
  • Capaz de usar recursos específicos do dispositivo e adaptar a interface do usuário para diferentes tamanhos de tela, resoluções e DPI do dispositivo.
  • Disponível na Microsoft Store em todos os dispositivos (ou apenas aqueles que especificar) que corram no Windows 10 ou Windows 11. A Microsoft Store oferece várias formas de ganhar dinheiro com a sua aplicação.
  • Pode ser instalado e desinstalado sem risco para a máquina ou incorrer em "degradação do sistema".
  • Envolvente: use blocos dinâmicos, notificações push e atividades de utilizador que interajam com a Cronologia do Windows e o Retomar do ponto onde fiquei do Cortana, para envolver os utilizadores.
  • Programável em C#, C++, Visual Basic e JavaScript. Para UI, use WinUI, XAML, HTML ou DirectX.

Vamos analisá-los mais detalhadamente.

Seguro

Os aplicativos UWP declaram em seu manifesto os recursos do dispositivo de que precisam, como acesso ao microfone, localização, webcam, dispositivos USB, arquivos e assim por diante. O usuário deve reconhecer e autorizar esse acesso antes que o aplicativo receba a capacidade.

Uma superfície de API comum em todos os dispositivos

O Windows 10 introduziu a Plataforma Universal do Windows (UWP), que fornece uma plataforma de aplicações comum em todos os dispositivos que executam o Windows. As APIs centrais do UWP são as mesmas em todos os dispositivos Windows. Se a sua aplicação usar apenas as APIs principais, correrá em qualquer dispositivo Windows, seja ele um PC de secretária, uma Xbox, um headset de realidade mista, etc.

Um aplicativo UWP escrito em C++/WinRT tem acesso às APIs do Win32 que fazem parte da UWP. Estas APIs Win32 são implementadas por todos os dispositivos Windows.

SDKs de extensão expõem os recursos exclusivos de tipos de dispositivos específicos

Se optar pelas APIs universais, a sua aplicação pode correr em todos os dispositivos que correm Windows 10 ou versões posteriores. Mas se você quiser que seu aplicativo UWP aproveite APIs específicas do dispositivo, também poderá fazer isso.

Os SDKs de extensão permitem chamar APIs especializadas para diferentes dispositivos. Por exemplo, se seu aplicativo UWP tem como alvo um dispositivo IoT, você pode adicionar o SDK de extensão IoT ao seu projeto para direcionar recursos específicos para dispositivos IoT. Para obter mais informações sobre como adicionar SDKs de extensão, consulte a seção SDKs de extensão em Programação com SDKs de extensão.

Pode escrever a sua aplicação de modo a esperar que funcione apenas num determinado tipo de dispositivo, e depois limitar a sua distribuição da Microsoft Store apenas a esse tipo de dispositivo. Ou, você pode testar condicionalmente a presença de uma API em tempo de execução e adaptar o comportamento do seu aplicativo de acordo. Para obter mais informações, consulte a seção Escrevendo código em Programação com SDKs de extensão.

Controles adaptativos e entrada

Os elementos da interface do usuário respondem ao tamanho e ao DPI da tela em que o aplicativo está sendo executado, ajustando seu layout e escala. Os aplicativos UWP funcionam bem com vários tipos de entrada, como teclado, mouse, toque, caneta e controladores de jogos. Se você precisar adaptar ainda mais sua interface do usuário a um tamanho de tela ou dispositivo específico, novos painéis de layout e ferramentas ajudam a projetar a interface do usuário que pode se adaptar aos diferentes dispositivos e fatores forma nos quais seu aplicativo pode ser executado.

Dispositivos alimentados por Windows

O Windows ajuda-o a direcionar a sua interface para vários dispositivos com as seguintes funcionalidades:

  • Controles universais e painéis de layout ajudam você a otimizar sua interface do usuário para a resolução de tela do dispositivo. Por exemplo, controles como botões e controles deslizantes se adaptam automaticamente ao tamanho da tela do dispositivo e à densidade de DPI. Os painéis de layout ajudam a ajustar o layout do conteúdo com base no tamanho da tela. O dimensionamento adaptativo ajusta-se às diferenças de resolução e DPI entre dispositivos.
  • O manuseamento comum de entradas permite-lhe receber entradas através do toque, de uma caneta, de um rato, de um teclado ou de um controlador de jogos.
  • Ferramentas que ajudam você a projetar a interface do usuário que pode se adaptar a diferentes resoluções de tela.

Alguns aspetos da interface do usuário do seu aplicativo se adaptarão automaticamente entre dispositivos. No entanto, o design da experiência do usuário do seu aplicativo pode precisar ser adaptado, dependendo do dispositivo em que o aplicativo está sendo executado. Por exemplo, um aplicativo de fotos pode adaptar sua interface do usuário quando executado em um dispositivo pequeno e portátil para garantir que o uso seja ideal para uso com uma única mão. Quando um aplicativo de fotos está sendo executado em um computador desktop, a interface do usuário deve se adaptar para aproveitar o espaço de tela adicional.

Há uma loja para todos os dispositivos

Uma loja de aplicações unificada disponibiliza a sua aplicação em dispositivos Windows como PC, tablet, Xbox, HoloLens, Surface Hub e dispositivos da Internet das Coisas (IoT). Você pode enviar seu aplicativo para a loja e disponibilizá-lo para todos os tipos de dispositivos ou apenas para aqueles que você escolher. Submete e gere todas as suas aplicações para dispositivos Windows num só local. Tem uma aplicação de ambiente de trabalho em C++ que quer modernizar com funcionalidades UWP e vender na Microsoft Store? Tudo bem também.

Os aplicativos UWP integram-se ao Application Insights para telemetria e análise detalhadas, uma ferramenta crucial para entender seus usuários e melhorar seus aplicativos.

As aplicações UWP podem ser empacotadas com MSIX e distribuídas através do Microsoft Store, ou de outras formas. O MSIX permite que os aplicativos sejam atualizados, independentemente de como eles são distribuídos, consulte Atualizar pacotes de aplicativos publicados fora da Loja a partir do seu código.

Rentabilize a sua aplicação

Pode escolher como irá rentabilizar a sua aplicação. Há várias maneiras de ganhar dinheiro com seu aplicativo. Tudo o que você precisa fazer é escolher o que funciona melhor para você, por exemplo:

  • Um download pago é a opção mais simples. Basta nomear o preço.
  • As versões experimentais permitem que os usuários experimentem seu aplicativo antes de comprá-lo, fornecendo descoberta e conversão mais fáceis do que as opções "freemium" mais tradicionais.
  • Preços de venda para incentivar os utilizadores.
  • Compras no aplicativo.

Forneça informações relevantes e em tempo real aos seus usuários para mantê-los voltando

Há várias maneiras de manter os usuários envolvidos com seu aplicativo UWP:

  • Blocos dinâmicos e blocos da tela de bloqueio que mostram informações contextualmente relevantes e oportunas do seu aplicativo em um piscar de olhos.
  • Notificações push que trazem alertas em tempo real para a atenção do seu usuário.
  • As Atividades do Usuário permitem que os usuários continuem de onde pararam em seu aplicativo, mesmo entre dispositivos.
  • O Centro de Ação organiza as notificações da sua aplicação.
  • A execução em segundo plano e os gatilhos colocam seu aplicativo em ação quando o usuário precisa dele.
  • Seu aplicativo pode usar dispositivos LE de voz e Bluetooth para ajudar os usuários a interagir com o mundo ao seu redor.
  • Integre a Cortana para adicionar a funcionalidade de comando de voz à sua aplicação.

Utilize uma língua que já conheça

As aplicações UWP utilizam o Windows Runtime, a API nativa fornecida pelo sistema operativo. Esta API está implementada em C++ e é suportada em C#, Visual Basic, C++ e JavaScript. Algumas opções para escrever aplicativos UWP incluem:

  • Interface do usuário XAML e C#, VB ou C++
  • Interface do usuário do DirectX e C++
  • JavaScript e HTML
  • WinUI

Prepare-se

Consulte Configurar para transferir as ferramentas de que necessita para começar a criar aplicações e, em seguida, escreva a sua primeira aplicação.

Projete seu aplicativo

O sistema de design da Microsoft chama-se Fluent. O Fluent Design System é um conjunto de funcionalidades UWP combinadas com boas práticas para criar aplicações que funcionam perfeitamente em todos os tipos de dispositivos com Windows. Experiências fluentes se adaptam e parecem naturais em dispositivos de tablets a laptops, de PCs a televisores e em dispositivos de realidade virtual. Consulte The Fluent Design System for UWP apps para obter uma introdução ao Fluent Design.

Um bom design é o processo de decidir como os utilizadores irão interagir com a sua aplicação, além de como ela ficará e funcionará. A experiência do usuário desempenha um papel importante na determinação de quão felizes as pessoas ficarão com seu aplicativo, portanto, não economize nesta etapa. Fundamentos de Design introduz-te no design de uma aplicação Universal Windows. Consulte a cartilha do dispositivo para ajudá-lo a pensar na experiência de interação de usar o seu aplicativo em todos os diferentes formatos que você deseja segmentar.

Além da interação em diferentes dispositivos, planeje seu aplicativo para aproveitar os benefícios de trabalhar em vários dispositivos. Por exemplo:

Adicionar serviços

Enviar a sua aplicação para a Loja

Partner Center permite-lhe gerir e submeter todas as suas aplicações para Windows dispositivos num só local. Consulte publicar aplicações e jogos do Windows para saber como submeter as suas aplicações para publicação na Microsoft Store.

As novas funcionalidades simplificam os processos ao mesmo tempo que lhe dão mais controlo. Você também encontrará relatórios analíticos detalhados , detalhes de pagamento combinados, maneiras de promover seu aplicativo e interagir com seus clientes e muito mais.

Para mais material introdutório, consulte Uma Introdução à Construção de Aplicações Windows para Dispositivos Windows 10

Tópicos mais avançados

Como a Plataforma Universal do Windows se relaciona com APIs do Windows Runtime

Se está a construir uma aplicação Plataforma Universal do Windows (UWP), então pode tirar muito proveito e conveniência ao tratar os termos "Plataforma Universal do Windows (UWP)" e "Windows Runtime (WinRT)" como mais ou menos sinónimos. Mas é possível olhar para além da superfície da tecnologia e determinar qual é a verdadeira diferença entre essas ideias. Se você está curioso sobre isso, então esta última seção é para você.

As APIs Windows Runtime e WinRT são uma evolução das APIs do Windows. Originalmente, Windows aplicações eram escritas usando APIs Win32 planas, ao estilo C, e a estas foram adicionadas APIs COM—DirectX sendo um exemplo proeminente. Tecnologias posteriores como Windows Forms, WPF, .NET e linguagens geridas também proporcionaram uma forma única de escrever aplicações Windows com a sua própria versão de tecnologia API. Sob o capô, o Windows Runtime é a próxima etapa do COM. Na camada de interface binária de aplicativo (ABI) real, suas raízes em COM tornam-se visíveis. Mas, ao contrário do COM, o Windows Runtime foi concebido para ser chamado a partir de uma grande variedade de linguagens de programação de forma mais natural. Como resultado, o acesso ao Windows Runtime é disponibilizado através do que se conhece como projeções de linguagem. Uma projeção oculta os detalhes do COM e fornece uma experiência de programação mais natural para uma determinada linguagem. Existe uma projeção da linguagem Windows Runtime para C#, Visual Basic, C++ padrão, JavaScript, entre outros. Além disso, uma vez devidamente empacotadas — ver Desktop Bridge — pode chamar as APIs WinRT a partir de uma aplicação construída em vários modelos de aplicação: Win32, .NET, WinForms, WPF e UWP.

UWP é um modelo de aplicação construído sobre o Windows Runtime. Tecnicamente, o modelo de aplicativo UWP é baseado em CoreApplication, embora esse detalhe possa estar oculto de você, dependendo da linguagem de programação escolhida. O UWP permite escrever um único binário que pode, se assim o desejar, ser publicado na Microsoft Store e executado numa vasta gama de formatos de dispositivos, conforme referido acima. O alcance do dispositivo da sua aplicação UWP depende do subconjunto de APIs do Windows Runtime que limita a sua aplicação a chamar, ou que chama condicionalmente.

Esperamos que esta secção tenha sido bem-sucedida ao descrever a diferença entre a tecnologia subjacente às APIs do Windows Runtime e o mecanismo e valor de negócio da Plataforma Universal do Windows.