Compartilhar via


O que é um aplicativo Plataforma Universal do Windows (UWP)?

A UWP é uma das muitas maneiras de criar aplicativos cliente para Windows.

Observação

Se você estiver começando a desenvolver aplicativos Windows, recomendamos que considere usar o SDK do Aplicativo Windows e WinUI em vez de UWP. Embora ainda tenha suporte, o UWP não está em desenvolvimento ativo. Consulte Start desenvolvendo aplicativos Windows para obter mais informações.

Para baixar as ferramentas necessárias para começar a criar aplicativos Windows, consulte Instalar ferramentas para o SDK do Aplicativo Windows e, em seguida, crever seu primeiro aplicativo.

Onde a UWP se encaixa na Microsoft história de desenvolvimento?

A UWP é uma opção para criar aplicativos que são executados em dispositivos Windows 10 e Windows 11 e podem ser combinados com outras plataformas. Os aplicativos UWP podem usar APIs Win32 e classes .NET (consulte API Sets para aplicativos UWP, Dlls para aplicativos UWP e .NET para aplicativos UWP).

Recursos de um aplicativo UWP

Um aplicativo UWP:

  • É seguro: os aplicativos UWP declaram quais dados e recursos de dispositivo eles acessam. O usuário deve autorizar esse acesso.
  • Capaz de usar uma API comum em todos os dispositivos que executam Windows.
  • Pode usar funcionalidades específicas do dispositivo e adaptar a interface do usuário a diferentes tamanhos, resoluções e DPI de telas de dispositivos.
  • Disponível no Microsoft Store em todos os dispositivos (ou somente aqueles que você especificar) que são executados em Windows 10 ou Windows 11. O Microsoft Store fornece várias maneiras de ganhar dinheiro em seu aplicativo.
  • Pode ser instalado e desinstalado sem risco ao computador nem de causar "danos ao computador".
  • Envolvente: use blocos dinâmicos, notificações push e atividades do usuário que interagem com a Linha do Tempo do Windows e o recurso da Cortana "Continuar de onde parei", para envolver os usuários.
  • Programável em C#, C++, Visual Basic e JavaScript. Para a interface do usuário, use WinUI, XAML, HTML ou DirectX.

Vamos analisar isso em mais detalhes.

Seguro

Em seu manifesto, os aplicativos UWP declaram as funcionalidades do dispositivo de que precisam, como acesso a 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 funcionalidade.

Uma superfície de API comum entre todos os dispositivos

Windows 10 introduziu o Plataforma Universal do Windows (UWP), que fornece uma plataforma de aplicativo comum em todos os dispositivos que são executados Windows. As APIs de núcleo UWP são as mesmas em todos os dispositivos Windows. Se o aplicativo usar apenas as APIs principais, ele será executado em qualquer dispositivo Windows, independentemente de você estar direcionando para um computador desktop, Xbox, óculos de realidade mista, etc.

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

Os SDKs de extensão expõem as funcionalidades exclusivas de tipos de dispositivos específicos

Se você direcionar as APIs universais, o aplicativo poderá ser executado em todos os dispositivos executados Windows 10 ou posteriores. Mas se você quiser que o aplicativo UWP aproveite as APIs específicas do dispositivo, poderá fazer isso também.

Os SDKs de extensão permitem que você chame as APIs especializadas para diferentes dispositivos. Por exemplo, se o aplicativo UWP direcionar um dispositivo IoT, você poderá adicionar o SDK de extensão de IoT a seu projeto para direcionar recursos específicos para os dispositivos IoT. Para obter mais informações sobre como adicionar os SDKs de extensão, confira a seção SDKs de extensão em Programação com SDKs de extensão.

Você pode escrever seu aplicativo para que ele seja executado apenas em um determinado tipo de dispositivo e, em seguida, limitar sua distribuição do Microsoft Store para apenas esse tipo de dispositivo. Outra opção é testar condicionalmente a presença de uma API em runtime e adaptar o comportamento do aplicativo de acordo. Para obter mais informações, confira a seção Escrevendo código em Programação com SDKs de extensão.

Entrada e controles adaptáveis

Os elementos de interface do usuário respondem ao tamanho e à resolução em 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 jogo. Caso você precise personalizar mais sua interface do usuário para um tamanho de tela ou dispositivo específico, novos painéis de layout e ferramentas ajudarão a criar a interface do usuário que se adapte aos diferentes dispositivos e fatores forma nos quais os aplicativos podem ser executados.

dispositivos com Windows integrado

Windows ajuda você a direcionar sua interface do usuário para vários dispositivos com os seguintes recursos:

  • Controles universais e painéis de layout ajudarão a otimizar sua interface do usuário para a resolução de tela do dispositivo. Por exemplo, controles como botões e controles deslizantes adaptam-se automaticamente ao tamanho da tela do dispositivo e à densidade do DPI. Os painéis de layout ajudam a ajustar o layout do conteúdo com base no tamanho da tela. O dimensionamento adaptável ajusta a resolução e as diferenças de DPI entre dispositivos.
  • O processo de entrada comum permite que você receba entradas por toque, uma caneta, um mouse, um teclado ou um controlador de jogo.
  • As ferramentas que ajudam você a criar a interface do usuário que pode se adaptar a diferentes resoluções de tela.

Alguns aspectos da interface do usuário do seu aplicativo se adaptará automaticamente em todos os dispositivos. O projeto de experiência do usuário do seu aplicativo, no entanto, talvez precise se adaptar dependendo do dispositivo no qual o aplicativo está sendo executado. Por exemplo, um aplicativo de fotos pode se adaptar a sua interface do usuário quando executado em um dispositivo pequeno e portátil para garantir que esse uso seja ideal para uso com uma única mão. Quando um aplicativo de fotos é executado em um computador desktop, a interface do usuário deve se adaptar para aproveitar ao máximo o espaço adicional na tela.

Existe uma loja para todos os dispositivos

Uma loja de aplicativos unificada disponibiliza seu aplicativo em dispositivos Windows, como PC, tablet, Xbox, HoloLens, Hub Surface e IoT (Internet das Coisas). Você pode enviar seu aplicativo para a loja e disponibilizá-lo em todos os tipos de dispositivos ou apenas os escolhidos. Você envia e gerencia todos os seus aplicativos para dispositivos Windows em um só lugar. Tem um aplicativo da área de trabalho do C++ que você deseja modernizar com recursos UWP e vender no repositório de Microsoft? Tudo bem.

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

Os aplicativos UWP podem ser empacotados com MSIX e distribuídos por meio do Microsoft Store ou de outras maneiras. O MSIX permite que os aplicativos sejam atualizados independentemente de como eles são distribuídos. Confira Atualizar pacotes de aplicativos publicados que não são da Store com seu código.

Monetizar seu aplicativo

Você pode escolher como vai monetizar seu aplicativo. Há várias formas de ganhar dinheiro com seu aplicativo. Basta escolher a que funciona melhor para você, por exemplo:

  • Um download pago é a opção mais simples. Você só precisa definir o preço.
  • As avaliações permitem que os usuários experimentem o aplicativo antes de comprá-lo, proporcionando descoberta e conversão mais fáceis do que as opções "freemium" mais tradicionais.
  • Preços de venda para incentivar os usuários.
  • Compras no aplicativo.

Forneça informações importantes em tempo real aos usuários para que eles voltem

Há várias formas de manter os usuários interessados no seu aplicativo UWP:

  • Os blocos dinâmicos e os blocos da tela de bloqueio mostram com rapidez informações contextualmente relevantes e oportunas sobre o aplicativo.
  • Notificações por push que apresentam alertas em tempo real para chamar a atenção do seu usuário.
  • As atividades do usuário permitem que os usuários recomecem do ponto em que pararam no aplicativo, mesmo em dispositivos diferentes.
  • A Central de Ações organiza as notificações de seu aplicativo.
  • Execução em segundo plano e gatilhos colocam seu aplicativo em ação quando os usuários precisam dele.
  • O aplicativo pode usar dispositivos de voz e Bluetooth LE para ajudar os usuários a interagir com o mundo ao redor.
  • Integre a Cortana para adicionar a funcionalidade de comando de voz a seu aplicativo.

Usar uma linguagem que você já conhece

Os aplicativos UWP usam o Windows Runtime, a API nativa fornecida pelo sistema operacional. Essa API é implementada no C++ e tem suporte em C#, Visual Basic, C++e JavaScript. Algumas opções para criar 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 para começar

Confira Preparar-se para baixar as ferramentas necessárias para começar a criar aplicativos e, em seguida, escreva seu primeiro aplicativo.

Criar seu aplicativo

O sistema de design Microsoft chama-se Fluent. O Fluent Design System é um conjunto de recursos UWP combinados com as práticas recomendadas para criar aplicativos que têm um bom desempenho em todos os tipos de dispositivos Windows. As experiências do Fluente adaptam-se a e funcionam normalmente em dispositivos de tablets a notebooks e de computadores a televisores, além de em dispositivos de realidade virtual. Confira O Sistema de Design Fluente para aplicativos UWP para obter uma introdução ao Design Fluente.

Um bom projeto é o processo de decisão sobre como os usuários vão interagir com seu aplicativo, como será sua aparência e como ele funcionará. A experiência do usuário desempenha uma função enorme em determinar o grau de felicidade que as pessoas terão com seu aplicativo. Portanto, não economize nessa etapa. Design basics apresenta a criação de um aplicativo de Windows Universal. Confira a cartilha de dispositivos para ajudar a pensar sobre a experiência de interação quanto ao uso do seu aplicativo em todos os fatores forma diferentes de destino.

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

Adicionar serviços

Enviar seu aplicativo para a Store

Partner Center permite gerenciar e enviar todos os seus aplicativos para dispositivos Windows em um só lugar. Consulte Publish Windows aplicativos e jogos para saber como enviar seus aplicativos para publicação no Microsoft Store.

Os novos recursos simplificam os processos, dando mais controle a você. Você também encontrará relatórios de análise detalhados, detalhes de pagamento combinados, formas de promover seu aplicativo e atrair os seus clientes e muito mais.

Para obter mais material introdutório, consulte An Introduction to Building Windows Apps for Windows 10 Devices

Tópicos mais avançados

Como o Plataforma Universal do Windows se relaciona com APIs de Windows Runtime

Se você estiver desenvolvendo um aplicativo na plataforma Universal Windows (UWP), poderá obter muitas vantagens e conveniência ao tratar os termos "Plataforma Universal do Windows (UWP)" e "Windows Runtime (WinRT)" como mais ou menos sinônimos. Porém, é possível examinar os bastidores da tecnologia e determinar qual exatamente é a diferença entre essas ideias. Se você está curioso quanto a isso, esta última seção é para você.

As APIs Windows Runtime e WinRT são uma evolução das APIs Windows. Originalmente, Windows aplicativos eram escritos usando APIs Win32 simples, estilo C, e a elas foram adicionadas APIs COM — DirectX sendo um exemplo proeminente. Tecnologias posteriores, como Windows Forms, WPF, .NET e idiomas gerenciados, também fornecem uma maneira exclusiva de escrever aplicativos Windows com seu próprio sabor de tecnologia de API. Nos bastidores, o Windows Runtime é o próximo estágio do COM. Na camada ABI (interface binária de aplicativo) propriamente dita, suas raízes em COM tornam-se visíveis. Mas, ao contrário do COM, o Windows Runtime foi projetado para ser invocado a partir de uma ampla variedade de linguagens de programação de maneira mais natural. Como resultado, o acesso ao Windows Runtime é disponibilizado por meio do que são conhecidos como projeções de linguagem. Uma projeção oculta os detalhes do COM e fornece uma experiência de programação mais natural para um determinado idioma. Há uma projeção de linguagem Windows Runtime em C#, Visual Basic, C++ padrão, JavaScript e assim por diante. Além disso, uma vez empacotado adequadamente — consulte Desktop Bridge — você pode chamar APIs WinRT de um aplicativo criado em uma variedade de modelos de aplicativo: Win32, .NET, WinForms, WPF e UWP.

UWP é um modelo de aplicativo criado sobre o Windows Runtime. Tecnicamente, o modelo de aplicativo UWP é baseado no CoreApplication, embora esse detalhe possa estar oculto de você dependendo da linguagem de programação escolhida. O UWP se presta a escrever um único executável binário que pode, se você escolher, ser publicado na loja da Microsoft e executado em uma ampla gama de formatos de dispositivos, conforme abordado acima. O alcance do dispositivo de seu aplicativo UWP depende do subconjunto de APIs de Windows Runtime que você limita seu aplicativo a chamar ou que você chama condicionalmente.

Espero que esta seção tenha sido bem-sucedida em descrever a diferença entre as APIs do Windows Runtime e o mecanismo e o valor de negócios da Plataforma Universal do Windows.