Универсальная платформа Windows - это общая программная платформа для всех устройств под управлением Windows 10, включая Desktop. Этот тег следует использовать для вопросов, касающихся разработки приложений UWP на любом из поддерживаемых семейств устройств. Могут быть добавлены другие теги, такие как используемые языки (C#, C++ и т. Д.) И стиль API (Win32, WinRT и т. Д.). Упакованные приложения Win32 должны использовать тег Desktop-Bridge (возможно, в дополнение к UWP).

Универсальная платформа Windows

В Windows 10 представлена ​​универсальная платформа Windows, которая представляет собой эволюцию "современной" платформы, впервые представленной в Windows 8. UWP заменяет разрозненные устаревшие платформы и объединяет все устройства Windows (рабочий стол, Xbox, IoT, Surface Hub, HoloLens и т. Д.). UWP находится в центре внимания всех будущих инноваций платформы Windows в Microsoft, в том числе для настольных Windows, при этом многие из первоначальных различий между "приложениями UWP" и "настольными приложениями Win32" были удалены. UWP состоит из API Win32, COM, WinRT и.NET.

UWP представила или усовершенствовала несколько новых технологий, многие из которых теперь доступны для приложений Win32:

  • Упаковка MSIX (вдевичестве AppX).
  • Декларативная расширяемость и точки интеграции.
  • Безопасность и конфиденциальность на основе AppContainer.
  • Упаковка и разрешение ресурсов MRT.
  • Пользовательский интерфейс на основе XAML, включая современный ввод (сенсорный ввод, перо и игровой контроллер).
  • API платформы WinRT.
  • Магазин Microsoft

MSIX обеспечивает чистую установку, обслуживание и удаление приложений, включая упакованные приложения Win32. Он позволяет приложениям интегрироваться с оболочкой Windows и взаимодействовать с другими приложениями через механизм декларативного расширения.

AppContainers по умолчанию запускают приложения с минимальным набором разрешений, гарантируя, что они изолированы друг от друга и от системы. Контейнеры приложений используют явную модель безопасности на основе разрешений (известную как "возможности") для запроса дополнительного доступа к таким ресурсам, как сеть, местоположение пользователя или камера. Упакованные приложения Win32 обычно не запускаются внутри AppContainer.

MRT - это унифицированная технология управления ресурсами, позволяющая приложениям указывать ресурсы по разнообразному набору осей (язык, коэффициент масштабирования, доступность, домашний регион и т. Д.), Причем наиболее подходящий кандидат загружается автоматически во время выполнения. MRT доступен для приложений Win32.

XAML, инфраструктура пользовательского интерфейса для UWP, использует декларативный диалект XML для определения макета пользовательского интерфейса. Он будет знаком всем, кто использовал WPF или Silverlight, но XAML был обновлен для лучшей интеграции с рендерингом DirectX и использования современных средств ввода, таких как сенсорный ввод, перо и игровой контроллер. Он также больше не ограничен языками.NET (его можно использовать из C++) и его можно использовать из приложений Win32.

Платформа времени выполнения состоит из набора API-интерфейсов среды выполнения Windows (WinRT), растущего подмножества API-интерфейсов COM и Win32 и кроссплатформенного набора API-интерфейсов.NET. Большинство API-интерфейсов UWP доступны на всех устройствах Windows, и большинство API-интерфейсов UWP также доступны для приложений Win32 или Packaged Win32. Используя Desktop Extension SDK, упакованные приложения Win32 могут получить доступ практически к любому существующему API или функции Windows, но работают только на настольных устройствах Windows. Даже если приложение использует специфические для устройства функциональные возможности, оно все равно может работать на других устройствах UWP, если оно избегает вызова специализированных API-интерфейсов, когда они недоступны.

Приложения UWP (включая упакованные приложения Win32) могут распространяться через Microsoft Store, но они также могут быть загружены неопубликованно на большинство устройств с помощью традиционных механизмов развертывания (корпоративное развертывание, загрузка через Интернет, установщики на основе MSI и т. Д.). По умолчанию все приложения, созданные с помощью Visual Studio, могут работать на всех устройствах с Windows 10, но разработчики могут ограничить распространение в Microsoft Store одним или несколькими конкретными устройствами, если у них есть техническая или деловая необходимость.

Ресурсы