WebView2 SDK 发行说明
这些发行说明提供有关 WebView2 发布 SDK 和 WebView2 预发布 SDK 中包含的新功能和 bug 修复的信息。
1.0.2849.39
发布日期:2024 年 10 月 21 日
用于 WebView2 SDK 1.0.2849.39 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 版本需要 WebView2 运行时版本 130.0.2849.39 或更高版本。
促销
以下 API 已提升为稳定版,现已包含在此发布 SDK 中。
在保存文件 (SaveFileSecurityCheckStarting
事件) 时配置安全警告
添加了一个新 SaveFileSecurityCheckStarting
事件。 应用可以在此事件上注册处理程序,以获取文件路径、文件扩展名和文档源 URI 信息。 然后,可以应用自己的规则来执行如下操作:
- 允许保存文件,而不显示有关文件类型策略的默认安全警告 UI。
- 取消保存。
- 创建自己的 UI 来管理运行时文件类型策略。
CoreWebView2
类:CoreWebView2SaveFileSecurityCheckStartingEventArgs 类
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.CancelSave 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.DocumentOriginUri 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.FileExtension 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.FilePath 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.SuppressDefaultPolicy 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.GetDeferral 方法
Bug 修复
仅限运行时
- 修复了按 Tab 或 Shift+Tab 切换到 Webview2 控件时的下载对话框焦点问题。
仅 SDK
-
CoreWebView2.AddWebResourceRequestedFilter
现在已弃用不使用CoreWebView2WebResourceRequestSourceKinds
参数。 请参阅 .NET CoreWebView2.AddWebResourceRequestedFilter 方法。 - 添加了用于 C# WinRT 的 .NET 8
TargetFramework
,启用了 AOT (提前) 兼容性,并禁用了运行时封送。
1.0.2895-prerelease
发布日期:2024 年 10 月 21 日
用于 WebView2 SDK 1.0.2895-prerelease 的 NuGet 包
为了完全实现 API 兼容性,此预发布版本的 WebView2 SDK 需要Microsoft Edge 版本 131.0.2895.0 或更高版本随附的 WebView2 运行时。
实验性 API
此预发布 SDK 中添加了以下实验性 API。
RestartRequested
当 WebView2 需要重启时的事件
添加了一个新 RestartRequested
事件。
RestartRequested
每当 WebView2 需要重启以应用更新或配置更改时,将引发该事件。 可以使用此 API 来检测 WebView2 何时需要重启,并采取适当的操作。
Priority
事件参数的 RestartRequested
属性指示重启请求的优先级:
-
High
指示应用应提示用户尽快重启。 -
Normal
指示应用应提醒用户尽最大努力重启。
CoreWebView2Environment
类:CoreWebView2RestartRequestedEventArgs
类:CoreWebView2RestartRequestedPriority 枚举
CoreWebView2RestartRequestedPriority.Normal
CoreWebView2RestartRequestedPriority.High
促销
在此预发行版 SDK 中,以下 API 已从实验性提升为稳定 API。
控制是否 (事件) ScreenCaptureStarting
显示屏幕捕获 UI
添加了一个新 ScreenCaptureStarting
事件。 每当与 (或其任何后代 iframe 相对应的 CoreWebView2Frame
WebView2 和/或 iframe) 请求在显示 UI 之前使用屏幕捕获 API 的权限时,都会引发此事件。 然后,应用可以阻止显示 UI,或允许显示 UI。
CoreWebView2
类:CoreWebView2Frame
类:CoreWebView2ScreenCaptureStartingEventArgs
类:
在保存文件 (SaveFileSecurityCheckStarting
事件) 时配置安全警告
添加了一个新 SaveFileSecurityCheckStarting
事件。 应用可以在此事件上注册处理程序,以获取文件路径、文件扩展名和文档源 URI 信息。 然后,可以应用自己的规则来执行如下操作:
- 允许保存文件,而不显示有关文件类型策略的默认安全警告 UI。
- 取消保存。
- 创建自己的 UI 来管理运行时文件类型策略。
CoreWebView2
类:CoreWebView2SaveFileSecurityCheckStartingEventArgs 类
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.CancelSave 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.DocumentOriginUri 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.FileExtension 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.FilePath 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.SuppressDefaultPolicy 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.GetDeferral 方法
Bug 修复
仅 SDK
- 修复了 Arm64 与 WindowsAppSDK 1.6 不兼容的问题。
- 在 WinAppSDK 案例中删除了额外的
WebView2Loader.dll
内容。 -
CoreWebView2.AddWebResourceRequestedFilter
现在已弃用不使用CoreWebView2WebResourceRequestSourceKinds
参数。 请参阅 .NET CoreWebView2.AddWebResourceRequestedFilter 方法。
1.0.2792.45
发布日期:2024 年 9 月 23 日
用于 WebView2 SDK 1.0.2792.45 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 版本需要 WebView2 运行时版本 129.0.2792.45 或更高版本。
促销
此发布 SDK 中没有其他 API 已提升到稳定版并已添加。
Bug 修复
仅 SDK
- 修复了 .NET 项目的 SDK 依赖项。 (问题 #4743)
1.0.2839-prerelease
发布日期:2024 年 9 月 23 日
用于 WebView2 SDK 1.0.2839-prerelease 的 NuGet 包
为了完全实现 API 兼容性,此预发布版本的 WebView2 SDK 需要Microsoft Edge 版本 130.0.2839.0 或更高版本随附的 WebView2 运行时。
实验性 API
此预发布 SDK 中未添加任何实验性 API。
促销
在此预发行版 SDK 中,尚未将任何 API 从实验版提升为稳定版。
Bug 修复
仅限运行时
- 修复了以下问题:在禁用 Windows“滚动非活动窗口”设置的情况下,将焦点集中在 WinAppSDK 中的 WebView2 控件上导致滚动失败。
- 在 WebView2 中阻止
edge://wallet
。 (问题 #4710) - 在控制器完成创建后,清除 .NET WebView2 控件中默认背景色的环境变量。
- 在可视托管模式下启用了对 Webview2 的辅助功能支持。
- 修复了一个 bug,其中一个源为 Document 时删除多个源的“请求的 Web 资源”筛选器。
- 修复了在 WinUI 或其他可视托管的 WebView2 实例中不可见的回归
DataList
。
仅 SDK
- 修复了 .NET 项目的 SDK 依赖项。 (问题 #4743)
- 修复了使用较旧的
WebView2Loader.dll
调用GetAvailableBrowserVersionString()
时的兼容性问题。 (问题 #4395) - 修复了使用
cpp20
和/permissive-
选项编译 wv2winrt 生成的代码时出现的问题。 - 添加了用于 C# WinRT 的 .NET 8
TargetFramework
,启用了 AOT (提前) 兼容性,并禁用了运行时封送。
1.0.2739.15
发布日期:2024 年 8 月 26 日
用于 WebView2 SDK 1.0.2739.15 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 版本需要 WebView2 运行时版本 128.0.2739.15 或更高版本。
促销
以下 API 已提升为稳定版,现已包含在此发布 SDK 中。
Web 通知处理
添加了对非持久性通知的 Web 通知的支持。 用于NotificationReceived
CoreWebView2
控制 Web 通知处理的事件,允许主机应用进行自定义或抑制。 未处理的通知默认为 WebView2 的 UI。
CoreWebView2
类:-
- CoreWebView2Notification.BadgeUri 属性
- CoreWebView2Notification.Body 属性
- CoreWebView2Notification.BodyImageUri 属性
- CoreWebView2Notification.Direction 属性
- CoreWebView2Notification.IconUri 属性
- CoreWebView2Notification.IsSilent 属性
- CoreWebView2Notification.Language 属性
- CoreWebView2Notification.RequiresInteraction 属性
- CoreWebView2Notification.ShouldRenotify 属性
- CoreWebView2Notification.Tag 属性
- CoreWebView2Notification.Timestamp 属性
- CoreWebView2Notification.Title 属性
- CoreWebView2Notification.VibrationPattern 属性
- CoreWebView2Notification.ReportClicked 方法
- CoreWebView2Notification.ReportClosed 方法
- CoreWebView2Notification.ReportShown 方法
- CoreWebView2Notification.CloseRequested 事件
CoreWebView2TextDirectionKind 枚举
Default
LeftToRight
RightToLeft
“另存为”
添加了 SaveAs
允许以编程方式执行 “另存为” 操作的 API。 可以使用这些 API 来阻止默认的“ 另存为 ”对话框,然后以无提示方式保存,或生成自己的 UI 以用于 “另存为”。 这些 API 仅适用于 “另存为 ”对话框,而不适用于“ 下载 ”对话框,后者继续使用现有下载 API。
CoreWebView2
类:-
Complete
Default
HtmlOnly
SingleFile
-
Cancelled
FileAlreadyExists
InvalidPath
KindNotSupported
Success
CoreWebView2SaveAsUIShowingEventArgs 类
- CoreWebView2SaveAsUIShowingEventArgs.AllowReplace 属性
- CoreWebView2SaveAsUIShowingEventArgs.Cancel 属性
- CoreWebView2SaveAsUIShowingEventArgs.ContentMimeType 属性
- CoreWebView2SaveAsUIShowingEventArgs.Kind 属性
- CoreWebView2SaveAsUIShowingEventArgs.SaveAsFilePath 属性
- CoreWebView2SaveAsUIShowingEventArgs.SuppressDefaultDialog 属性
- CoreWebView2SaveAsUIShowingEventArgs.GetDeferral 方法
Bug 修复
此发布 SDK 中没有 bug 修复。
1.0.2783-prerelease
发布日期:2024 年 8 月 26 日
用于 WebView2 SDK 1.0.2783-prerelease 的 NuGet 包
为了完全实现 API 兼容性,此预发布版本的 WebView2 SDK 需要Microsoft Edge 版本 129.0.2783.0 或更高版本随附的 WebView2 运行时。
实验性 API
此预发布 SDK 中未添加任何实验性 API。
促销
在此预发行版 SDK 中,尚未将任何 API 从实验版提升为稳定版。
Bug 修复
运行时和 SDK
- 重新启用 的默认行为
SetUserAgent
: 默认情况下,SetUserAgent
对跨源 iframe 有效。
仅限运行时
默认启用交互式拖动功能。 请参阅
edge-webview-interactive-dragging
WebView2 浏览器标志。IsolateSandboxedIframes
为 WebView2 禁用。修复了同时启动多个实例时 WebView 创建失败的问题。 (问题 #4731)
修复了 WinRT JavaScript 投影中的 bug,其中缓存其名称包含
Proxy
或Function
由于名称冲突导致错误的对象中的现有属性。修复了以下 bug:WebView2 控件在断开连接并重新连接监视器后大小不正确。
修复了“mailto:”链接使无标题弹出窗口保持打开状态,而不是自动关闭弹出窗口的问题。
仅 SDK
C# WinRT 投影现在适用于 UWP。
修复了确保
GeneratedFilesDir
不再出现在 Visual Studio for C# WinRT 投影中的问题。
1.0.2651.64
发布日期:2024 年 8 月 13 日
用于 WebView2 SDK 1.0.2651.64 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 版本需要 WebView2 运行时版本 127.0.2651.64 或更高版本。
促销
以下 API 已提升为稳定版,现已包含在此发布 SDK 中。
- 更新了 WebMessageObjects API,允许将 DOM 对象注入到通过应用构造的 WebView2 内容中,并通过
CoreWebView2.PostWebMessage
API 在其他方向上构造。 添加了一个新的 Web 对象类型 (CoreWebView2FileSystemHandle
) 来表示文件系统句柄,该句柄可以发布到 Web 内容,以便为其提供文件系统访问权限。
CoreWebView2
类:CoreWebView2Environment
类:CoreWebView2FileSystemHandle
类:CoreWebView2FileSystemHandleKind 枚举
File
Directory
CoreWebView2FileSystemHandlePermission 枚举
ReadOnly
ReadWrite
Bug 修复
仅限运行时
- 修复了某些站点上事件崩溃的
WebResourceRequested
回归。 (问题 #4602)
仅 SDK
- 修复了 WinRT C# 投影的 x86。
1.0.2730-prerelease
发布日期:2024 年 8 月 7 日
用于 WebView2 SDK 1.0.2730-prerelease 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 的预发行版本需要Microsoft Edge 版本 128.0.2730.0 或更高版本随附的 WebView2 运行时。
实验性 API
此预发布 SDK 中添加了以下实验性 API。
- 添加了新的限制控制 API,允许通过限制 JavaScript 计时器来实现高效资源管理。 如果 WebView2 控件需要保持可见,但需要消耗更少的资源 ((例如用户未与内容) 交互),这非常有用。 这些限制控制 API 允许你:
- 使用密集限制) 自定义
setTimeout
setInterval
不同页面状态 (和) 限制的脚本计时器, (前台、后台和后台。 - 限制选定托管 iframe 中的脚本计时器。
- 使用密集限制) 自定义
CoreWebView2Frame
类:CoreWebView2Settings
类:
促销
在此预发行版 SDK 中,以下 API 已从实验性提升为稳定 API。
- 添加了
SaveAs
允许以编程方式执行 “另存为” 操作的 API。 可以使用这些 API 来阻止默认的“ 另存为 ”对话框,然后以无提示方式保存,或生成自己的 UI 以用于 “另存为”。 这些 API 仅适用于 “另存为 ”对话框,而不适用于“ 下载 ”对话框,后者继续使用现有下载 API。
CoreWebView2
类:-
Default
HtmlOnly
SingleFile
Complete
-
Success
InvalidPath
FileAlreadyExists
KindNotSupported
Cancelled
CoreWebView2SaveAsUIShowingEventArgs 类
- CoreWebView2SaveAsUIShowingEventArgs.AllowReplace 属性
- CoreWebView2SaveAsUIShowingEventArgs.Cancel 属性
- CoreWebView2SaveAsUIShowingEventArgs.ContentMimeType 属性
- CoreWebView2SaveAsUIShowingEventArgs.Kind 属性
- CoreWebView2SaveAsUIShowingEventArgs.SaveAsFilePath 属性
- CoreWebView2SaveAsUIShowingEventArgs.SuppressDefaultDialog 属性
- CoreWebView2SaveAsUIShowingEventArgs.GetDeferral 方法
- 添加了对非持久性通知的 Web 通知的支持。 用于
NotificationReceived
CoreWebView2
控制 Web 通知处理的事件,允许主机应用进行自定义或抑制。 未处理的通知默认为 WebView2 的 UI。
Bug 修复
仅限运行时
修复了以下问题:当焦点处于 Visual 托管模式 (的 WebView2 中时,无法通过系统命令(如 Alt+F4 或 Alt+空格键 )) 控制应用窗口。 (问题 #2961)
修复了 WebView2 UWP 中无法从主机应用单击“查找”栏的 bug。
仅 SDK
添加缺少的 WinRT
CoreWebView2Notification.VibrationPattern
API。 此 WinRT API 可以与稳定通知 API 促销发行说明结合使用;请参阅“Web 通知”和NotificationReceived
WinRT,紧随其上。修复了 WinForms WebView2 控件中的事件不包含正确
ModifierKeys
信息的问题KeyDown
。 (问题 #1216)修复了 WinRT C# 投影的 x86。
GetAvailableCoreWebView2BrowserVersionString
在CreateCoreWebView2Environment
运行时更新期间,针对潜在的争用情况变得更加强大。
1.0.2592.51
发布日期:2024 年 6 月 19 日
用于 WebView2 SDK 1.0.2592.51 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 版本需要 WebView2 运行时版本 126.0.2592.51 或更高版本。
促销
此发布 SDK 中没有其他 API 已提升到稳定版并已添加。
Bug 修复
仅限运行时
BreakoutBoxPreferCaptureTimestampInVideoFrame
为 WebView2TextureStream
禁用。修复了仅针对第一次
window.close()
调用触发事件的回归WindowCloseRequested
。修复了以下回归:WinRT JavaScript 投影中的类型化数组无法像主机一样
IDispatch
进行处理。修复了自动填充弹出窗口立即消除并导致焦点更改的 bug。
修复了由于 导致 WebView2 加载失败的
AppPolicyGetWindowingModel
bug。 (问题 #4591)
1.0.2646-prerelease
发布日期:2024 年 6 月 19 日
用于 WebView2 SDK 1.0.2646-prerelease 的 NuGet 包
为了完全实现 API 兼容性,此预发布版本的 WebView2 SDK 需要Microsoft Edge 版本 128.0.2646.0 或更高版本随附的 WebView2 运行时。
常规功能
- 添加了对 C#/WinRT .NET 6+ 的支持。
实验功能
- 引入了功能标志
msWebView2EnableDownloadContentInWebResourceResponseReceived
,这是一个实验性功能, (而不是稳定功能) 。 启用此标志后,这允许在 中WebResourceResponseReceived
提供成为下载的导航的响应。
实验性 API
此预发布 SDK 中添加了以下实验性 API。
- 添加了一个新
SaveFileSecurityCheckStarting
事件。 开发人员可以在此事件上注册处理程序,以获取文件路径、文件扩展名和文档源 URI 信息。 然后,可以应用自己的规则来执行如下操作:- 允许保存文件,而不显示有关文件类型策略的默认安全警告 UI。
- 取消保存。
- 创建自己的 UI 来管理运行时文件类型策略。
CoreWebView2
类:CoreWebView2SaveFileSecurityCheckStartingEventArgs 类
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.CancelSave 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.DocumentOriginUri 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.FileExtension 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.FilePath 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.SuppressDefaultPolicy 属性
- CoreWebView2SaveFileSecurityCheckStartingEventArgs.GetDeferral 方法
- 添加了一个新
ScreenCaptureStarting
事件。 每当与 (或其任何后代 iframe 相对应的CoreWebView2Frame
WebView2 和/或 iframe) 请求在显示 UI 之前使用屏幕捕获 API 的权限时,都会引发此事件。 作为开发人员,你可以选择阻止显示 UI,或允许显示 UI。
CoreWebView2
类:CoreWebView2Frame
类:CoreWebView2ScreenCaptureStartingEventArgs
类:
- 向 .NET 类添加了一个新
GetComICoreWebView2
方法CoreWebView2
,可用于在 .NET 和 COM 之间转换CoreWebView2
。 添加了一个新的 WinRT 接口,可用于在 WinRT 和 COM 之间转换CoreWebView2
。 这样,就可以在以不同语言编写的库之间进行互操作。
-
CoreWebView2
类:
促销
在此预发行版 SDK 中,以下 API 已从实验性提升为稳定 API。
- 更新了 WebMessageObjects API,允许将 DOM 对象注入到通过应用构造的 WebView2 内容中,并通过
CoreWebView2.PostWebMessage
API 在其他方向上构造。 添加了一个新的 Web 对象类型来表示文件系统句柄,该句柄可以发布到 Web 内容,以便为其提供文件系统访问权限。
CoreWebView2
类:CoreWebView2Environment
类:CoreWebView2FileSystemHandle
类:CoreWebView2FileSystemHandleKind 枚举
File
Directory
CoreWebView2FileSystemHandlePermission 枚举
ReadOnly
ReadWrite
Bug 修复
仅限运行时
- 修复了视觉对象托管的自有窗口激活逻辑中的 bug。
1.0.2535.41
发布日期:2024 年 5 月 28 日
用于 WebView2 SDK 1.0.2535.41 的 NuGet 包
为了完全实现 API 兼容性,此 WebView2 SDK 版本需要 WebView2 运行时版本 125.0.2535.41 或更高版本。
促销
以下 API 已提升为稳定版,现已包含在此发布 SDK 中。
- 支持 Fluent 样式覆盖滚动条。
CoreWebView2EnvironmentOptions
类:-
Default
FluentOverlay
Bug 修复
仅限运行时
修复了以下 bug:如果
LaunchingExternalURIScheme
附加了事件处理程序,并且启用了“ 始终记住 ”复选框,并且用户选中此复选框,则再次错误地显示对话框。修复了以下问题:视觉对象托管中的文本编辑控件在丢失并重新获得焦点时会复制 IME 输入。
修复了完全信任的 UWP 应用无法显示拥有的窗口的问题。
仅 SDK
- 修复了 SDK 中导致 .NET 项目平台列表中出现错误的 <平台> 值的问题。 (问题 #1755)
1.0.2584-prerelease
发布日期:2024 年 5 月 28 日
用于 WebView2 SDK 1.0.2584-prerelease 的 NuGet 包
为了完全实现 API 兼容性,此预发布版本的 WebView2 SDK 需要Microsoft Edge 版本 126.0.2584.0 或更高版本随附的 WebView2 运行时。
实验功能
- 引入了取消 WebView2 中初始导航的选项,以提高启动性能。 此更改默认处于禁用状态,并且可以使用功能标志启用
msWebView2CancelInitialNavigation
。
实验性 API
此预发布 SDK 中未添加任何实验性 API。
促销
在此预发行版 SDK 中,尚未将任何 API 从实验版提升为稳定版。
Bug 修复
运行时和 SDK
- 修复了 .NET 主机对象异步方法返回 null 结果时的崩溃。 (问题 #4509)
仅限运行时
修复了关闭窗口时 WebView2 内存泄漏问题。 (问题 #4286)
修复了对 .NET 对象不起作用的问题
ignoreMemberNotFoundError
。 (问题 #4497)现在,当调用 缓冲区大小为 0 的 时
CreateSharedBuffer
,将返回正确的错误代码。 (问题 #4554)修复了插入点浏览对话框的激活问题。
修复了 WebView2 Visual Hosting
CursorChanged
事件未触发自定义游标的问题。
另请参阅
- 关于 WebView2 SDK 的发行说明
- WebView2 SDK 的存档发行说明
- WebView2 功能和 API 概述 - 按功能区域概述了发布 SDK 包中的许多 API。
- 联系 Microsoft Edge WebView2 团队