Delen via


Wat is een UWP-app (Universal Windows Platform)

UWP is een van de vele manieren om clienttoepassingen voor Windows te maken.

Notitie

Als u Windows-apps gaat ontwikkelen, raden we u aan de Windows App SDK-te gebruiken en WinUI- in plaats van UWP. Hoewel uwP nog steeds wordt ondersteund, wordt uwp niet actief ontwikkeld. Zie Beginnen met het ontwikkelen van Windows-apps voor meer informatie.

Als u de hulpprogramma's wilt downloaden die u nodig hebt om Windows-apps te maken, raadpleegt u Hulpprogramma's installeren voor de Windows App SDK-en vervolgens uw eerste app-schrijven.

Waar past UWP in het Microsoft-ontwikkelverhaal?

UWP is een keuze voor het maken van apps die worden uitgevoerd op Windows 10- en Windows 11-apparaten en kan worden gecombineerd met andere platforms. UWP-apps kunnen gebruikmaken van Win32-API's en .NET-klassen (zie API-sets voor UWP-apps, DLL's voor UWP-appsen .NET voor UWP-apps).

Functies van een UWP-app

Een UWP-app is:

  • Veilig: UWP-apps declareren welke apparaatbronnen en gegevens ze openen. De gebruiker moet die toegang autoriseren.
  • Kan een algemene API gebruiken op alle apparaten waarop Windows wordt uitgevoerd.
  • Kan apparaatspecifieke mogelijkheden gebruiken en de gebruikersinterface aanpassen aan verschillende schermgrootten, resoluties en DPI van het apparaat.
  • Beschikbaar in de Microsoft Store op alle apparaten (of alleen apparaten die u opgeeft) die worden uitgevoerd op Windows 10 of Windows 11. De Microsoft Store biedt meerdere manieren om geld te verdienen in uw app.
  • Kan worden geïnstalleerd en verwijderd zonder risico voor de machine of het maken van "machine rot".
  • Aantrekkelijk: gebruik live-tegels, pushmeldingen en gebruikersactiviteiten die communiceren met Windows Timeline en Cortana's Pick Up Where I Left Off om gebruikers te betrekken.
  • Programmeerbaar in C#, C++, Visual Basic en JavaScript. Voor de gebruikersinterface gebruikt u WinUI, XAML, HTML of DirectX.

Laten we deze eens nader bekijken.

Beveiligd

UWP-apps declareren in hun manifest de apparaatmogelijkheden die ze nodig hebben, zoals toegang tot de microfoon, locatie, webcam, USB-apparaten, bestanden, enzovoort. De gebruiker moet deze toegang bevestigen en autoriseren voordat de app de mogelijkheid krijgt.

Een algemeen API-oppervlak op alle apparaten

Windows 10 heeft het Universal Windows Platform (UWP) geïntroduceerd, dat een algemeen app-platform biedt op elk apparaat waarop Windows wordt uitgevoerd. De UWP-kern-API's zijn hetzelfde op alle Windows-apparaten. Als uw app alleen gebruikmaakt van de kern-API's, wordt deze uitgevoerd op elk Windows-apparaat, ongeacht of u zich richt op een desktop-pc, Xbox, Mixed reality-headset, enzovoort.

Een UWP-app die is geschreven in C++/WinRT- heeft toegang tot de Win32-API's die deel uitmaken van de UWP. Deze Win32-API's worden geïmplementeerd door alle Windows-apparaten.

Extensie-SDK's bieden de unieke mogelijkheden van specifieke apparaattypen weer

Als u zich richt op de universele API's, kan uw app worden uitgevoerd op alle apparaten met Windows 10 of hoger. Maar als u wilt dat uw UWP-app gebruikmaakt van apparaatspecifieke API's, kunt u dat ook doen.

Met extensie-SDK's kunt u gespecialiseerde API's aanroepen voor verschillende apparaten. Als uw UWP-app bijvoorbeeld is gericht op een IoT-apparaat, kunt u de SDK van de IoT-extensie toevoegen aan uw project om specifieke functies te richten op IoT-apparaten. Zie de sectie Extension SDK's in Programming with extension SDK'svoor meer informatie over het toevoegen van extensie-SDK's.

U kunt uw app schrijven zodat u verwacht dat deze alleen wordt uitgevoerd op een bepaald type apparaat en vervolgens de distributie van de Microsoft Store beperkt tot alleen dat type apparaat. U kunt ook voorwaardelijk testen op de aanwezigheid van een API tijdens runtime en het gedrag van uw app aanpassen. Zie de sectie Code schrijven in Programmeren met extensie-SDK'svoor meer informatie.

Adaptieve besturingselementen en invoer

UI-elementen reageren op de grootte en DPI van het scherm waarop de app wordt uitgevoerd door hun indeling en schaal aan te passen. UWP-apps werken goed met meerdere typen invoer, zoals toetsenbord, muis, touch, pen en gamecontrollers. Als u uw gebruikersinterface verder wilt aanpassen aan een specifieke schermgrootte of een specifiek apparaat, helpen nieuwe indelingsvensters en hulpmiddelen u bij het ontwerpen van de gebruikersinterface die kan worden aangepast aan de verschillende apparaten en formulierfactoren waarop uw app kan worden uitgevoerd.

door Windows aangedreven apparaten

Met Windows kunt u uw gebruikersinterface richten op meerdere apparaten met de volgende functies:

  • Universele besturingselementen en indelingspanelen helpen u uw gebruikersinterface te optimaliseren voor de schermresolutie van het apparaat. Besturingselementen zoals knoppen en schuifregelaars worden bijvoorbeeld automatisch aangepast aan de schermgrootte en DPI-dichtheid van het apparaat. Indelingsvensters helpen de indeling van inhoud aan te passen op basis van de grootte van het scherm. Adaptief schalen past zich aan bij resolutie- en DPI-verschillen tussen apparaten.
  • Met algemene invoerafhandeling kunt u invoer ontvangen via aanraking, een pen, een muis, een toetsenbord of een gamecontroller.
  • Hulpprogramma's waarmee u de gebruikersinterface kunt ontwerpen die zich kan aanpassen aan verschillende schermresoluties.

Sommige aspecten van de gebruikersinterface van uw app worden automatisch aangepast op verschillende apparaten. Het ontwerp van de gebruikerservaring van uw app moet echter mogelijk worden aangepast, afhankelijk van het apparaat waarop de app wordt uitgevoerd. Een foto-app kan bijvoorbeeld de gebruikersinterface aanpassen wanneer deze wordt uitgevoerd op een klein handheld-apparaat om ervoor te zorgen dat het gebruik ideaal is voor gebruik met één hand. Wanneer een foto-app wordt uitgevoerd op een desktopcomputer, moet de gebruikersinterface zich aanpassen om te profiteren van de extra schermruimte.

Er is één winkel voor alle apparaten

Een geïntegreerde App Store maakt uw app beschikbaar op Windows-apparaten, zoals pc-, tablet-, Xbox-, HoloLens-, Surface Hub- en IoT-apparaten (Internet of Things). U kunt uw app indienen bij de Store en deze beschikbaar maken voor alle typen apparaten, of alleen voor apparaten die u kiest. U verzendt en beheert al uw apps voor Windows-apparaten op één plaats. Hebt u een C++-desktop-app die u wilt moderniseren met UWP-functies en die u wilt verkopen in de Microsoft Store? Dat is ook oké.

UWP-apps kunnen worden geïntegreerd met Application Insights- voor gedetailleerde telemetrie en analyse, een cruciaal hulpmiddel voor het begrijpen van uw gebruikers en het verbeteren van uw apps.

UWP-apps kunnen worden verpakt met MSIX- en gedistribueerd via de Microsoft Store of op andere manieren. Met MSIX kunnen apps worden bijgewerkt, ongeacht hoe ze worden gedistribueerd, zie Bijwerken van niet-winkel gepubliceerde app-pakketten vanuit uw code.

Verdien geld met uw app

U kunt kiezen hoe u inkomsten krijgt met uw app. Er zijn verschillende manieren om geld te verdienen met uw app. U hoeft alleen maar de optie te kiezen die het beste voor u werkt, bijvoorbeeld:

  • Een betaalde download is de eenvoudigste optie. Noem maar een prijs.
  • Met proefversies kunnen gebruikers uw app uitproberen voordat ze deze kopen, waardoor ze gemakkelijker kunnen worden gedetecteerd en geconverteerd dan de meer traditionele 'freemium'-opties.
  • Verkoopprijzen om gebruikers te stimuleren.
  • Aankopen in de app.

Lever relevante, realtime informatie aan uw gebruikers om ervoor te zorgen dat ze terugkomen

Er zijn verschillende manieren om gebruikers betrokken te houden bij uw UWP-app:

  • Live-tegels en vergrendelingsschermtegels die contextafhankelijk relevante en tijdige informatie uit uw app in één oogopslag weergeven.
  • Pushmeldingen die realtime waarschuwingen naar de aandacht van uw gebruiker brengen.
  • Gebruikersactiviteiten stellen gebruikers in staat om op te halen waar ze gebleven waren in uw app, zelfs op verschillende apparaten.
  • Het Actiecentrum organiseert meldingen van uw app.
  • Uitvoering op de achtergrond en triggers brengen uw app in actie wanneer de gebruiker deze nodig heeft.
  • Uw app kan spraak- en Bluetooth LE-apparaten gebruiken om gebruikers te helpen met de wereld om hen heen te communiceren.
  • Integreer Cortana om spraakopdrachtmogelijkheden toe te voegen aan uw app.

Een taal gebruiken die u al kent

UWP-apps maken gebruik van Windows Runtime, de systeemeigen API die wordt geleverd door het besturingssysteem. Deze API wordt geïmplementeerd in C++ en wordt ondersteund in C#, Visual Basic, C++en JavaScript. Enkele opties voor het schrijven van UWP-apps zijn:

  • XAML UI en C#, VB of C++
  • DirectX UI en C++
  • JavaScript en HTML
  • WinUI

Instellen en voorbereiden

Bekijk instellen om de hulpprogramma's te downloaden die u nodig hebt om apps te maken en vervolgens uw eerste app-schrijven.

Uw app ontwerpen

Het Microsoft-ontwerpsysteem heet Fluent. Het Fluent Design System is een set UWP-functies in combinatie met aanbevolen procedures voor het maken van apps die prachtig presteren op alle typen Windows-apparaten. Fluent-ervaringen passen zich aan en voelen zich natuurlijk op apparaten van tablets tot laptops, van pc's tot televisies en op virtual reality-apparaten. Zie Het Fluent Design System voor UWP-apps voor een inleiding tot Fluent Design.

Goed ontwerp is het proces om te bepalen hoe gebruikers met uw app werken, naast hoe deze eruitziet en functioneert. Gebruikerservaring speelt een grote rol bij het bepalen hoe gelukkige mensen met uw app zullen zijn, dus sla deze stap niet over. Ontwerp basisbeginselen maakt u kennis met het ontwerpen van een Universele Windows-app. Bekijk de apparaat-inleiding om u te helpen nadenken over de interactie-ervaring van uw app op alle verschillende formaatfactoren waarop u zich wilt richten.

Naast interactie op verschillende apparaten, uw app plannen om de voordelen van het werken op meerdere apparaten te omarmen. Bijvoorbeeld:

Services toevoegen

Uw app verzenden naar de Store

Partnercentrum kunt u al uw apps voor Windows-apparaten op één plaats beheren en verzenden. Zie Windows-apps en -games publiceren voor meer informatie over het verzenden van uw apps voor publicatie in de Microsoft Store.

Nieuwe functies vereenvoudigen processen en bieden u meer controle. U vindt ook gedetailleerde analytische rapporten gecombineerde uitbetalingsgegevens, manieren om uw app te te promoten en contact op te nemen met uw klantenen nog veel meer.

Zie Een inleiding tot het bouwen van Windows-apps voor Windows 10-apparaten voor meer inleidende informatie

Meer geavanceerde onderwerpen

Hoe het Universal Windows-platform zich verhoudt tot Windows Runtime-API's

Als u een app voor het Universal Windows Platform (UWP) bouwt, kunt u veel voordeel en gemak halen uit het beschouwen van de termen 'Universal Windows Platform (UWP)' en 'Windows Runtime (WinRT)' als nagenoeg synoniem. Maar het is mogelijk om achter de schermen van de technologie te kijken en om te bepalen wat het verschil is tussen die ideeën. Als u daar nieuwsgierig naar bent, is deze laatste sectie voor u.

De Windows Runtime- en WinRT-API's zijn een evolutie van Windows-API's. Oorspronkelijk werden Windows-apps geschreven met behulp van platte Win32-API's in C-stijl en aan die werden COM-API's toegevoegd. DirectX is een prominent voorbeeld. Latere technologieën zoals Windows Forms, WPF, .NET en beheerde talen bieden ook een unieke manier om Windows-apps te schrijven met hun eigen smaak van API-technologie. Achter de schermen is de Windows Runtime de volgende fase van COM. Op de werkelijke ABI-laag (Application Binary Interface) worden de wortels in COM zichtbaar. Maar in tegenstelling tot COM is De Windows Runtime ontworpen om op een natuurlijkere manier aan te roepen vanuit een groot aantal programmeertalen. Als gevolg hiervan wordt toegang tot De Windows Runtime beschikbaar gesteld via de bekende taalprojecties. Een projectie verbergt de COM-details en biedt een natuurlijkere programmeerervaring voor een bepaalde taal. Er is een Windows Runtime-taalprojectie in C#, Visual Basic, standard C++, JavaScript, enzovoort. Bovendien kunt u, eenmaal correct verpakt—zie Desktop Bridge—WinRT-API's aanroepen vanuit een app die is ingebouwd in diverse toepassingsmodellen: Win32, .NET, WinForms, WPF en UWP.

UWP is een toepassingsmodel dat is gebouwd boven op Windows Runtime. Technisch gezien is het UWP-toepassingsmodel gebaseerd op CoreApplication, hoewel deze details mogelijk voor u verborgen zijn, afhankelijk van uw gekozen programmeertaal. De UWP leent zich voor het schrijven van één binaire die, als u dat wilt, kan worden gepubliceerd naar de Microsoft Store en uitgevoerd kan worden op een breed scala aan apparaatvormfactoren, zoals hierboven beschreven. Het apparaatbereik van uw UWP-app is afhankelijk van de subset van Windows Runtime-API's die u beperkt tot het aanroepen van uw app of die u voorwaardelijk aanroept.

Hopelijk is het in deze sectie gelukt om het verschil te beschrijven tussen de technologie die ten grondslag ligt aan de Windows Runtime-API's en het mechanisme en de bedrijfswaarde van het Universal Windows Platform.