该技能用于配置 .NET MAUI 应用的应用图标与启动屏幕,并处理构建期的 SVG 转 PNG、组合/自适应图标及平台差异问题。
主要用途与能力:在 .csproj 中通过 MauiIcon 与 MauiSplashScreen 项配置图标和启动屏;支持 SVG 源在构建时由 Microsoft.Maui.Resizetizer 光栅化;支持 Android 自适应组合图标(ForegroundFile 配合 ForegroundScale 保持在安全区内);可通过 BaseSize 显式指定逻辑尺寸;SVG 不兼容时可改用 PNG 并设 Resize="false"。
常见问题与写法要点:Android 自适应图标会裁剪到圆形或方形安全区,单层图标铺满画布会被裁切,应使用组合图标并设 ForegroundScale="0.65";启动屏 Color 若为透明色,某些平台会渲染成黑色,应使用不透明颜色;Color 是图标/启动图背后的背景填充,TintColor 用于重着色前景图,只设 TintColor 而无可视前景路径会导致图标空白;含渐变、滤镜或遮罩的复杂 SVG 可能无法正确光栅化;SVG viewBox 与目标逻辑尺寸不一致时应显式设置 BaseSize,否则输出尺寸可能错误。
最佳实践:尽量使用 SVG;viewBox 不匹配时显式设 BaseSize;启动图保持简单;使用组合图标(ForegroundFile + ForegroundScale="0.65");在真实设备上测试,模拟器密度可能掩盖图标裁剪问题。
排错提示:图标空白或白色时检查 Color 与 TintColor 并确认 SVG 路径存在;启动屏显示默认 .NET 徽标时确认 .csproj 中存在 MauiSplashScreen 项;Android 图标被裁切时改用带 ForegroundScale="0.65" 的组合图标;SVG 构建报错时简化 SVG 或改用 PNG 并设 Resize="false";某平台图标尺寸错误时显式设置 BaseSize。
限制:资料仅覆盖上述配置与排错内容,未提供安装命令、收费信息或具体平台清单;实际效果需以项目与设备验证为准。