How do I enable support for ProMotion displays?

Support for ProMotion on iOS requires two things:

  1. Using an API in the Apple runtime to set the desired FPS (range)
  2. Adding an additional entry into your app’sInfo.plist file

Example Usage

let preferredFPS = UIScreen.main.maximumFramesPerSecond
// or
let preferredFPSRange = CAFrameRateRange(minimum: 60, maximum: Float(preferredFPS))
let viewModel = {
    let viewModel = RiveViewModel(fileName: "...")
    viewModel.setPreferredFramesPerSecond(preferredFramesPerSecond: preferredFPS)
    // or
    viewModel.setPreferredFrameRateRange(preferredFPSRange)
    return viewModel
}()

Additionally, add the following to your app’s Info.plist file:

<key>CADisableMinimumFrameDurationOnPhone</key><true/>

You can view more information about preferred FPS here, and about preferred FPS range here.

Why is resource usage different compared to other libraries?

See our Resource Usage documentation for more details.