Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Мы рекомендуем следовать следующим рекомендациям по разработке производственных приложений WebView2.
Использование актуальной среды выполнения WebView2
Для большинства приложений WebView2 рекомендуется использовать актуальную среду выполнения WebView2 вместо среды выполнения несъемной версии.
Актуальная среда выполнения автоматически обновляется на клиенте, чтобы последние функции и исправления безопасности были доступны для вашего приложения WebView2. Актуальная среда выполнения также требует меньше места на диске, чем среда выполнения неизменяемой версии. Распространение неизменяемой версии во время выполнения рекомендуется только для приложений со строгими требованиями к совместимости.
См. Всегда актуальная или исправленная версия среды выполнения WebView2.
Чтобы обеспечить правильную работу приложения WebView2 с актуальной средой выполнения WebView2, следуйте рекомендациям в подразделах ниже:
- Убедитесь, что среда выполнения WebView2 установлена.
- Обработка обновлений среды выполнения WebView2.
- Проведите тестирование прямой совместимости с помощью предварительных каналов Microsoft Edge.
- Используйте функцию обнаружения компонентов для новых API.
Проверьте, установлена ли среда выполнения WebView2.
При использовании актуальной среды выполнения WebView2, прежде чем приложение начнет использовать элемент управления WebView2, программно проверка убедитесь, что на клиенте установлена актуальная среда выполнения WebView2.
См. раздел Определение того, установлена ли уже среда выполнения WebView2 в Распространение приложения и среда выполнения WebView2.
Обработка обновлений среды выполнения WebView2
При использовании актуальной среды выполнения WebView2 обрабатывать обновления актуальной среды выполнения WebView2. Обновления актуальной среды выполнения WebView2 загружаются автоматически, но запущенное приложение WebView2 будет продолжать использовать текущую версию среды выполнения WebView2, в котором могут отсутствовать обновления для системы безопасности. Чтобы принять новую версию, приложение должно освободить все ссылки на предыдущие объекты WebView2 или перезапуститься. Реализация NewBrowserVersionAvailable обработчика событий может предложить пользователям перезапустить приложение для получения обновлений с рекомендацией сохранить состояние пользователя перед выходом для плавного перехода.
См. раздел "Обработка обновлений актуальной среды выполнения WebView2 " в статье "Распространение приложения и среды выполнения WebView2".
Тестирование прямой совместимости с помощью предварительных каналов Microsoft Edge
При использовании актуальной среды выполнения WebView2 выполняйте тесты прямой совместимости с помощью предварительных каналов Microsoft Edge (бета-версии, разработки или канала Canary).
Поскольку актуальная среда выполнения обновляется автоматически, необходимо регулярно выполнять тесты совместимости, чтобы гарантировать, что приложение WebView2 продолжит работать должным образом в новой версии среды выполнения. Это можно сделать, протестировав веб-содержимое в элементе управления WebView2 на каналах предварительных версий Microsoft Edge.
Следуйте указаниям по предварительному тестированию с использованием предварительных каналов Microsoft Edge и Self-host, развернув предварительные каналы.
Использование функции обнаружения для новых API
При использовании актуальной среды выполнения WebView2 используйте функцию обнаружения для проверки того, поддерживает ли установленная среда выполнения недавно добавленные API. Чтобы запустить приложение WebView2, разработанное с помощью определенной версии SDK WebView2, на клиенте должна быть установлена совместимая версия среды выполнения WebView2.
При использовании актуальной среды выполнения WebView2 существуют некоторые сценарии, в которых среда выполнения на клиенте не обновляется автоматически до последней версии. Кроме того, некоторые групповые политики приостанавливают обновление среды выполнения. В результате, когда вы отправляете обновление в приложение WebView2, приложение может не работать, если оно пытается вызвать более новые API, которые недоступны в установленной клиентской среде выполнения. Поэтому с помощью функции обнаружения компонентов следует убедиться, что новые API, используемые приложением WebView2, поддерживаются средой выполнения WebView2, установленной на клиенте.
См. раздел "Обнаружение компонентов", чтобы проверить, поддерживает ли установленная среда выполнения недавно добавленные API-интерфейсы в предварительной версии и пакетах SDK для WebView2.
Регулярно обновляйтесь при использовании среды выполнения неизменяемой версии
Если вы используете неизменяемую версию среды выполнения WebView2, регулярно обновляйте среду выполнения WebView2, поставляемую с вашим приложением, чтобы снизить риски безопасности. Чтобы определить, как часто следует обновлять среду выполнения неизменяемой версии, следует учитывать модель угроз вашего приложения. Например, при использовании стороннего содержимого в приложениях Webview2 всегда считайте его ненадежным.
См. следующие статьи:
- Актуальная или неизменяемая версия среды выполнения WebView2
- Режим распространения неизменяемой версии среды выполнения в разделе "Распространение приложения WebView2" и среда выполнения WebView2.
Управление временем существования папки данных пользователя
Приложения WebView2 создают папку пользовательских данных для хранения таких данных, как файлы cookie, учетные данные и разрешения. После создания папки данных пользователя приложение отвечает за управление временем существования папки данных пользователя. Например, приложение должно выполнить очистку при удалении приложения.
См. следующие статьи:
Обработка сбоев или выходов процессов среды выполнения
Приложения WebView2 поддерживаются коллекцией процессов среды выполнения, которые выполняются вместе с процессом приложения. Эти вспомогательные процессы среды выполнения могут завершаться сбоем по разным причинам, например из-за нехватки памяти или из-за необходимости быть завершенными пользователем. Приложение WebView2 должно обрабатывать эти события, связанные с процессом, чтобы приложение могло восстановиться после сбоев и продолжить работать без сбоев.
См. статью Обработка событий, связанных с процессом, в WebView2.
Обработчики событий в объекте среды
Если какой-либо из обработчиков событий вашего приложения для CoreWebView2Environment объекта содержит ссылку на объект среды, и приложение просто освобождает ссылку на среду и обработчики событий, не удаляя обработчики событий, между объектом среды и объектами-обработчиками может существовать циклическая ссылка, что приведет к утечке памяти.
Чтобы предотвратить утечку памяти, выполните следующие действия.
Для любого добавленного обработчика событий удалите обработчик событий перед освобождением объекта окружения.
Избегайте удержания ссылки на объект окружения в обработчике событий. Вместо этого обработчик событий может получить доступ к объекту окружения
senderиз аргумента обратного вызова «событие завершено».Если вы хотите, чтобы приложение содержало ссылку на объект WebView2, по возможности используйте слабую ссылку.
Соблюдение рекомендаций по безопасности
WebView2 позволяет размещать веб-контент в собственных приложениях, предоставляя такие преимущества, как использование пользовательского веб-интерфейса, доступ к функциям веб-платформы и совместное использование кода между платформами.
Однако размещение веб-контента также может создавать уязвимости. Чтобы избежать уязвимостей, которые могут возникнуть при размещении веб-содержимого в собственном приложении, обязательно спроектируйте свое приложение WebView2 таким образом, чтобы оно внимательно отслеживало взаимодействие между веб-содержимым и ведущим приложением.
Следуйте инструкциям в статье "Разработка безопасных приложений WebView2".
См. также
- Обработка событий, связанных с процессом, в WebView2
- Обнаружение функций для проверки того, поддерживает ли установленная среда выполнения недавно добавленные API в предварительных и выпускных пакетах SDK для WebView2.
- Актуальная или неизменяемая версия среды выполнения WebView2
-
Распространение приложения WebView2 и среда выполнения WebView2
- Определение того, установлена ли уже среда выполнения WebView2 в Распространение приложения и среда выполнения WebView2.
- Режим распространения неизменяемой версии среды выполнения в разделе "Распространение приложения WebView2" и среда выполнения WebView2.
- Обработка обновлений актуальной среды выполнения WebView2 в разделе "Распространение приложения WebView2 и среды выполнения WebView2".
- Разработка безопасных приложений WebView2
- Предварительное тестирование с использованием каналов предварительных версий Microsoft Edge
- Самостоятельное размещение путем развертывания каналов с предварительными версиями каналов
- Управление папками данных пользователей
Справка по WebView2:
Документация по Microsoft Edge Enterprise: