Встраивание веб-интерфейсов в приложения Windows с помощью WebView2
Microsoft Edge WebView2, от корпорации Microsoft, является контролем разработчика, который встраивает веб-интерфейсы в нативные приложения Windows для обеспечения гибридных пользовательских интерфейсов. Он отображает HTML, CSS и JavaScript внутри хост-процессов, позволяя хосту и веб-контенту обмениваться сообщениями. Варианты распространения включают автоматические обновления времени выполнения или развертывание фиксированной версии для контроля совместимости. Инструмент предназначен для разработчиков настольных приложений Windows, которые хотят повторно использовать веб-ресурсы в нативных Win32 или .NET рабочих процессах.
Время выполнения использует движок Microsoft Edge (Chromium) и работает как отдельные процессы
Элемент управления работает на основе Chromium и отделен от браузера Microsoft Edge, используя движок рендеринга Microsoft Edge (Chromium) для отображения современного веб-контента. Процесс msedgewebview2.exe представляет собой среду выполнения WebView2, и элемент управления следует многопроцессной архитектуре, которая обычно включает управляющий процесс, процесс GPU и отдельные процессы рендерера для веб-компонентов. Это разделение процессов соответствует модели изоляции Chromium.
С какими стековыми решениями и рабочими процессами интегрируется элемент управления
WebView2 нацелен на стек разработки для настольных приложений и интегрируется с нативными инструментами. Поддерживаемые хосты и фреймворки включают:
- Win32 C/C++
- .NET (WPF и WinForms)
- WinUI
Компромиссы по производительности и развертыванию, которые команды должны учитывать
Поскольку пользователи иногда сообщают о высоком использовании памяти и ЦП, связанном с экземплярами msedgewebview2.exe в сторонних приложениях, разработчики должны планировать профилирование и изоляцию тяжелых веб-модулей. Профилирование процессов рендерера и размещение ресурсоемких виджетов в отдельных экземплярах WebView снижает конкуренцию. Время выполнения является компонентом, отличным от полного браузера, поэтому его удаление может привести к тому, что зависимые приложения не смогут отобразить свой интерфейс; рассматривайте время выполнения как развертываемый артефакт во время тестирования и развертывания.
WebView2 является практичным выбором для гибридной разработки настольных приложений Windows
WebView2 является практичным вариантом для разработчиков настольных приложений Windows, которым необходимо встраивать веб-ориентированные интерфейсы в нативные процессы. Ожидайте компромисса, так как экземпляры msedgewebview2.exe могут повышать использование памяти и процессора в некоторых развертываниях. Команды, которые закладывают бюджет на тестирование для профилирования рендереров и операционного мониторинга во время развертывания, получат наибольшую выгоду от контроля при развертывании гибридных стратегий пользовательского интерфейса в производственные настольные приложения.