Открыть сервисСервис

WebView2 — браузерный движок Microsoft

WebView2 — это компонент Microsoft, предоставляющий веб-браузерный движок Chromium в виде элемента управления (control), который может быть встроен в настольные приложения Windows. Он позволяет разработчикам отображать и интерактивно использовать веб-контент (HTML, CSS, JavaScript) внутри нативных приложений Windows, не создавая собственный браузерный движок. Основан на браузере Microsoft Edge, построенном на движке Chromium.

История и контекст

До появления WebView2 стандартным средством встраивания веб-контента в Windows-приложения был Internet Explorer — компонент WebBrowser Control, основанный на движке MSHTML ( Trident). Этот движок устарел, не поддерживал современные веб-стандарты и создавал проблемы совместимости с актуальными сайтами и веб-приложениями.

В 2020 году Microsoft представила WebView2 как замену устаревшему WebBrowser Control. Технология построена на базе Microsoft Edge на движке Chromium, который Microsoft перевела на этот движок в 2019–2020 годах. WebView2 использует ту же рантайм-среду, что и установленный в системе Microsoft Edge, поэтому не требует отдельной поставки браузерного движка в составе приложения.

Технические особенности

WebView2 поставляется в виде «WebView2 Runtime» — отдельного компонента, который может быть предустановлен в Windows или установлен на компьютер пользователя. Начиная с определённых сборок Windows 10 и Windows 11, рантайм предустановлен в системе.

Технология предоставляет API для нескольких платформенных моделей:

  • Win32 (C/C++) — нативный интерфейс;
  • .NET (WPF, WinForms) — управляемые обёртки;
  • .NET MAUI / WinUI 3 — интеграция с современными UI-фреймворками Microsoft.

Основные возможности включают:

  • навигацию по URL и загрузку локальных HTML-файлов;
  • выполнение JavaScript из кода приложения и обратный вызов нативного кода из JavaScript;
  • доступ к cookies, localStorage, кэшу;
  • перехват навигации и запросов;
  • интеграцию с системными диалогами, уведомлениями, геолокацией;
  • поддержку современных веб-стандартов, совместимых с Chromium.

Схемы распределения (distribution modes)

Microsoft предлагает несколько схем установки WebView2 Runtime:

  • Evergreen — рантайм автоматически обновляется через Windows Update, приложение всегда работает с актуальной версией движка (по умолчанию);
  • Fixed Version — конкретная версия рантайма поставляется вместе с приложением, обновляется разработчиком; подходит для изолированных сред без доступа к интернету.

Применение

WebView2 широко используется в настольной экосистеме Windows:

  • Microsoft Teams (классическое настольное приложение) — интерфейс построен на WebView2;
  • Microsoft Edge — сам браузер использует аналогичную архитектуру, но WebView2 — это именно компонент для встраивания;
  • Visual Studio, Windows Terminal, Outlook и ряд других продуктов Microsoft используют WebView2 для отображения веб-содержимого;
  • сторонние корпоративные приложения — для отображения справочной информации, дашбордов, веб-порталов внутри нативной оболочки.

Типичный сценарий — гибридное приложение: нативная оболочка Windows (с доступом к файловой системе, реестру, системным API) плюс веб-интерфейс, написанный на HTML/CSS/JavaScript. Такой подход позволяет использовать веб-технологии для UI, сохраняя доступ к возможностям ОС.

Сравнение с альтернативами

КомпонентДвижокПлатформаСтатус
WebView2Chromium (Edge)WindowsАктуален, развивается
WebBrowser Control (MSHTML)TridentWindowsУстарел
WKWebViewWebKitmacOS, iOSАктуален
Android WebViewChromiumAndroidАктуален
Qt WebEngineChromiumКроссплатформенныйАктуален

В экосистеме Windows WebView2 стал фактическим стандартом для встраивания веб-контента, вытеснив устаревший WebBrowser Control. Для кроссплатформенных проектов разработчики часто используют Qt WebEngine или собственные сборки Chromium (например, в Electron).

Особенности разработки

При работе с WebView2 учитываются следующие моменты:

  • приложение должно проверять наличие WebView2 Runtime в системе и при необходимости инициировать установку;
  • доступ к JavaScript возможен как через выполнение скриптов, так и через привязку (binding) нативных объектов к глобальному контексту страницы;
  • безопасность обеспечивается механизмом изоляции: веб-контент выполняется в отдельном процессе (browser process model), что снижает риски компрометации основного приложения;
  • поддерживается профилирование и отладка через стандартные инструменты Chromium DevTools.

Значение

WebView2 закрепил для Windows модель «веб внутри нативного приложения», предложив современный, регулярно обновляемый движок и стабильный API. Для корпоративной разработки в Windows это означает возможность быстро создавать интерфейсы на веб-технологиях без перехода на полностью веб-ориентированные платформы вроде Electron, сохраняя при этом нативную производительность и интеграцию с ОС.

Источники:

  • Документация Microsoft WebView2 (learn.microsoft.com)
  • Microsoft Edge Developer documentation
  • Release notes WebView2 Runtime (Microsoft)
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru