SuperAPI AI 工具集

axiom-display-performance

通用与其它

查看项目

更新于 10-15 20:11

技能介绍

用途:系统诊断可变刷新率屏幕上的帧率问题,覆盖渲染循环配置、帧节奏、卡顿机制与生产遥测。核心观点是“设备支持 ProMotion”并不等于应用自动以 120Hz 运行,需要正确配置并考虑系统限制。

主要能力:按顺序排查卡在 60fps 的原因——iPhone 缺少 Info.plist 键、渲染循环按 60 配置、系统限帧(低电量模式、辅助功能限帧、热节流、iOS 26 自适应电源)、帧时间超过 8.33ms、帧节奏问题、测量对象错误。

必要用法:iPhone 需在 Info.plist 添加 CADisableMinimumFrameDurationOnPhone 为 true(iPad Pro 不需要)。MTKView 需显式设置 preferredFramesPerSecond = 120、isPaused = false、enableSetNeedsDisplay = false。CADisplayLink 应设置 preferredFrameRateRange(如 minimum 80、maximum 120、preferred 120)。iOS 17+ 可用 CAMetalDisplayLink 并设置 preferredFrameLatency。帧节奏推荐 present(afterMinimumDuration:),也可用 present(atTime:) 与 presentedTime 验证。

适用场景:游戏、动画、滚动 UI 等需要高于 60Hz 的 iPhone/iPad 应用;Metal 渲染应用。

限制:部分系统状态无公开 API 检测(如辅助功能限帧、自适应电源);UIScreen.main.maximumFramesPerSecond 只报告能力而非实际帧率;无法持续 8.33ms 时应显式降到 60 以保持均匀节奏。生产环境可用 MetricKit 监控 scrollHitchTimeRatio 与 hitchTimeRatio(iOS 17+)。