From Wikipedia, the free encyclopedia
Right: Metro-style app; entirely composed of contents
Universal Windows Platform (UWP) apps[1] (formerly Windows Store apps, Metro-style apps and Modern apps)[2] are applications that can be used across all compatible Microsoft Windows devices. They are primarily purchased and downloaded via the Microsoft Store, Microsoft’s digital storefront.[3]
Nomenclature[edit]
Starting with Windows 10, Microsoft initially used the term «Windows app» to describe Universal Windows Platform (UWP) apps. These were applications that could be installed from the Microsoft Store, which was previously known as the Windows Store. Initially, these apps were called «Trusted Windows Store apps,» and later they were referred to as «Trusted Microsoft Store apps.» On the other hand, traditional programs designed to run on desktop computers were referred to as «desktop apps.»
With the release of Windows 10 version 1903, there was a shift in the terminology. Microsoft began using the term «Apps» to refer to both UWP apps and desktop apps indiscriminately. This change aimed to unify the naming convention for all types of applications.
It’s worth noting that the term «Universal Windows Platform» (UWP) is primarily used in Microsoft’s developer documentation to specifically refer to the platform itself. Microsoft also introduced the term «Windows Runtime app» retrospectively to describe the precursors of UWP apps, as there was previously no clear and unambiguous name for them.
In Windows 8.x[edit]
UWP apps first became available under the name «Metro-style apps» in 2012 and were marketed with Windows 8.[2][4]
Look and feel[edit]
In Windows 8.x, Metro-style apps do not run in a window. Instead, they either occupy the entire screen or are snapped to one side, in which case they occupy the entire height of the screen but only part of its width. They have no title bar, system menu, window borders or control buttons. Command interfaces like scroll bars are usually hidden at first. Menus are located in the «settings charm.» Metro-style apps use the UI controls of Windows 8.x and typically follow Windows 8.x UI guidelines, such as horizontal scrolling and the inclusion of edge-UIs, like the app bar.[5]
In response to criticism from customers, in Windows 8.1, a title bar is added but hidden unless users move the mouse cursor to the top of the screen. The «hamburger» menu button on their title bar gives access to the charms.[5]
Distribution and licensing[edit]
For most users, the only point of entry for Metro-style apps is the Windows Store. Enterprises operating a Windows domain infrastructure may enter into a contract with Microsoft that allows them to sideload their line-of-business Metro-style apps, circumventing Windows Store. Also, major web browser vendors are selectively exempted from this rule, they are allowed to circumvent Microsoft guidelines and Windows Store and run a Metro-style version of themselves if the user chooses to make their product the default web browser.[6][7]
Windows RT requires all installed apps to be from the Windows Store, or be verified by Microsoft (most internal applications).
Multiple copies[edit]
Before Windows 8, programs were identified by their static icons. The Windows taskbar was responsible for representing every app that had a window when they run. Metro-style apps, however, are identified by their «tiles» that can show their icon and also other dynamic contents. In addition, in Windows 8 and Windows 8.1 RTM, they are not shown on the Windows taskbar when they run, but on a dedicated app switcher on the left side of the screen.[8] Windows 8.1 Update added taskbar icons for Metro-style apps.[9]
There is no set limit on how many copies of desktop apps can run simultaneously. For example, one user may run as many copies of programs such as Notepad, Paint or Firefox as the system resources support. (Some desktop apps, such as Windows Media Player, are designed to allow only a single instance, but this is not enforced by the operating system.) However, in Windows 8, only one copy of Metro-style apps may run at any given time; invoking the app brings the running instance to the front. True multi-instancing of these apps were not available until Windows 10 version 1803 (released in May 2018).[10]
In Windows 10 and Windows 11[edit]
Windows 10 brings significant changes to how UWP apps look and work.
Look and feel[edit]
How UWP apps look depends on the app itself. UWP apps built specifically for Windows 10 and 11 typically appear and function differently than ones on older versions, as they use new UI controls that look different from those of previous versions of Windows. The exception to this are apps that use custom UI, which is especially the case with video games. Apps designed for Windows 8.x look significantly different from those designed for Windows 10 and 11.
UWP apps can also look almost identical to traditional desktop apps, using the same legacy UI controls from Windows versions dating back to Windows 95. These are legacy desktop apps that are converted to the UWP apps and distributed using the APPX file format.[citation needed]
Multitasking[edit]
In Windows 10, most UWP apps, even those designed for Windows 8.x, are run in floating windows, and users use the Windows taskbar and Task View to switch between both UWP apps and desktop apps. Windows 10 also introduced «Tablet Mode». This mode is by default disabled on desktop computers and enabled on tablet computers, but desktop users can switch it on or off manually. When the Tablet Mode is off, apps may have resizable windows and visible title bars. When the Tablet Mode is enabled, resizable apps use the windowing system similar to that of Metro-style apps on Windows 8.x in that they are forced to either occupy the whole screen or be snapped to one side.[11][12][13]
UWP apps in Windows 10 can open in multiple windows. Microsoft Edge, Calculator, and Photos are examples of apps that allow this. Windows 10 v1803 (released in May 2018) added true multi-instancing capabilities, so that multiple independent copies of a UWP app can run.[10]
Licensing and distribution[edit]
UWP apps can be downloaded from Windows Store or sideloaded. The sideloading requirements were reduced significantly from Windows 8.x to 10, but the app must still be signed by a trusted digital certificate that chains to a root certificate.[14]
Lifecycle[edit]
Metro-style apps are suspended when they are closed; suspended apps are terminated automatically as needed by a Windows app manager. Dynamic tiles, background components and contracts (interfaces for interacting with other apps) may require an app to be activated before a user starts it.[15][16]
Invoking an arbitrary Metro-style app or UWP app from the command line was first introduced in the Insider build 16226 of Windows 10,[17] which was released on 21 June 2017.[18]
Development[edit]
Windows Runtime[edit]
Traditionally, Windows software is developed using the Windows API. Software has access to the Windows API with no arbitrary restrictions. Developers were free to choose their own programming language and development tools. Metro-style apps can only be developed using Windows Runtime (WinRT). (Note that not every app using WinRT is a Metro-style app.) A limited subset of WinRT is available for also conventional desktop apps.[19] Calling a forbidden API disqualifies the app from appearing on Windows Store.
Metro-style apps can only be developed using Microsoft’s own development tools. According to Allen Bauer, Chief Scientist of Embarcadero Technologies, there are APIs that every computer program must call but Microsoft has forbidden them, except when the call comes from Microsoft’s own Visual C++ runtime.[20][21][22]
Universal apps[edit]
UWP apps developed to work on smartphones, personal computers, video game consoles and HoloLens are called universal apps. This is accomplished by using the universal app API, first introduced in Windows 8.1 and Windows Phone 8.1. Visual Studio 2013 with Update 2 could be used to develop these apps.[23][24] Windows 10 introduced Universal Windows Platform (UWP) 10 for developing universal apps. Apps that take advantage of this platform are developed with Visual Studio 2015 or later. Older Metro-style apps for Windows 8.1, Windows Phone 8.1 or for both (universal 8.1) need modifications to migrate to this platform.[25][26]
UWP is not distinct from Windows Runtime; rather, it is an extension of it. Universal apps no longer indicate having been written for a specific OS in their manifest; instead, they target one or more device families, e.g. desktop, mobile, Xbox or Internet of Things (IoT). They react to the capabilities that become available to the device. A universal app may run on both a small mobile phone and a tablet and provide a suitable experience. The universal app running on the mobile phone may start behaving the way it would on a tablet when the phone is connected to a monitor or a suitable docking station.[27]
APPX[edit]
Filename extension |
.appx, .appxbundle |
---|---|
Developed by | Microsoft |
Type of format | Archive |
Container for | Installation information and an EXE or MSI file |
Open format? | Yes |
APPX is the file format used to distribute and install apps on Windows 8.x, 10, 11, Windows Phone 8.1, Windows 10 Mobile, Xbox One, Xbox Series X|S, Hololens, and Windows 10 IoT Core.[28] Unlike legacy desktop apps, APPX is the only installation system allowed for UWP apps. It replaces the XAP file format on Windows Phone 8.1, in an attempt to unify the distribution of apps for Windows Phone and Windows 8.[29] APPX files are only compatible with Windows Phone 8.1 and later versions, and with Windows 8 and later versions.[30]
The Windows Phone 8.x Marketplace allows users to download APPX files to an SD Card and install them manually. In contrast, sideloading is prohibited on Windows 8.x, unless the user has a developers license or in a business domain.[31][unreliable source?]
Security[edit]
Traditional Windows applications generally have the power to use and change their ecosystem however they want to. Windows user account rights, User Account Control and antivirus software attempt to keep this ability in check and notify the user when the app tries to use it, possibly for malicious purposes. Metro-style apps, however, are sandboxed and cannot permanently change a Windows ecosystem. They need permission to access hardware devices such as webcams, microphones or their file system which is restricted to user folders, such as My Documents. Microsoft further moderates these programs and may remove them from the Windows Store if they are discovered to have security or privacy issues.[32][33]
See also[edit]
- Windows App Studio
- WinJS
References[edit]
- ^ Weinberger, Matt (March 17, 2016), Microsoft is trying to change Windows software forever — here’s why it’ll be a tough fight, retrieved June 27, 2016
- ^ a b Harrel, William (April 10, 2015), «Metro, Modern, Now Universal? Microsoft Can’t Make Up Its Mind!», Digital Trends, retrieved June 27, 2016
- ^ Weinberger, Matt (March 4, 2016), «Microsoft’s Windows app strategy comes under fire: ‘The most aggressive move Microsoft has ever made’«, Business Insider, retrieved June 27, 2016
- ^ Newman, Jared (March 26, 2015), «Microsoft’s Metro apps rechristened with a new, sixth name: Windows apps», PCWorld, retrieved June 27, 2016
- ^ a b Leonhart, Woody (8 April 2014). «What’s new in Windows 8.1 Update». InfoWorld. IDG.
- ^ Bott, Ed (15 January 2014). «Google’s latest Chrome release tries to replace the Windows 8 desktop». ZDNet. CBS Interactive.
Under Microsoft’s rules, Metro-style browsers are able to sidestep requirements that apply to all other apps, including the mandate to be distributed through the Windows Store
- ^ Branscombe, Mary (27 March 2012). «Windows 8 browsers: the only Metro apps to get desktop power». TechRadar. Future Publishing. Retrieved 17 January 2014.
- ^ «Switch between open apps». Microsoft Surface manual. Microsoft. Retrieved 31 December 2013.
- ^ Fitzsimmons, Michelle (May 13, 2014). «Windows 8.1 Update 1: hands on with Microsoft’s latest Windows update». TechRadar. Future plc. Retrieved May 19, 2014.
- ^ a b Whitechapel, Andrew (May 2018). «Universal Windows Platform — Closing UWP-Win32 Gaps». MSDN Magazine. Vol. 33, no. 5. Microsoft.
- ^ Seifert, Dan (29 July 2015). «The nine most important updates in Windows 10». The Verge. Vox Media.
- ^ Warren, Tom (28 July 2015). «Windows 10 review». The Verge. Vox Media.
- ^ Bott, Ed (28 July 2015). «Windows 10: A new beginning». ZDNet. CBS Interactive.
- ^ Sheehan, John; Zanjani, Peyman (30 March 2016). Project Centennial: Bringing Existing Desktop Applications to the Universal Windows Platform (Video). San Francisco: Microsoft Corporation. 8:50 minutes in. Archived from the original on 29 January 2018. Retrieved 3 April 2016.
- ^ Joshi, Bipin (22 February 2013). «Understanding Windows Store App Lifecycle and State Management». Code Guru. QuinStreet.
- ^ Hale, David (7 March 2016). «App lifecycle». Windows Dev Center. Microsoft.
- ^ Whitechapel, Andrew (5 July 2017). «Command-Line Activation of Universal Windows Apps». Building Apps for Windows. Microsoft.
- ^ Sarkar, Dona (21 June 2017). «Announcing Windows 10 Insider Preview Build 16226 for PC». Windows Experience Blog. Microsoft.
- ^ «Windows Runtime APIs for desktop apps». MSDN. Microsoft. Retrieved 31 July 2015.
- ^ Grange, Eric (23 August 2012). «Why no native WinRT support in Delphi XE3?». DelphiTools. Retrieved 13 January 2014.
- ^ Anderson, Tim (23 August 2012). «Third-party compilers locked out of Windows Runtime development». Tim Anderson’s ITWriting. Retrieved 13 January 2014.
- ^ Bauer, Allen (22 August 2012). «HTML5 Builder». Embarcadero Developer Network. Embarcadero Technologies. Archived from the original on 14 June 2020. Retrieved 13 January 2014.
- ^ Waheed, Ahmed (2 March 2015). «A first look at the Windows 10 universal app platform». Microsoft Gulf Technical Community blog. Microsoft.
- ^ Appel, Rachel (September 2014). «Modern Apps : Build Universal Apps for the Windows Platform». MSDN Magazine. Microsoft. 29 (9).
- ^ «Migrate apps to the Universal Windows Platform (UWP)». MSDN. Microsoft. Retrieved 31 July 2015.
- ^ «Move from Windows Runtime 8.x to UWP». Windows Developer Center. Microsoft. Retrieved 31 July 2015.
- ^ «Guide to Universal Windows Platform (UWP) apps». Windows Dev Center. Microsoft. Retrieved 31 July 2015.
- ^ «App packages and deployment (Windows Runtime apps)». Windows Dev Center. Microsoft. Retrieved 8 March 2016.
- ^ Warren, Tom (11 February 2014). «Windows Phone 8.1 includes universal apps and lots of feature updates». The Verge. Vox Media.
- ^ How to Install APPX File on Windows Phone 8.1 Archived April 25, 2015, at the Wayback Machine
- ^ «How To Sideload Modern Apps on Windows 8». How-To Geek.
- ^ Ziegler, Chris (17 May 2012). «Microsoft talks Windows Store features, Metro app sandboxing for Windows 8 developers». The Verge. Vox Media. Retrieved 12 January 2013.
- ^ Rosoff, Matt (9 February 2012). «Here’s Everything You Wanted To Know About Microsoft’s Upcoming iPad Killers». Business Insider. Archived from the original on 22 January 2013. Retrieved 12 January 2013.
External links[edit]
- Index of Windows 10 apps
Универсальная платформа Windows (UWP) – это специальная платформа для создания приложений на Windows 10. Вы можете разрабатывать приложения для UWP с помощью всего одного набора API, одного пакета приложений и одного магазина для доступа ко всем устройствам Windows 10 – ПК, планшета, телефона, Xbox, HoloLens, Surface Hub и других. Легче поддерживать несколько размеров экрана, а также различные модели взаимодействия, будь то сенсор, мышь и клавиатура, игровой контроллер или ручка. В основе приложений UWP лежит идея, что пользователи хотят, чтобы их работа, их задачи были мобильными через ВСЕ устройства, чтобы можно было использовать любое устройство, наиболее удобное или производительное для конкретной задачи.
UWP является гибким: вам не нужно использовать C# и XAML, если вы этого не хотите. Вам нравится развиваться в Unity или MonoGame? Предпочитаете JavaScript? Не проблема, используйте все, что хотите. У вас есть настольное приложение C++, которое вы хотите расширить с помощью функций UWP и продавать в магазине? И тут все будет работать.
В итоге вы можете потратить свое время на работу со знакомыми языками программирования, фреймворками и API-интерфейсами, все в одном проекте, и иметь тот же самый код, который работает на огромном диапазоне оборудования Windows из существующих сегодня. После того, как вы написали свое приложение UWP, вы можете опубликовать его в магазине на обозрение всего мира.
Итак, что такое UWP-приложение?
Что делает приложение UWP особенным? Вот некоторые из характеристик, которые отличают приложения UWP в Windows 10.
- Существует общая среда API для всех устройств
Основа API-интерфейсов универсальной платформы Windows (UWP) одинакова для всех классов устройства Windows. Если ваше приложение использует только основные API-интерфейсы, оно будет запускаться на любом устройстве Windows 10, независимо от того, планируете ли вы использование настольного ПК, гарнитуры Xbox или наушников Mixed Reality.
- Расширение SDK позволяет вашему приложению делать классные вещи на определенных типах устройств
Расширение SDK добавляет специализированные API для каждого класса устройства. Например, если ваше приложение UWP нацелено на HoloLens, вы можете добавить функции HoloLens в дополнение к обычным API-интерфейсам UWP. Если вы используете универсальные API-интерфейсы, ваш пакет приложений может работать на всех устройствах, работающих под управлением Windows 10. Но если вы хотите, чтобы ваше приложение UWP использовало API-интерфейсы устройства тогда, когда оно работает на определенном классе устройства, вы можете проверить, существует ли API до его вызова во время выполнения.
- Приложения упакованы с использованием формата упаковки .AppX и распространяются из магазина
Все приложения UWP распространяются как пакет AppX. Это обеспечивает надежный механизм установки и гарантирует, что ваши приложения могут быть развернуты и обновлены без проблем.
- Одно хранилище для всех устройств
После регистрации в качестве разработчика приложений вы можете отправить свое приложение в магазин и сделать его доступным для всех типов устройств или только тех, какие вы выберете. Вы загружаете и управляете всеми своими приложениями для устройств Windows в одном месте.
- Приложения поддерживают адаптивные элементы управления и ввода
Элементы пользовательского интерфейса используют эффективные пиксели, поэтому они могут отображать макет в зависимости от количества пикселей экрана, доступных на устройстве. И они хорошо работают с несколькими типами ввода, такими как клавиатура, мышь, сенсорный экран, ручка и контроллеры Xbox One. Если вам нужно дополнительно адаптировать свой пользовательский интерфейс к определенному размеру экрана или устройству, новые панели макетов и инструменты помогут вам в этом.
Используйте язык, который вы уже знаете
Приложения UWP используют Windows Runtime, собственный API, встроенный в операционную систему. Этот API реализован на C++ и поддерживается на C#, Visual Basic, C++ и JavaScript. Некоторые варианты написания приложений в UWP включают:
Видео курсы по схожей тематике:
- XAML UI и C#, VB или C++ backend
- DirectX UI и C++ backend
- JavaScript и HTML
Microsoft Visual Studio 2017 предоставляет шаблон приложения UWP для каждого языка, который позволяет вам создать единый проект для всех устройств. Когда ваша работа будет завершена, вы можете создать пакет приложений и отправить его в Windows Store из Visual Studio, чтобы сделать ваше приложение доступным для клиентов на любом устройстве Windows 10.
Приложения UWP оживают в Windows
В Windows ваше приложение может предоставлять актуальную информацию в режиме реального времени вашим пользователям и заставлять их возвращаться снова. В современной экономике приложений ваше приложение должно участвовать в жизни ваших пользователей. Windows предоставляет вам множество ресурсов, чтобы помочь вашим пользователям вернуться в ваше приложение:
- Живые фрагменты и экран блокировки отображают контекстно-зависимую и своевременную информацию.
- Push-уведомления приносят сигналы в реальном времени, отправляя предупреждения вашему пользователю, когда это необходимо.
- Центр действий – это место, где вы можете организовывать и отображать уведомления и контент, на которые пользователи должны обратить внимание.
- Background — исполнение и триггеры оживляют ваше приложение, когда пользователю это нужно.
- В вашем приложении могут использоваться голосовые и Bluetooth-устройства LE, чтобы помочь пользователям взаимодействовать с окружающим миром.
- Поддержка богатых, цифровых чернил и инновационного набора.
- Cortana добавляет индивидуальность вашему программному обеспечению.
- XAML предоставляет вам инструменты для создания плавных анимированных пользовательских интерфейсов.
Наконец, вы можете использовать данные о роуминге и Windows Credential Locker, чтобы обеспечить постоянный роуминг на всех экранах Windows, где пользователи запускают ваше приложение. Данные о роуминге дают вам простой способ сохранить пользовательские настройки и настройки в облаке, не создавая собственную инфраструктуру синхронизации. И вы можете хранить учетные данные пользователя в хранилище учетных данных, где безопасность и надежность являются главным приоритетом.
Монетизируйте ваше приложение
В Windows вы можете выбрать, как вы будете монетизировать свои приложения на телефонах, планшетах, ПК и других устройствах. Вот несколько способов заработать деньги с помощью вашего приложения и услуг, которые оно предоставляет. Все, что вам нужно сделать, это выбрать то, что лучше подходит для вас:
Бесплатные вебинары по схожей тематике:
- Платная загрузка – это самый простой вариант. Просто назовите цену.
- Система нескольких пробных попыток позволит пользователям оценить ваше приложение перед его покупкой. Это обеспечит более легкую конверсию, чем более традиционные варианты «freemium».
- Используйте скидки для привлечения внимания к своим приложениям.
- Также доступны покупки и реклама в приложении.
Как начать?
Более подробный обзор UWP читайте в официальном Руководстве по приложениям для универсальной платформы Windows. Затем ознакомьтесь с настройкой Get set up, чтобы загрузить инструменты, необходимые для начала создания приложений, и напишите свое первое приложение!
Источник.
Что такое Universal Windows Platform
Последнее обновление: 12.04.2017
UWP (Universal Windows Platform) представляет собой унифицированную платформу для создания и запуска приложений в Windows 10 и Windows 10 Mobile.
UWP стала результатом эволюции более ранних технологий. Так, с выходом Windows 8 была внедрена новая архитектурная платформа для приложений — Windows Runtime (WinRT), которая позволяла запускать приложения в так называемом режиме Modern (Metro) на десктопах, планшетах.
Затем с выходом Windows 8.1 и Windows Phone 8.1 эта технология получила развитие — появились «универсальные приложения», которые можно было запускать сразу Windows 8.1 и WP8.1.
И в июле 2015 года официально вышла новая ОС Windows 10. Она использует платформу UWP, которая представляет собой развитие Windows Runtime.
Как подсказывает название платформы, она является универсальной — универсальной для всех устройств экосистемы Windows 10. А это обычные дестопы, планшеты,
мобильные устройства, устройства IoT (интернет вещей), Xbox, устройства Surface Hub. И приложение UWP может одинаково работать на всех этих платформах, если на них установлена Windows 10.
Почему UWP?
Программирование под UWP несет ряд преимуществ:
-
Широта распространения. На текущий момент (апрель 2017) Windows 10 установлена уже более чем на 400 миллионах устройств.
На десктопах Windows 10 уже опередила Windows 8/8.1. -
Поддержка широкого круга устройств. Десктопы, планшеты, смартфоны, большие планшеты Surface Hub, различные IoT-устройства, в перспективе устройства виртуальной реальности
HoloLens — круг устрйоств, на которых может работать Windows 10 действительно широк. -
Поддержка разных языков и технологий программирования. UWP-приложения можно создавать с помощью таких языков, как
Visual C++, C#, Visual Basic, JavaScript. В качестве технологии для создания графического интерфейса Visual C++, C# и Visual Basic используют XAML,
JavaScript применяет HTML. Кроме того, С++ может вместо XAML использовать DirectX. То есть достаточно распространенные и и знакомые многим технологии. -
Магазин приложений и удобство распространения. Windows Store представляет собой прекрасное место для распространения
UWP-приложений, как платных, так и бесплатных. Сами возможности платформы и магазина Windows Store позволяют использовать разные способы монетизации.
Например, можно интегрировать в приложения блоки для показа рекламы через различные SDK. Можно распространять за определенную плату, причем оплату можно гибко настраивать.
При необходимости можно встроить предоставление ознакомительной версии, после использования которой пользователь может решить, покупать приложение или нет.
И также можно монетизировать по модели freemium, при которой приложение условно бесплатное, а отдельные услуги внутри приложения предоставляются за определенную плату.
Причем все эти возможности монетизации обесечиваются встроенными инструментами SDK. -
Богатые возможности платформы. UWP многое наследует от Windows Runtime из Windows 8.1 и в то же время предоставляет много новых функцональностей, как,
более богатые возможности по интеграции с облаком, использование Cortana, системы уведомлений в Win10 и многое другое.
Что необходимо для разработки под UWP
Для программирования под UWP необходима ОС Windows 10. Все другие операционные системы, как Windows 8.1/8/7, не говоря уже о Windows XP, не подходят!
Также потребуется среда разработки Visual Studio 2017 Community. Это полнофункциональная бесплатная среда разработки, которую можно загрузить с официального сайта
по адресу https://www.visualstudio.com/downloads/download-visual-studio-vs.
Также можно использовать версию VS 2015, а все остальные предыдущие версии Visual Studio — 2013, 2012, 2010 и т.д. с UWP не работают.
При установке Visual Studio 2017 в программе установщика необходимо отметить соответствующий пункт:
Перед чем как начать создание приложений, убедитесь, что в центре обновления в Windows 10 установлена соответствующая опция для разработчиков:
И имея Windows 10 и установленную Visual Studio 2017, можно приступать к разработке приложений.
Чтобы программы могли корректно взаимодействовать с операционной системой, для этих программ нужна SDK, по которой они будут работать. UWP решает эту задачу, а также решает множество других проблем Windows.
В Windows сейчас хаос. Приложения можно писать на нескольких фреймворках:
- Win32Api
- .Net
- .Net (UWP)
По сути Win32Api не является фреймворком, а приложения написаны на «неуправляемом» коде, с максимально близким доступом к ОС. Win32Api это лишь набор функций + обертка для точки входа в приложение.
Приложения .Net Framework уже работают по другому принципу, запускаясь в своей «виртуальной машине». К сожалению, такие приложения платформозависимые.
UWP приложения пошли дальше. Кроме расширенного SDK, с доступом к магазину Windows, такие приложения теоретически могут работать на всех платформах Windows и на архитектурах, как x86, так и ARM.
При этом нельзя просто взять и использовать все возможности UWP для старых .Net приложений. Их нужно перекомпилировать с использованием технологии Windows Bridge.
Что хотят в Microsoft?
По моему мнению, Microsoft проспала момент с продажей и рекламой приложений через интернет, но конкуренты в лице Apple и Google не дремлют. У macOS есть удобный магазин, такой же магазин есть и у Google Android. Представьте, если бы вам пришлось приложения для смартфона искать по разным сайтам. Удобно ли это? Вряд ли.
Microsoft хотят сделать тоже самое. Дать возможность людям скачивать приложения прямо из магазина Windows.
Но почему бы не сделать это для всех старых приложений? Я не знаю. Я думаю, все эти приложения не поддаются какому-либо контролю, имеют сотни инсталляторов и пишут свои файлы во все места ОС. С UWP все эти проблемы решаются. Хотя они могли бы попытаться это сделать. Тогда была бы полная победа Windows.
Правда Microsoft делают это крайне медленно. Даже в Windows 10 большая часть приложений не являются UWP. А те приложения, которые являются UWP, выглядят немного чужеродно. Все знают про две панели управления, два калькулятора и так далее.
Microsoft своими вялыми действиями не подталкивают серьезных разработчиков к созданию UWP приложений или портированию уже существующих. Результаты бездействия мы можем наблюдать в магазине:
В магазине Windows 10 в основном представлен один «шлак». Серьезные компании не стремятся переводить свои продукты на UWP.
Почему текущий подход к написанию приложений должен умереть?
1) Неконтролируемый доступ к железу.
Win32 и .Net приложения имеют неконтролируемый доступ к железу, в частности к Bluetooth, вебкамере, микрофону и другим приложениям. Вас могут записывать, а вы не узнаете про это. Да, эту проблему решают антивирусы. Но в нормальной системе их не должно быть. Операционная система сама должна уметь себя защищать.
UWP частично решает эту проблему, разграничивая права пользователей. Этот подход был полностью скопирован с Google Android и macOS/iPhone.
Настроить доступ к железу можно в Параметрах — Конфиденциальность. Правда это актуально только для UWP приложений:
Если система может ограничивать доступ приложения к определенным компонентам железа или операционной системы, то мы можем увидеть список разрешений:
Тут я побуду адвокатом Windows 10, которую часто обвиняют в шпионаже. Как мне кажется, Windows 10 наоборот, пытается защитить ваши данные, разграничивая права приложений. Хотя тут можно сказать, что они просто не хотят с этими данными делиться
И если вы установили приложение, а оно начнет рассылать СМСки, то уж сами виноваты. Магазин вас предупредил. Сейчас мы устанавливаем любое приложение Windows на свой страх и риск. Оно может собирать любые данные с компьютера, а мы даже не узнаем об этом. Но здесь Microsoft наступила на грабли, сделав пункт: разрешить полный доступ ко всем компонентам Windows. И разработчики ставят этот пункт, особо не разбираясь, что к чему. Например, этим страдает Telegram.
2) Приложения написаны с использованием разных технологий.
В нормальной системе приложения написаны с помощью единых инструментов. К примеру, для Android это Java + Android SDK. Нет, есть конечно ненормальные, которые пишут приложения на Qt / C# / HTML5 приложения для Android, но внутри они всё равно используют Android SDK. Без него никуда.
Microsoft хочет тоже самое. Они хотят получать единую платформу, единые инструменты разработчика. Ведь для этого практически всё есть: отличный язык программирования C# и отличная платформа .Net Framework.
Что даст переход на UWP?
Переход на UWP даст более тесную интеграцию с системой, можно будет использовать уведомления на полную мощность, обмениваться данными между приложениями. Писать приложения под все платформы, при этом ядро приложения будет единым.
В .Net Framework есть удобный Properties.Settings, все настройки приложения будут храниться в одном месте, не засоряя реестр. При удалении приложения, всё файлы удалит операционная система, а не сторонний инсталлятор.
UWP (Universal Windows Platform) – это платформа разработки приложений для операционной системы Windows 10, которая позволяет создавать универсальные приложения, способные работать на различных устройствах под управлением Windows 10. Это означает, что разработчик может создать приложение для одного типа устройства и оно будет автоматически адаптироваться для работы на других устройствах, таких как ПК, планшеты, смартфоны, Xbox и т. д.
UWP предоставляет разработчикам широкий набор инструментов и API для создания функциональных и красивых приложений с кросс-платформенной совместимостью. С его помощью можно создавать не только традиционные десктопные приложения, но и приложения с полноценным интерфейсом для сенсорных устройств, игры, универсальные приложения для работы в интернете, мультимедийные приложения и многое другое.
Основной преимущество UWP заключается в возможности доставлять приложения через Windows Store. Это позволяет разработчикам быстро и легко распространять свои приложения и получать доход от продажи или использовать модель «фремиум» для монетизации своих приложений. Кроме того, приложения, созданные с использованием UWP, имеют доступ к множеству интегрированных функций Windows 10, таких как центр уведомлений, Cortana, календарь, камера, геолокация и другие, что расширяет возможности приложений и делает их более интегрированными с операционной системой.
Содержание
- UWP: универсальная платформа Windows
- Предоставленные возможности
- Возможности для разработчиков
- Преимущества для пользователей
- Будущее UWP
UWP: универсальная платформа Windows
UWP является эволюцией Windows Runtime (WinRT) API, который был введен в Windows 8. Платформа UWP предоставляет разработчикам богатый инструментарий и средства для создания современных, функциональных и адаптивных приложений для Windows.
Преимущества UWP включают в себя:
- Универсальность: Приложения, разработанные для UWP, могут работать на различных устройствах, не требуя дополнительных усилий для адаптации. Это позволяет достичь большей аудитории и увеличить охват пользователей.
- Общая кодовая база: Разработчики могут использовать общую кодовую базу для создания приложений для разных устройств. Это упрощает и ускоряет процесс разработки и снижает затраты на поддержку приложений.
- Адаптивный интерфейс: UWP позволяет создавать адаптивные пользовательские интерфейсы, которые могут автоматически настраиваться и адаптироваться под разное разрешение экрана, ориентацию устройства и его возможности.
- Безопасность и доступность: Приложения UWP запускаются в изолированном контейнере, что повышает безопасность системы и защищает пользователей от нежелательного влияния приложений. Кроме того, UWP предоставляет API и инструменты для создания доступных приложений.
UWP обеспечивает разработчикам гибкость, масштабируемость и надежность, что позволяет создавать инновационные и эффективные приложения для широкого спектра устройств под управлением Windows 10. Благодаря этому, платформа UWP считается основой для будущих приложений Windows и играет важную роль в стратегии Microsoft для создания единой платформы для всех устройств Windows.
Предоставленные возможности
UWP (Universal Windows Platform) предоставляет разработчикам широкий набор инструментов для создания приложений, которые могут работать на разных устройствах под управлением операционных систем Windows 10, включая персональные компьютеры, планшеты, смартфоны, игровые приставки и другие устройства с поддержкой Windows 10.
Вот некоторые из возможностей, предоставляемых UWP:
- Адаптивный дизайн: UWP позволяет создавать приложения с адаптивным дизайном, что означает, что они будут хорошо выглядеть и работать на разных устройствах с разными разрешениями экрана и размерами.
- Единая платформа: UWP предоставляет единую платформу для разработки приложений, что упрощает процесс их создания и позволяет быстро выпускать обновления.
- Нативная интеграция с Windows: Приложения, созданные с использованием UWP, могут в полной мере использовать возможности операционной системы Windows, включая доступ к файловой системе, уведомлениям, камере, голосовому вводу и другим функциям.
- Использование общих компонентов: UWP позволяет использовать общие компоненты и библиотеки, что помогает повысить эффективность разработки и обеспечить единообразие между приложениями.
- Доступ к новым функциям: UWP предоставляет доступ к новым функциям операционной системы Windows 10, таким как Cortana, Windows Hello, Ink и другие.
- Магазин приложений: Приложения, разработанные с использованием UWP, могут быть опубликованы в Магазине Windows, что упрощает их распространение и монетизацию.
Это только некоторые из возможностей, предоставляемых UWP. Он дает разработчикам мощный инструментарий для создания современных и универсальных приложений для платформы Windows 10.
Возможности для разработчиков
UWP (Universal Windows Platform) предоставляет разработчикам широкий набор возможностей для создания кросс-платформенных приложений для устройств под управлением операционной системы Windows. Вот некоторые из главных возможностей, которые UWP предоставляет разработчикам:
- Единая платформа: UWP позволяет разработчикам создавать одно приложение, которое будет работать на разных типах устройств, таких как компьютеры, планшеты, смартфоны, игровые приставки и контактные экраны.
- Универсальные API: UWP предоставляет единые API (Application Programming Interface) для работы с различными функциями устройств, такими как доступ к камере, сенсорам, голосовому вводу, биометрическим данным и другим.
- Адаптивный дизайн: UWP позволяет разработчикам создавать адаптивные пользовательские интерфейсы, которые могут автоматически адаптироваться под разные размеры экранов и разрешения устройств.
- Расширенная безопасность: UWP предоставляет различные механизмы для обеспечения безопасности приложений, включая автоматическую проверку подлинности и авторизацию, безопасное хранение данных и обеспечение приватности пользователей.
- Сетевая интеграция: UWP позволяет приложениям работать с сетевыми устройствами и сервисами, такими как облачное хранение, медиа-стеки, веб-сервисы и другими.
- Обновления через Windows Store: UWP приложения могут быть обновлены автоматически через Windows Store, что обеспечивает простоту и безопасность процесса обновления.
Эти возможности делают UWP привлекательной платформой для разработчиков, позволяя им создавать высококачественные, кросс-платформенные приложения для широкого круга устройств под управлением Windows.
Преимущества для пользователей
UWP (Universal Windows Platform) предоставляет ряд преимуществ для пользователей операционных систем Windows:
- Единый интерфейс: Приложения, созданные для UWP, имеют единый интерфейс на всех устройствах поддерживающих UWP, что облегчает пользователю работу с разными устройствами.
- Адаптивность и отзывчивость: UWP позволяет разработчикам создавать адаптивные пользовательские интерфейсы, которые могут автоматически меняться в зависимости от размера экрана или ориентации устройства. Это обеспечивает отличный пользовательский опыт.
- Высокая безопасность: Приложения UWP используют контейнеризацию, что позволяет им работать в изолированной среде. Это гарантирует безопасность пользовательских данных и защищает от вредоносного ПО.
- Удобный доступ к приложениям: UWP поддерживает различные способы распространения приложений, такие как установка из Microsoft Store, а также автоматическое обновление приложений.
- Интеграция с Windows: Приложения UWP могут интегрироваться с другими приложениями, как из Microsoft, так и сторонних разработчиков. Это позволяет пользователям обмениваться данными и использовать разные сервисы, удовлетворяя их потребности.
Будущее UWP
UWP (Universal Windows Platform) представляет собой универсальную платформу разработки приложений для всех устройств под управлением операционной системы Windows 10. Универсальность UWP заключается в том, что приложения, разработанные с использованием этой платформы, могут работать на компьютерах, планшетах, смартфонах, игровых приставках и других устройствах под управлением Windows 10, позволяя создавать мощные и гибкие приложения.
Будущее UWP весьма перспективно. Благодаря своей универсальности, платформа UWP предоставляет разработчикам возможность создавать приложения, которые могут быть запущены на всех устройствах с Windows 10, без необходимости изменения кода. Это существенно упрощает процесс разработки и поддержки приложений.
Универсальные приложения UWP могут использовать множество возможностей и API, предоставляемых операционной системой Windows 10, включая доступ к периферийным устройствам, интеграцию с встроенными службами, использование сенсорного ввода, доступ к базе данных и многое другое. Это позволяет разработчикам создавать функциональные и инновационные приложения, способные эффективно использовать все возможности устройств, на которых они запускаются.
Будущее UWP означает также развитие экосистемы Windows 10, включая магазин приложений Microsoft Store. Разработчики приложений UWP могут легко публиковать свои продукты в магазине, предоставляя доступ к своим приложениям миллионам пользователей Windows 10 со всего мира. Это открывает новые возможности для монетизации приложений и достижения большей аудитории.
Итак, будущее UWP обещает быть светлым. Платформа продолжает развиваться и совершенствоваться, предоставляя разработчикам все больше возможностей для создания универсальных и инновационных приложений, которые способны работать на всех устройствах с Windows 10. Разработчики и пользователи могут ожидать появления новых интересных приложений, а экосистема Windows 10 будет продолжать расти и развиваться, создавая новые возможности и перспективы для всех.