Apple explains how developers can support iPhone 13 ProMotion displays
Apple finally brought its ProMotion adaptive refresh rate technology to the iPhone with the release of the iPhone 13 Pro. The latest model’s Super Retina XDR display will allow developers to make their animations as smooth as possible thanks to its maximum refresh rate of 120Hz, at least in theory. It turns out that supporting the new ProMotion display requires a bit of finagling.
A new guide titled “Optimizing ProMotion Refresh Rates for iPhone 13 Pro and iPad Pro” explains how app developers can adapt their apps to new display technology on iPhone. (ProMotion has been part of the iPad Pro lineup since 2017.) But at least part of that process will require these developers to accept that Apple isn’t offering much control over ProMotion.
âYou can’t force a ProMotion display to display your content at a specific rate,â Apple said. “The refresh rate of a ProMotion display behaves differently from a traditional display. The system isolates the actual refresh rate of the ProMotion from your application.” Developers can simply “give Core Animation hints as to which refresh rates the app prefers for its animations.”
This means that developers are expected to optimize their apps’ animations for refresh rates and timings ranging from 10Hz (100ms) to 120Hz (8ms) on the iPhone 13 Pro range and 24Hz (41ms). at 120 Hz (8 ms) on the iPad Pro. In total, there are 12 different refresh rate and sync settings on the iPhone 13 Pro and five different settings on the iPad Pro to support.
âCustom animations in your app need to be able to adapt to changes in refresh rates,â Apple said. âDisplay refresh rates can change for many reasons, and your application shouldn’t assume a specific refresh rate at any time. For example, the system disables faster refresh rates in low power mode or if a device is heating up. “
These are just the animations themselves. Adding ProMotion support to an app also requires modifying the app property list (.plist) file on the iPhone 13 Pro, as well as properly implementing a variety of frameworks, classes, and other operating system level technologies provided by Apple over which the developer has limited control at best.
Apple said some apps “might already be able to take advantage of these new refresh rates without any changes” from the developer thanks to the UIKit, SwiftUI and SpriteKit frameworks as well as the “abstract superclass for animations in Core. Animation “called CAAnimation. (Although it looks like it still requires the .plist change on the iPhone 13 Pro.)
All of this means that enabling support for the new adaptive refresh rate display of the iPhone 13 Pro and iPhone 13 Pro Max won’t be as easy as flipping a switch, and even when developers implement everything correctly, the system may decide not to support a refresh rate due to Apple’s concerns about battery life and operating temperatures.