Was ist eine Universelle Windows-Plattform (UWP)-App?What's a Universal Windows Platform (UWP) app?

Apps für die Universelle Windows-Plattform können auf einer Vielzahl von Geräten ausgeführt werden, unterstützen adaptive Benutzeroberflächen, natürliche Benutzereingaben, einen Store, ein Dev Center und Clouddienste.

Eine UWP-App ist:A UWP app is:

  • Sicher: UWP-Apps deklarieren, auf welche Geräteressourcen und Daten sie zugreifen.Secure: UWP apps declare which device resources and data they access. Der Benutzer muss den Zugriff autorisieren.The user must authorize that access.
  • Fähig, eine allgemeine API auf allen Geräten zu verwenden, auf denen Windows10 ausgeführt wird.Able to use a common API on all devices that run Windows 10.
  • Fähig, bestimmte Gerätefunktionen zu verwenden und die UI auf verschiedene Geräte-Bildschirmgrößen, Auflösungen und DPI-Werte anzupassen.Able to use device specific capabilities and adapt the UI to different device screen sizes, resolutions, and DPI.
  • Verfügbar aus dem Microsoft Store für alle Geräte (oder nur solche, die Sie angeben), auf denen Windows10 ausgeführt wird.Available from the Microsoft Store on all devices (or only those that you specify) that run on Windows 10. Das Microsoft Store bietet mehrere Möglichkeiten, mit Ihrer App Geld zu verdienen.The Microsoft Store provides multiple ways to make money on your app.
  • Fähig, ohne Risiko für den Computer oder Maschinenschaden installiert und deinstalliert zu werden.Able to be installed and uninstalled without risk to the machine or incurring "machine rot".
  • Ansprechend: Verwenden Sie Live-Kacheln, Pushbenachrichtigungen und Benutzeraktivitäten, um mit der Windows-Zeitachse und Cortana „Begonnene Aufgaben” zu interagieren und Benutzer zu erreichen.Engaging: use live tiles, push notifications, and user activities that interact with Windows Timeline and Cortana's Pick Up Where I Left Off, to engage users.
  • Programmierbar in C#, C++, Visual Basic und Javascript.Programmable in C#, C++, Visual Basic, and Javascript. Verwenden Sie für die Benutzeroberfläche XAML, HTML oder DirectX.For UI, use XAML, HTML, or DirectX.

Betrachten wir dies im Detail.Let's look at these in more detail.

SecureSecure

UWP-Apps deklarieren im Manifest die Gerätefunktionen, die sie benötigen wie z.B. den Zugriff auf das Mikrofon, Standort, Webcam, USB-Geräte, Dateien usw.UWP apps declare in their manifest the device capabilities they need such as access to the microphone, location, Webcam, USB devices, files, and so on. Der Benutzer muss den Zugriff bestätigen und autorisieren, bevor die App die Funktion nutzen kann.The user must acknowledge and authorize that access before the app is granted the capability.

Es gibt eine gemeinsame API-Oberfläche für alle GeräteA common API surface across all devices

Windows10 führt die Universelle Windows-Plattform (UWP) ein, die eine gemeinsame App-Plattform auf jedem Gerät bereitstellt, auf dem Windows10 ausgeführt wird.Windows 10 introduces the Universal Windows Platform (UWP), which provides a common app platform on every device that runs Windows 10. Die wichtigsten UWP-APIs sind auf allen Windows-Geräten identisch.The UWP core APIs are the same on all Windows devices. Wenn Ihre App nur die zentralen APIs verwendet, wird sie auf jedem Windows10-Gerät ausgeführt, unabhängig davon, ob Sie sie für einen Desktop-PC, eine Xbox oder einen Mixed Reality-Headset entwickeln usw.If your app only uses the core APIs, it will run on any Windows 10 device no matter whether you are targeting a desktop PC, Xbox, Mixed-reality headset, and so on.

Eine UWP-App die in C++ /WinRT oder C++ /CX geschrieben wurde, hat Zugriff auf die Win32 APIs, die Teil der universellen Windows-Plattform (UWP) sind.A UWP app written in C++ /WinRT or C++ /CX has access to the Win32 APIs that are part of the UWP. Diese Win32-APIs werden von allen Windows10-Geräten implementiert.These Win32 APIs are implemented by all Windows 10 devices.

Erweiterungs-SDKs bieten die einzigartigen Funktionen der jeweiligen GerätetypenExtension SDKs expose the unique capabilities of specific device types

Wenn Sie die universellen APIs verwenden, kann Ihre App auf allen Geräten ausgeführt werden, die Windows10 ausführen.If you target the universal APIs, your app can run on all devices that run Windows 10. Wenn Sie Ihre UWP-App für gerätespezifische APIs nutzen möchten, ist dies möglich.But if you want your UWP app to take advantage of device specific APIs, you can.

Mit Erweiterungs-SDKs können Sie spezielle APIs für verschiedene Geräte aufrufen.Extension SDKs let you call specialized APIs for different devices. Wenn Ihre UWP-App ein IoT-Gerät als Ziel hat, können Sie z.B. das IoT-Erweiterungs-SDK auf das Projekt hinzufügen, um spezifische Funktionen anzuvisieren, die speziell für IoT-Geräten gelten.For example, if your UWP app targets an IoT device, you can add the IoT extension SDK to your project to target features specific to IoT devices. Weitere Informationen zum Hinzufügen von Erweiterungs-SDKs finden Sie unter im Abschnitt Erweiterungs-SDKs unter Übersicht über die Gerätefamilien.For more information about adding extension SDKs, see the Extension SDKs section in Device families overview.

Sie können Ihre App so entwerfen, dass sie nur auf einem bestimmten Gerätetyp ausgeführt werden kann, und den Verteilungspunkt aus dem Microsoft Store nur auf einen Gerätetyp beschränken.You can write your app so that you expect it to run only on a particular type of device, and then limit its distribution from the Microsoft Store to just that type of device. Oder Sie können bedingt testen, ob eine API zur Laufzeit vorhanden ist und das Verhalten Ihrer App entsprechend anpassen.Or, you can conditionally test for the presence of an API at runtime and adapt your app's behavior accordingly. Weitere Informationen finden Sie im Abschnitt Schreiben von Code unter Übersicht über die Gerätefamilien.For more information, see the Writing Code section in Device families overview.

Das folgende Video bietet einen kurzen Überblick über die Gerätefamilien und adaptiven Code:The following video provides a brief overview of device families and adaptive coding:

Adaptive Steuerelemente und EingabenAdaptive controls and input

UI-Elemente reagieren auf die Größe und DPI-Werte des Fensters der App, indem Sie das Layout und die Skalierung anpassen.UI elements respond to the size and DPI of the screen the app is running on by adjusting their layout and scale. UWP-Apps funktionieren außerdem mit mehreren Arten von Eingaben, z.B. Tastatur, Maus, Touch, Stift und Xbox One-Controller.UWP apps work well with multiple types of input such as keyboard, mouse, touch, pen, and Xbox One controllers. Wenn Sie die Benutzeroberfläche auf eine bestimmte Bildschirmgröße oder ein bestimmtes Gerät anpassen müssen, helfen Ihnen neue Layoutbereiche und Tools dabei, die Benutzeroberfläche auf den Geräten so zu erstellen, dass sie auf die verschiedenen Geräte und Formfaktoren angepasst werden kann, auf denen Ihre App möglicherweise ausgeführt wird.If you need to further tailor your UI to a specific screen size or device, new layout panels and tooling help you design UI that can adapt to the different devices and form factors that your app may run on.

Windows-Geräte

Windows unterstützt Sie mit folgenden Features, Ihre UI auf mehrere Geräte auszurichten:Windows helps you target your UI to multiple devices with the following features:

  • Universelle Steuerelemente und Layoutbereiche können Sie bei der Optimierung Ihrer UI für die Bildschirmauflösung des Geräts unterstützenUniversal controls and layout panels help you to optimize your UI for the screen resolution of the device. Steuerelemente wie Schaltflächen und Schieberegler werden automatisch nach Bildschirmgröße und DPI-Dichte angepasst.For example, controls such as buttons and sliders automatically adapt to device screen size and DPI density. Layoutpanels können das Layout von Inhalten basierend auf der Größe des Bildschirms anpassen.Layout panels help adjust the layout of content based on the size of the screen. Die adaptive Skalierung passt die Auflösung und DPI-Unterschiede auf allen Geräten an.Adaptive scaling adjusts to resolution and DPI differences across devices.
  • Mit der allgemeinen Eingabebehandlung können Sie Benutzereingaben per Toucheingabe, Stift, Maus, Tastatur oder Controller (Microsoft Xbox-Controller oder Ähnliches) erhalten.Common input handling allows you to receive input through touch, a pen, a mouse, a keyboard, or a controller such as a Microsoft Xbox controller.
  • Tools können Sie bei dem Entwerfen der UI unterstützen, sodass sie sich an verschiedene Bildschirmauflösungen anpasst.Tooling that helps you to design UI that can adapt to different screen resolutions.

Einige Aspekte der App-UI Ihrer App werden automatisch auf allen Geräten angepasst.Some aspects of your app's UI will automatically adapt across devices. Das Design der Benutzererfahrung Ihrer App muss jedoch möglicherweise angepasst werden, je nachdem, auf welchem Gerät die App ausgeführt wird.Your app's user-experience design, however, may need to adapt depending on the device the app is running on. Eine Foto-App sollte die UI beispielsweise anpassen, wenn sie auf einem kleinen, tragbaren Gerät ausgeführt wird, um sicherzustellen, dass sie optimal mit einer Hand bedient werden kann.For example, a photo app could adapt its UI when running on a small, handheld device to ensure that usage is ideal for single-handed use. Wenn die Foto-App auf einem Desktopcomputer ausgeführt wird, sollte sich die Benutzeroberfläche anpassen, um die zusätzliche Bildschirmfläche zu nutzen.When a photo app is running on a desktop computer, the UI should adapt to take advantage of the additional screen space.

Es gibt einen Store für alle GeräteThere's one store for all devices

Ein einheitlicher App-Store stellt Ihre App auf Windows10-Geräten wie PC, Tablet, Xbox, HoloLens, Surface Hub, und Internet der Dinge (IoT) zur Verfügung.A unified app store makes your app available on Windows 10 devices such as PC, tablet, Xbox, HoloLens, Surface Hub, and Internet of Things (IoT) devices. Sie können Ihre App an den Store übermitteln und auf für Geräte aller Art oder nur für bestimmte Geräte zur Verfügung stellen.You can submit your app to the store and make it available to all types of devices, or only those you choose. Sie übermitteln und verwalten alle Ihre Apps für Windows-Geräte an einem zentralen Ort.You submit and manage all your apps for Windows devices in one place. Sie haben eine mit C++ entwickelte Desktop-App, die Sie mit UWP-Features modernisieren und im Microsoft Store verkaufen möchten?Have a C++ desktop app that you want to modernize with UWP features and sell in the Microsoft store? Das ist auch möglich.That's okay, too.

UWP-Apps werden mit Application Insights für detaillierte Telemetrie und Analyse integriert. Dies ist ein besonders wichtiges Tool zum Verständnis der Anwender und zur Verbesserung Ihrer Apps.UWP apps integrate with Application Insights for detailed telemetry and analytics—a crucial tool for understanding your users and improving your apps.

Monetisieren Ihrer AppMonetize your app

Sie können auswählen, wie Sie Ihre App vermarkten.You can choose how you'll monetize your app. Es gibt eine Reihe von Möglichkeiten, mit Ihren Apps Geld zu verdienen.There are a number of ways to make money with your app. Sie müssen nur die für Sie am besten geeignete Methode auswählen, zum Beispiel:All you need to do is choose the one that works best for you, for example:

  • Ein bezahlter Download ist die einfachste Möglichkeit.A paid download is the simplest option. Geben Sie einfach nur Ihren Preis an.Just name the price.
  • Dank Testversionen können Benutzern Ihre App vor dem Kauf testen. Im Vergleich zu den herkömmlicheren „Freemium“-Optionen kann sie leichter gefunden werden, und die Zahl der Konversionen ist höher.Trials let users try your app before buying it, providing easier discoverability and conversion than the more traditional "freemium" options.
  • Verkaufspreise als Anreiz für Benutzer.Sale prices to incentivize users.
  • In-App-Käufe und -Anzeigen sind ebenfalls verfügbar.In-app purchases and ads are also available.

Apps aus dem Microsoft Store bieten eine nahtlose Installation, Deinstallation und Upgrade des ErlebnissesApps from the Microsoft Store provide a seamless install, uninstall, and upgrade experience

Alle UWP-Apps werden mithilfe eines Packaging-Systems verteilt, das den Benutzer, das Gerät und das System schützt.All UWP apps are distributed using a packaging system that protects the user, device, and system. Benutzer müssen es niemals bedauern, eine App zu installieren, da UWP-Apps deinstalliert werden können, ohne etwas zu verlieren mit Ausnahme der Dokumente, die mit der App erstellt wurden.Users never need regret installing an app because UWP apps can be uninstalled without leaving anything behind except the documents created with the app.

Apps können problemlos bereitgestellt und aktualisiert werden.Apps can be deployed and updated seamlessly. App-Pakete können modularisiert werden, damit Sie Inhalt und Erweiterungen nach Bedarf herunterladen können.App packaging can be modularized so that you can download content and extensions on demand.

Stellen Sie relevante Infos in Echtzeit für Benutzer bereit, damit sie immer wieder auf die App zugreifen.Deliver relevant, real-time info to your users to keep them coming back

Es gibt eine Vielzahl von Möglichkeiten, um Benutzer für Ihre UWP-App zu engagieren:There are a variety of ways to keep users engaged with your UWP app:

  • Auf Live-Kacheln und dem Sperrbildschirm werden kontextbezogene, relevante und aktuelle Kachelinformationen auf einen Blick in der App sichtbar angezeigt.Live tiles and lock screen tiles that show contextually relevant and timely info from your app at a glance.
  • Pushbenachrichtigungen informieren Benutzer in Echtzeit über wichtige Ereignisse.Push notifications that bring real-time alerts to your user’s attention.
  • Benutzeraktivitäten ermöglichen Benutzern geräteübergreifend dort weiterzumachen, wo sie in Ihrer App aufgehört haben.User Activities allow users to pick up where they left off in your app, even across devices.
  • Das Info-Center organisiert Benachrichtigungen von Ihrer App.The Action Center organizes notifications from your app.
  • Hintergrundausführung und Auslöser erwecken Ihre App zum Leben, wenn der Benutzer sie benötigt.Background execution and triggers bring your app into action when the user needs it.
  • Ihre App kann Sprache und Bluetooth LE-Geräte verwenden, um Benutzer bei der Interaktion mit der Welt um sie herum zu unterstützen.Your app can use voice and Bluetooth LE devices to help users interact with the world around them.
  • Integrieren Sie Cortana für Befehl der Sprachfunktionalität von Ihrer App.Integrate Cortana to add voice command capability to your app.

Verwenden einer vertrauten SpracheUse a language you already know

UWP-Apps verwenden die Windows-Runtime. Dies ist eine native, vom Betriebssystem integrierte API.UWP apps use the Windows Runtime, the native API provided by the operating system. Diese API ist in C++ implementiert und wird in C#, Visual Basic, C++ und JavaScript unterstützt.This API is implemented in C++ and is supported in C#, Visual Basic, C++, and JavaScript. Einige Optionen für das Schreiben von Apps in UWP sind:Some options for writing UWP apps include:

  • XAML-UI und C#, VB oder C++XAML UI and C#, VB, or C++
  • DirectX UI und C++DirectX UI and C++
  • JavaScript und HTMLJavaScript and HTML

VorbereitenGet set up

Navigieren Sie zu Vorbereiten, um die Tools herunterzuladen, die Sie benötigen, um mit dem Erstellen von Apps zu beginnen, und schreiben Sie Ihre erste App!Check out Get set up to download the tools you need to start creating apps, and then write your first app.

Entwerfen Sie Ihre AppDesign your app

Das Microsoft-Entwurfssystem heißt Fluent.The Microsoft design system is named Fluent. Das Fluent Design System stellt eine Reihe von UWP-Funktionen in Kombination mit bewährten Verfahrensweisen für die Erstellung von Apps dar, die auf allen Arten von Windows-basierten Geräten hervorragend funktionieren.The Fluent Design System is a set of UWP features combined with best practices for creating apps that perform beautifully on all types of Windows-powered devices. Fluent-Umgebungen sind anpassungsfähig und fühlen sich auf Geräten wie Tablets, Laptops, PCs, Fernsehern und Virtual-Reality-Geräten ganz natürlich an.Fluent experiences adapt and feel natural on devices from tablets to laptops, from PCs to televisions, and on virtual reality devices. Weitere Informationen über Fluent Design finden Sie unter Das Fluent Design System für UWP-Apps.See The Fluent Design System for UWP apps for an introduction to Fluent Design.

Zu einem guten Design gehören nicht nur das gute Aussehen und die Funktionen einer App, sondern auch die Entscheidung darüber, wie Benutzer mit der App interagieren.Good design is the process of deciding how users will interact with your app, in addition to how it will look and function. Die Benutzerfreundlichkeit spielt eine große Rolle bei der Beurteilung, wie gerne Benutzer Ihre App verwenden. Sparen Sie daher nicht an diesem Schritt.User experience plays a huge part in determining how happy people will be with your app, so don't skimp on this step. Designgrundlagen bieten eine Einführung in das Design von Apps für die Universelle Windows-App.Design basics introduces you to designing a Universal Windows app. Unter Einführung in universelle Windows-Plattform-Apps (UWP) für Designer finden Sie Informationen zum Entwerfen von UWP-Apps, die Benutzer begeistern.See the Introduction to Universal Windows Platform (UWP) apps for designers for information on designing UWP apps that delight your users. Bevor Sie mit dem Schreiben von Code beginnen, lesen Sie die Informationen unter Einführung der Geräte. Diese helfen Ihnen dabei, die Interaktionsmöglichkeiten Ihrer App für alle in Frage kommenden Formfaktoren zu durchdenken.Before you start coding, see the device primer to help you think through the interaction experience of using your app on all the different form factors you want to target.

Zusätzlich zur Interaktion auf verschiedenen Geräten sollten Sie Ihre App planen, um die Vorteile verschiedener Geräte optimal zu nutzen.In addition to interaction on different devices, plan your app to embrace the benefits of working across multiple devices. Zum Beispiel:For example:

Dienste hinzufügenAdd services

Übermitteln Ihrer App an den Store.Submit your app to the store

Im neuen einheitlichen WindowsDevCenter-Dashboard können Sie all Ihre Apps für Windows-Geräte zentral verwalten und einreichen.The new unified Windows Dev Center dashboard lets you manage and submit all of your apps for Windows devices in one place. Unter Verwenden des einheitlichen Windows Dev Center-Dashboards erfahren Sie, wie Sie Ihre Apps zur Veröffentlichung im MicrosoftStore übermitteln.See Using the unified Windows Dev Center dashboard to learn how to submit your apps for publication in the Microsoft Store.

Neue Features vereinfachen Prozesse und geben Ihnen mehr Kontrolle.New features simplify processes while giving you more control. Sie finden dort auch detaillierte Analyseberichte in Kombination mit Auszahlungsdetails, Möglichkeiten, Ihre App zu bewerben und Kunden zu erreichen und vieles mehr.You'll also find detailed analytic reports combined payout details, ways to promote your app and engage with your customers, and much more.

Weitere einführende Informationen finden Sie unter Einführung in das Entwickeln von Windows-Apps für Windows 10-GeräteFor more introductory material, see An Introduction to Building Windows Apps for Windows 10 Devices

Fortgeschrittenere ThemenMore advanced topics

Anwendbarkeit von universellen Windows-Plattform zu Windows-Runtime-APIsHow the Universal Windows Platform relates to Windows Runtime APIs

Wenn Sie eine universelle Windows-Plattform (UWP)-app erstellen, können Sie einen Großteil Kilometer und den Komfort aus die Begriffe "universelle Windows-Plattform (UWP)" und "Windows-Runtime (WinRT)" als mehr oder weniger Synonyme behandelt abrufen.If you're building a Universal Windows Platform (UWP) app, then you can get a lot of mileage and convenience out of treating the terms "Universal Windows Platform (UWP)" and "Windows Runtime (WinRT)" as more or less synonymous. Aber es ist möglich, hinter den Kulissen der Technologie suchen und zu ermitteln, was ist der Unterschied zwischen diesen Ideen.But it is possible to look under the covers of the technology, and determine just what the difference is between those ideas. Wenn Sie wissen möchten, sind, ist dieser letzten Abschnitt für Sie.If you're curious about that, then this last section is for you.

Die Windows-Runtime und WinRT-APIs sind eine Weiterentwicklung des Windows-APIs.The Windows Runtime, and WinRT APIs, are an evolution of Windows APIs. Windows wurde ursprünglich über flach, C-Stil Win32-APIs programmiert.Originally, Windows was programmed via flat, C-style Win32 APIs. Zu den wurden COM-APIs (DirectX wird ein Markantes Beispiel) hinzugefügt.To those were added COM APIs (DirectX being a prominent example). Windows Forms, WPF, .NET und verwalteten Sprachen zusätzlich zu ihren eigenen Weg Schreiben von Windows-apps und ihre eigenen Qualifizierer der API-Technologie verwendet.Windows Forms, WPF, .NET, and managed languages brought their own way of writing Windows apps, and their own flavor of API technology. Windows-Runtime ist hinter den Kulissen die nächste Phase des COMThe Windows Runtime is, under the covers, the next stage of COM. Auf der tatsächlichen Anwendung binäre Schnittstelle (ABI)-Ebene werden die Stämme in COM sichtbar.At the actual application binary interface (ABI) layer, its roots in COM become visible. Aber die Windows-Runtime wurde entwickelt, um über eine große Palette von verschiedenen Programmiersprachen aufgerufen werden.But the Windows Runtime was designed to be callable from a great range of different programming languages. Und in einer Weise, die sehr natürlich an die einzelnen Sprachen wird aufgerufen.And callable in a way that's very natural to each of those languages. Zu diesem Zweck ist Zugriff auf die Windows-Runtime verfügbar gemacht über welche sprachprojektionen genannt.To this end, access to the Windows Runtime is made available via what are known as language projections. Es gibt eine Windows-Runtime-sprachprojektion in c#, in Visual Basic, in Standard-c++, in JavaScript und So weiter.There is a Windows Runtime language projection into C#, into Visual Basic, into standard C++, into JavaScript, and so on. Darüber hinaus einmal entsprechend verpackt (siehe Desktop-Brücke), Sie können WinRT-APIs aufrufen, aus einer app in eine hervorragende Bereich von Anwendungsmodellen erstellt: Win32, .NET, WinForms und WPF.Furthermore, once packaged appropriately (see Desktop Bridge), you can call WinRT APIs from an app built in one of a great range of application models: Win32, .NET, WinForms, and WPF.

Und natürlich können Sie WinRT-APIs aus Ihrer UWP-app aufrufen.And, of course, you can call WinRT APIs from your UWP app. UWP ist eine Anwendungsmodell basiert auf der Windows-Runtime.UWP is an application model built on top of the Windows Runtime. Technisch gesehen Modell der UWP-Anwendung CoreApplication, basiert auf auch dieses Detail von Ihnen, je nach Ihrer Wahl Programmiersprache verborgen werden kann.Technically, the UWP application model is based on CoreApplication, although that detail may be hidden from you, depending on your choice of programming language. Wie in diesem Thema, aus einem Wert nutzen Sicht beschrieben wurde, die UWP eignet sich für für Schreiben einer einzelnen Binärdatei, die können Sie auswählen sollen, an den Microsoft Store veröffentlicht und für eine beliebige eine große Palette von Geräte-Formfaktoren ausgeführt werden.As this topic has explained, from a value proposition point of view, the UWP lends itself to writing a single binary that can, should you choose, be published to the Microsoft Store and run on any one of a great range of device form factors. Die Gerät Reichweite Ihrer UWP-App richtet sich nach der Teilmenge von UWP-APIs, Ihre app mit einem Aufruf zu beschränken, oder dass Sie bedingt aufrufen.The device reach of your UWP app depends on the subset of UWP APIs that you limit your app to calling, or that you call conditionally.

Wir hoffen, dass schon in diesem Abschnitt beschreiben die Differenz zwischen der zugrunde liegenden Windows-Runtime-APIs und der Mechanismus und Geschäftswert der universellen Windows-Plattform-Technologie erfolgreich war.Hopefully, this section has been successful in describing the difference between the technology underlying Windows Runtime APIs, and the mechanism and business value of the Universal Windows Platform.