Документация по универсальной платформе Windows
Универсальная платформа Windows (UWP) позволяет создавать приложения для любых устройств с Windows — компьютеров, Xbox One, HoloLens и т. д. — и публиковать их в Store.
Не знакомы с UWP?
Начало работы
- Основные сведения о разработке для UWP
- Начало создания приложения UWP
Концепция
Обучение
- Обзор курсов по Windows на сайте Microsoft Learn
- Что такое приложение UWP?
Новейшие компоненты
Новое
- Новейшие функции UWP
- Специальные функции Windows 10
Концепция
- Последние изменения в языке C#
- Новые возможности в Visual Studio
Разработка
Общие сведения
- Создание приложений UWP для Windows 10
- Создание игр UWP для Xbox и Windows 10
Ссылка
- Справочные материалы по API для UWP
- Примеры кода для Windows
Скачать
Проект
Общие сведения
Ссылка
Публикация
Общие сведения
- Публикация приложения в Microsoft Store
- Упаковка и развертывание приложения с помощью MSIX
Концепция
Сообщество и поддержка
Общие сведения
- @WindowsDocs в Twitter
- OneDevMinute на YouTube
- Поддержка разработчиков для Windows
Значок отказа согласно Закону Калифорнии о защите конфиденциальности потребителей (CCPA)
- Светлая
- Темная
- Высокая контрастность
- Предыдущие версии
- Блог
- Участие в доработке
- Конфиденциальность
- Условия использования
- Товарные знаки
- © Microsoft 2024
Значок отказа согласно Закону Калифорнии о защите конфиденциальности потребителей (CCPA)
- Светлая
- Темная
- Высокая контрастность
- Предыдущие версии
- Блог
- Участие в доработке
- Конфиденциальность
- Условия использования
- Товарные знаки
- © Microsoft 2024
Uwp приложения что это
Желаете заказать разработку приложения для ваших нужд?
Опишите вашу идею разработчику на почту admin@uwp-apps.ru.
О платформе
Приложение UWP — это решение для Windows, основанное на универсальной платформе Windows (UWP), которая была впервые представлена в Windows 8 как среда выполнения Windows. В основе концепции приложений UWP лежит предположение о том, что пользователи хотят иметь возможность работать с приложениями на всех своих устройствах (компьютер, планшет, телефон, Xbox, HoloLens, Surface Hub и др.), выбирая для выполнения той или иной задачи наиболее удобное или производительное устройство.
Введение в UWP
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, можно приступать к разработке приложений.
Что такое приложение UWP?
UWP — это один из многих способов создания клиентских приложений для Windows. Приложения UWP используют API WinRT для предоставления мощных пользовательских интерфейсов и расширенных асинхронных функций, которые идеально подходят для устройств, подключенных к Интернету.
Чтобы скачать средства, которые вам потребуются при создании приложений для Windows, ознакомьтесь со статьей Установка инструментов для Windows App SDK и приступайте к созданию своего первого приложения.
Какое место принадлежит UWP в истории разработки Майкрософт?
UWP — это один из вариантов создания приложений, которые работают на устройствах Windows 10 и Windows 11 и могут использоваться на других платформах. Приложения UWP могут использовать API Win32 и классы .NET (см. статьи Наборы API для приложений универсальной платформы Windows (UWP), Библиотеки DLL для приложений универсальной платформы Windows (UWP) и Браузер API .NET).
История разработки Майкрософт получила логическое развитие с реализацией UWP — мощного средства для создания клиентских приложений, используемого наряду с такими инициативами, как WinUI, MSIX и Windows App SDK.
Возможности приложения UWP
Основные достоинства приложения UWP.
- Безопасный: приложения UWP объявляют, какие ресурсы устройств и данные они обращаются. Пользователь должен разрешить такой доступ.
- Возможность использовать общий API на всех устройствах под управлением Windows.
- Возможность использования возможностей отдельных устройств и адаптации пользовательского интерфейса к разным размерам экранов, разрешениям и плотностям точек.
- Доступность в Microsoft Store, на всех устройствах (или только тех, которых вы укажете), работающих под управлением Windows 10 или Windows 11. В Microsoft Store предусмотрено несколько способов монетизировать ваше приложение.
- Возможность устанавливаться и удаляться без риска для компьютера или «деградации» ПО.
- Увлекательность: возможность использовать живые плитки, push-уведомления и пользовательские действия, взаимодействующие с временной шкалой Windows и функцией «Продолжить с места остановки» Кортаны, для поддержания интереса пользователей к приложению.
- Программируемая в C#, C++, Visual Basic и JavaScript. Для пользовательского интерфейса можно использовать WinUI, XAML, HTML или DirectX.
Рассмотрим все это более подробно.
Защита
В манифестах приложений UWP объявляются возможности устройства, необходимые приложению, — например, доступ к микрофону, геоданным, веб-камере, USB-устройствам, файлам и т. д. Прежде чем приложение получит доступ к возможности, пользователь должен подтвердить и разрешить такой доступ.
Общая поверхность API для всех устройств
В Windows 10 впервые появилась универсальная платформа Windows (UWP), которая предоставляет общую платформу приложений на любом устройстве, работающем под управлением Windows. Основные API UWP являются одинаковыми на всех устройствах с Windows. Если приложение использует только основные API, оно будет работать на любом устройстве под управлением Windows независимо от того, под какое устройство оно разрабатывалось — ПК, Xbox, гарнитуру смешанной реальности и т. п.
Приложение UWP, написанное на C++/WinRT, имеет доступ к API-интерфейсам Win32, которые входят в состав UWP. Эти API Win32 реализуются всеми устройствами Windows.
Пакеты SDK расширений предоставляют уникальные возможности для конкретных типов устройств
Если вы разрабатываете приложение для универсальных API, такое приложение сможет работать на всех устройствах под управлением Windows 10 или более поздней версии. Но если вы хотите, чтобы ваше приложение UWP могло пользоваться преимуществами API конкретных устройств, это также возможно.
Пакеты SDK расширений позволяют вызывать специализированные API для различных устройств. Например, если ваше приложение UWP предназначено для устройства Интернета вещей, вы можете добавить в свой проект пакет SDK расширения для Интернета вещей, чтобы реализовать функции, характерные для устройств Интернета вещей. См. сведения в разделе Пакеты SDK расширений статьи Программирование с помощью пакетов SDK расширений.
Вы можете написать приложение так, чтобы оно было предназначено для запуска только на устройствах определенного типа, а затем ограничить его распространение в Microsoft Store только этим типом устройств. Или же вы можете реализовать условную проверку на наличие того или иного API во время выполнения и соответствующим образом адаптировать поведение своего приложения. См. сведения в разделе Написание кода статьи Программирование с помощью пакетов SDK расширений.
Адаптивные элементы управления и ввод
Элементы пользовательского интерфейса реагируют на размер и плотность точек экрана, на котором выполняется приложение, и выбирают подходящий масштаб и макет. Приложения UWP хорошо работают с несколькими типами входных данных, таких как клавиатура, мышь, сенсорный ввод, перо и игровые контроллеры. Если нужно дополнительно настроить пользовательский интерфейс в соответствии с определенным размером экрана или типом устройства, новые панели макета и инструменты помогут вам разработать интерфейс, способный адаптироваться к различным устройствам и форм-факторам, на которых может работать ваше приложение.
Windows позволяет ориентировать пользовательский интерфейс на множество устройств с помощью следующих функций:
- Универсальные элементы управления и панели макета помогают оптимизировать пользовательский интерфейс под любое разрешение экрана на конкретном устройстве. Например, такие элементы управления, как кнопки и ползунки, автоматически адаптируются к размеру и плотности точек на экране устройства. Панели макета помогают корректировать компоновку содержимого в зависимости от размера экрана. Адаптивное масштабирование подстраивается под различия в разрешении и DPI на всех устройствах.
- Общая обработка входных данных позволяет получать входные данные с помощью сенсорного ввода, пера, мыши, клавиатуры или игрового контроллера.
- Инструменты помогут разработать вам пользовательский интерфейс, способный адаптироваться под разные разрешения экрана.
Некоторые характеристики пользовательского интерфейса приложения автоматически корректируются под разные устройства. Однако при проектировании пользовательского интерфейса приложения могут потребоваться некоторые изменения в поведении приложения в зависимости от устройства, на котором оно работает. Например, приложению для фотографирования при работе на маленьком наладонном устройстве следует адаптировать свой интерфейс так, чтобы с ним удобно было работать одной рукой. Когда это же приложение для фотографирования запускается на настольном компьютере, пользовательский интерфейс должен адаптироваться так, чтобы использовать дополнительное пространство экрана.
Один магазин для всех устройств.
Благодаря единому магазину ваше приложение будет доступно на любых устройствах Windows — ПК, планшетах, HoloLens, Surface Hub, а также устройствах для Интернета вещей. Вы можете отправить приложение в магазин и сделать его доступным для всех типов устройств или только некоторых из них. Вы отправляете все свои приложения для устройств с ОС Windows и управляете ими централизованно. У вас есть классическое приложение на C++, которое вы хотите модернизировать за счет возможностей UWP и продавать в Microsoft Store? Это тоже возможно.
Приложения UWP интегрируются с Application Insights для получения подробной телеметрии и аналитики, что поможет вам понять предпочтения своих пользователей и усовершенствовать приложения.
Приложения UWP можно упаковывать с использованием MSIX и распространять через Microsoft Store или другими способами. MSIX позволяет обновлять приложения независимо от способа их распространения (см. статью Обновление пакетов приложений, опубликованных не в Store, из кода).
Монетизация приложения
Вы можете выбрать способ монетизации своего приложения. Существует целый ряд способов заработать на своем приложении. Вам нужно только выбрать наиболее подходящий (примеры способов приведены ниже).
- Платное скачивание — самый простой вариант. Просто назовите свою цену.
- Ознакомительные версии позволяют опробовать ваше приложение перед покупкой. Так ваше приложение становится заметнее для пользователей, к тому же это увеличивает процент покупателей от общего числа посетителей по сравнению с более традиционными минимально-бесплатными версиями.
- Скидки и распродажи, которые мотивируют пользователей совершить покупку.
- Покупки в приложении.
Актуальная информация в реальном времени, которая побуждает пользователей вновь и вновь обращаться к приложению
Есть множество способов поддерживать интерес пользователей к приложению UWP.
- Живые плитки и плитки экрана блокировки, на которые выводится краткий обзор актуальной и значимой в определенном контексте информации из приложения.
- Push-уведомления, которые предлагают вниманию пользователей важные оповещения в нужный момент.
- Действия пользователей, которые позволяют им продолжить работу в приложении с того места, где они остановились — даже на другом устройстве.
- Центр уведомлений обеспечивает организацию уведомлений, поступающих из вашего приложения.
- Фоновое выполнение и триггеры позволяют вашему приложению возобновлять работу именно тогда, когда это нужно пользователю.
- Приложение может использовать голосовое управление и устройства Bluetooth LE, чтобы пользователи могли взаимодействовать с окружающим миром.
- Интеграция с Кортаной позволяет добавить в ваше приложение возможности голосового управления.
Использование уже знакомого языка
Приложения UWP могут использовать среду выполнения Windows, то есть собственный API, встроенный в операционную систему. Этот API реализован на языке C++ и поддерживается в C#, Visual Basic, C++ и JavaScript. Некоторые из языков и технологий, пригодных для написания приложений UWP:
- XAML (для пользовательского интерфейса) и C#, VB или C++;
- DirectX (для пользовательского интерфейса) и C++;
- JavaScript и HTML.
- WinUI
Ссылки, которые помогут вам приступить к работе
Настройка
Скачайте средства, необходимые для создания приложений, на странице Get set up (Подготовка), а затем создайте свое первое приложение.
Создание дизайна вашего приложения
Корпорация Майкрософт предоставляет систему проектирования под названием Fluent. Fluent Design — это набор функций UWP в сочетании с рекомендациями по созданию приложений, которые будут прекрасно смотреться на всех типах устройств под управлением Windows. Разработанные с помощью Fluent приложения адаптируются к самым разным устройствам — от планшетов и ноутбуков до ПК и телевизоров, и даже к устройствам виртуальной реальности — и выглядят на них совершенно естественно. Вводные сведения о системе Fluent см. в статье The Fluent Design System for Windows app creators (Система проектирования Fluent для разработчиков приложений Windows).
Хорошее проектирование подразумевает принятие решений о том, как пользователи будут взаимодействовать с приложением, а также как оно будет выглядеть и функционировать. Взаимодействие с пользователем очень сильно повлияет на то, насколько люди будут довольны вашим приложением, так что не пренебрегайте этим шагом. Из статьи Проектирование и разработка приложений для Windows вы узнаете, с чего начинать проектирование универсального приложения для Windows. Ознакомьтесь с вводной статьей об устройствах, которая поможет определить интерфейс взаимодействия вашего приложения на всех форм-факторах, на которые вы ориентируетесь.
Помимо взаимодействия на разных устройствах, проектируйте приложение так, чтобы использовать все преимущества работы на разных устройствах. Например:
- При разработке рабочего процесса учитывайте основы проектирования навигации для приложений UWP, чтобы поддерживать мобильные устройства, большие и маленькие экраны. Продумайте макет пользовательского интерфейса, который изменяется в соответствии с размером и разрешением экрана.
- Подумайте, как вы реализуете прием нескольких типов ввода. Ознакомьтесь с руководством по взаимодействию, чтобы узнать, как пользователи могут взаимодействовать с вашим приложением с помощью Кортаны, службы «Речь», распознавания сенсорного ввода, сенсорной клавиатуры и других возможностей. Или ознакомьтесь с руководством по тексту и текстовому вводу, чтобы узнать больше о традиционных способах взаимодействия.
Добавление служб
- Используйте облачные службы Azure, чтобы выполнять синхронизацию между устройствами.
- Узнайте, как подключаться к веб-службам для улучшения взаимодействия с приложением.
- Включите в свой план push-уведомления и покупки из приложений. Эти функции должны работать на всех устройствах.
Отправьте приложение в Store.
Центр партнеров позволяет централизованно управлять всеми приложениями и держать в одном месте все приложения для устройств Windows. См. статью Публикация приложений и игр для Windows, чтобы узнать, как отправлять приложения в Microsoft Store для публикации.
Новые возможности упрощают процессы, обеспечивая больший контроль с вашей стороны. Вы также найдете здесь подробные аналитические отчеты вместе с сведениями о выплатах, способами продвижения вашего приложения среди пользователей и многие другие сведения.
Подробные вводные сведения см. в статье Windows 10 — An Introduction to Building Windows Apps for Windows 10 Devices (Вводные сведения о создании приложений для Windows для устройств с Windows 10).
Более сложные темы
- Узнайте, как использовать действия пользователей для отображения действий, выполняемых пользователями в вашем приложении, на временной шкале Windows и в функции «Продолжить с места остановки» Кортаны.
- Узнайте, как использовать плитки, индикаторы событий и уведомления для приложений UWP.
- Полный список API-интерфейсов Win32, доступных для приложений UWP, можно найти в статьях Наборы API-интерфейсов для приложений UWP и Библиотеки DLL для приложений UWP.
- В статье Universal Windows apps in .NET (Универсальные приложения для Windows в .NET) вы найдете общие сведения о написании приложений UWP для .NET.
- Список типов .NET, которые можно использовать в приложении UWP, см. в статье Браузер API .NET
- Компиляция приложений с помощью .NET Native.
- Узнайте, как добавить в существующее классическое приложение современные способы взаимодействия, ориентированные на пользователей Windows, и распространять его через Microsoft Store с помощью моста для классических приложений.
Сопоставление универсальной платформы Windows (UWP) и API времени выполнения Windows
Если вы разрабатываете приложение для универсальной платформы Windows (UWP), вам будет намного проще и удобнее считать термины «Универсальная платформа Windows» и «Среда выполнения Windows (WinRT)» почти синонимами. Но у вас есть возможность заглянуть «под капот» этих технологий и определить различия между концепциями. Если вам это интересно, то этот последний раздел написан именно для вас.
Среда выполнения Windows и API-интерфейсы WinRT развиваются на основе API-интерфейсов Windows. Первоначально Windows программировалась через плоские API Win32 в стиле C. Поверх них были добавлены API-интерфейсы COM (из которых самым ярким примером можно считать DirectX). Windows Forms, WPF, .NET и управляемые языки привнесли собственные способы написания приложений Windows и специфичные технологии API. Среда выполнения Windows фактически является следующим этапом развития модели COM. На уровне двоичного интерфейса (ABI) родственные связи с COM становятся очевидными. Однако среда выполнения Windows была разработана так, чтобы ее можно было вызывать из большого числа разных языков программирования. Эти вызовы совершаются самым естественным способом для каждого из этих языков. Поэтому доступ к среде выполнения Windows реализован через особый механизм языковых проекций. Существуют языковые проекции среды выполнения Windows для C#, Visual Basic, стандартного C++, JavaScript и т. д. Кроме того, после упаковки соответствующим образом (см. мост для классических приложений), вы можете вызывать API WinRT из приложения, встроенного в один из различных моделей приложений: Win32, .NET, WinForms и WPF.
И, само собой, API-интерфейсы WinRT можно вызвать из приложения UWP. Модель приложения UWP создана на основе среды выполнения Windows. С технической точки зрения модель приложения UWP основана на CoreApplication, но некоторые подробности могут быть недоступны в зависимости от выбора языка программирования. Как описано в этом разделе, с точки зрения ценности платформа UWP предназначена для создания единого двоичного файла, который вы сможете при желании опубликовать в Microsoft Store и запустить на любых устройствах самых разных форм-факторов. Охват устройств для приложений UWP зависит от API среды выполнения Windows, которые может вызывать приложение или которые вы можете вызывать условно.
Мы надеемся, что смогли описать в этом разделе разницу между базовыми технологиями API среды выполнения Windows и механизмом и ценностью универсальной платформы Windows.
Обратная связь
Были ли сведения на этой странице полезными?