[.NET 9] BlazorWebView 无法在较旧的 Android 设备上加载, 附临时解决方法

[.NET 9] BlazorWebView 无法在较旧的 Android 设备上加载, 附临时解决方法 BlazorWebView 无法在较旧的 Android 设备上加载Uncaught SyntaxError: Unexpected token ..NET 9 低于 v17 的 iOS 版本IOS 162022年9月、安卓API 312021年10月上的 blazor.webview.js 出现意外语法错误参考链接https://github.com/dotnet/aspnetcore/issues/53699https://github.com/dotnet/maui/issues/24278生成的 JS 文件blazor.webview.js包含 JS 代码除非它们更新其 WebView否则这些代码在旧版 Android 系统上无效。加载 BlazorWebView 的内容时立即发生此错误Uncaught SyntaxError: Unexpected token .并发生在文件中的这行 JS 上function l(e) { const t a.get(e); return t?.browserEventName || e // ------------ }在这些较旧的 Android 模拟器rom上您可以更新 System WebView 以获取较新的版本这似乎可以解决问题。供将来参考如果我们决定在较旧的 Android/Chrome/WebView 上再次运行此功能那么我们还需要重新启用在引入此中断时已禁用的一些测试。我们将 Android API 28、29、30 添加到我们在 dotnet/maui 存储库中为 BlazorWebView 测试的 API 级别排除列表中。在此处查看更改 dotnet/maui 9c03adc #diff-d2d1c388a0fb3196dbfcdab96421bc88336637a3d44480c96717f92d000facaeL155-R155! androidApiLevelsExclude: [ 27, 26, 25, 24, 23, 22, 21 ] # BlazorWebView requires a recent version of Chrome ! androidApiLevelsExclude: [ 30, 29, 28, 27, 26, 25, 24, 23, 22, 21 ] # BlazorWebView requires a recent version of Chrome ^^^^^^^^^^^^我们相信大多数设备会自动更新到最新的 webview因此我们不愿意做出改变来适应旧的 JavaScript 运行时。唯一的挑战是danroth27即使是全新的工业 Android 设备也经常运行较旧的 Android 版本。我来这里只是因为我有一套 Android 10 (v29) 条码扫描器并且我尝试更新到 .NET 9。这是否意味着 .NET 8 对我来说是终点了临时方案自己构建 blazor.webassembly.jshttps://github.com/Yu-Core/SwashbucklerDiary/issues/79?wt.mc_idDT-MVP-5005078针对旧版 Android 设备上 Blazor Hybrid 的解决方法https://github.com/dotnet/maui/discussions/27327?wt.mc_idDT-MVP-5005078