摘要:NET MAUI 应用添加了全面的诊断和指标跟踪,重点关注布局性能监控,并提供可扩展的架构以满足未来的可观察性需求。
.NET MAUI 应用添加了全面的诊断和指标跟踪,重点关注布局性能监控,并提供可扩展的架构以满足未来的可观察性需求。
核心诊断基础设施:
ActivitySource:"Microsoft.Maui"- 跟踪布局操作并记录详细时间Metrics:"Microsoft.Maui"- 记录性能分析的计数器和直方图功能开关:System.Diagnostics.Metrics.Meter.IsSupported- 在运行时启用/禁用,以支持 AOT/裁剪布局性能跟踪:
对 IView.Measure和IView.Arrange操作进行监控使用丰富的上下文标签记录时间数据和操作计数
基于 struct 的零分配仪器,采用 using指标名称
类型
说明
maui.layout.measure_count计数器 测量操作次数 maui.layout.measure_duration直方图 测量耗时(纳秒) maui.layout.arrange_count计数器 排列操作次数 maui.layout.arrange_duration直方图 排列耗时(纳秒) 为HybridWebView添加了初始化事件,遵循与BlazorWebView相同的模式,支持在初始化前后进行平台特定的自定义。新事件WebViewInitializing- 在WebView创建之前触发,可配置平台特定的初始化参数WebViewInitialized- 在WebView创建之后触发,可访问原生WebView实例和设置新增IsRefreshEnabled属性,与IsEnabled区分开来,以在各个平台上保持一致的行为。RefreshView IsRefreshEnabled="false"> StackLayout> Entry Placeholder="用户名" /> Entry Placeholder="密码" /> Button Text="登录" /> StackLayout>RefreshView>Performance和IPerformanceProvider类型现已标记为过时。此版本继续集成多种 .NET 运行时,并修复了若干错误。
(实验性)CoreCLR允许 Android 应用在 CoreCLR 运行时上运行(而不是 Mono)。要使用此功能,请在 Android 构建的项目文件中添加以下内容:
PropertyGroup Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'android'"> UseMonoRuntime>falseUseMonoRuntime>PropertyGroup>目前,应用大小大于 Mono,调试和某些运行时诊断尚未完全可用;这些方面正在积极改进中。此功能处于实验阶段,不建议在生产环境中使用。
.NET for iOS、Mac Catalyst、macOS、tvOS
此版本继续集成多种 .NET 运行时,并修复了若干错误。
来源:opendotnet