iPhone 13 120Hz Refresh Rates Don't Work on All Apps

Posted in:

iPhone 13 120Hz refresh rates don't work on all apps. Apple's iPhone 13 series seems to have been a massive success, with preorders selling out shortly after they began on Friday, September 20th. Now that they’ve arrived, consumers have begun testing the phones in real-life settings. These tests include battery life testing, teardowns, and speed tests. The new 120Hz ProMotion screens have also begun to be tested on the iPhone 13 Pro and iPhone 13 Pro Max. For the first time, the new iPhone models offer higher refresh rates than other iPhones, which run at 60Hz. There is an unexpected issue with the 120Hz display on the iPhone 13 Pro, which users have already discovered. Several early tests indicate that third-party apps might not always use a dynamic 120Hz refresh rate, with some content making use of a 60Hz refresh rate instead. Developers will soon be able to fully benefit from 120Hz refresh rates after Apple fixes the issue.

The iPhone 13 Pro display problem

Most of the animations in the applications developed by developers who received their iPhone 13 Pro models on Friday were still playing at 60Hz instead of the maximum refresh rate of 120Hz. In early reports, 120Hz was only activated while scrolling a third-party app. Other animations within the same app, however, were refreshed at 60Hz. The result is a very frustrating and inconsistent user experience. According to some speculation at the time, Apple may have implemented a few restrictions on third-party apps to improve battery life. Battery life was also a problem for Android phones that featured high refresh rates in recent years. The Galaxy S21 is one example of a phone with dynamic refresh rate support earlier this year. Thanks to the dynamic 120Hz screen on Samsung's new flagship, its battery life has been dramatically improved over the S20 series. Apple 13 Pros' battery life was excellent, as demonstrated by iPhone 13 battery tests. Despite exceeding the Galaxy S21 Ultra, the iPhone 13 Pro Max set a new record. The regular iPhone 13 Pro lasted almost as long as the S21 Ultra in the same test.Any cell phone repair shop near you can help you identify this problem and guide you towards a more meaningful solution. This article has all the information that will help you resolve this issue.

Apple Says A Fix Is On The Way For ProMotion Issues

According to Apple, developers can fully utilize the iPhone 13 Pro's 120Hz refresh rate. To enable 120Hz support for some animations, they will have to add new information to their apps. This information will be made available in the future. Additionally, a software update is scheduled to prevent 120Hz animations from being supported by Core Animation. Battery life will be impacted by 120Hz support, so apps will need to opt-in. Those rules will apply to any application that implements ProMotion-enabled content, including games. App developers won't need to change their apps to use ProMotion for standard animations. When this happens, iOS 15 will automatically switch between 10Hz and 120Hz.

Understand Refresh Rates

Your content cannot be forced to be shown at a specific rate on a ProMotion display. ProMotion displays behave differently than traditional displays when it comes to refreshing rates. ProMotion's actual refresh rate is insulated from your app's refresh rate thanks to this system. From your app's perspective, Core Animation renders content for the entire display at a refresh rate. The rendering process is synchronized with the display hardware's refresh rate, but it does not necessarily control it. Core Animation decides the refresh rate at each moment for all the animations it displays on the screen. By providing Core Animation with details on your preferred refresh rate for animations, your app can help Core Animation improve its performance. You can display content using the following refresh rates and timings on the iPhone 13 Pro and iPhone 13 Pro Max ProMotion displays:

  • 120Hz (8ms)
  • 80Hz (12ms)
  • 60Hz (16ms)
  • 48Hz (20ms)
  • 40Hz (25ms)
  • 30Hz (33ms)
  • 24Hz (41ms)
  • 20Hz (50ms)
  • 16Hz (62ms)
  • 15Hz (66ms)
  • 12Hz (83ms)
  • 10Hz (100ms)

Using the ProMotion feature, the iPad Pro's display can present content at the following refresh rates and timings:

  • 120Hz (8ms)
  • 60Hz (16ms)
  • 40Hz (25ms)
  • 30Hz (33ms)
  • 24Hz (41ms)

Important

Change the refresh rate of your app by adapting custom animations. The app should never assume any specific refresh rate since the refresh rate can change for many reasons. When a device is hot or in low power mode, the system disables the faster refresh rates. Additionally, while UIKit and Core Animation manage the various GUI elements, Core Animation may adjust the refresh rate to enhance the user experience.

Enable Faster ProMotion Refresh Rates

As a result, your CADisplayLink callback may run at any of the ProMotion display's supported refresh rates at different times during normal GUI operations. Generally, Core Animation calls your CADisplayLink callback slower when other animations are in the system. There may be a mismatch between the refresh rate hints that you provide to your CADisplayLink callback and the rate at which Core Animation calls it. In particular, Core Animation won't allow you to unlock a faster refresh rate than the default.You can enable CADisplayLink and CAAnimation animation refresh rates by adding the following key to your Info.plist file:<key>CADisableMinimumFrameDurationOnPhone</key><true/>The preferredFrameRateRange hint API must be used by your app to access higher frame rates (above 60Hz). This isn't necessary on the iPad Pro.

Provide Time-Paced Content to a ProMotion Display

Automatic frame pacing is handled for animations created with UIKit, SpriteKit, SwiftUI, and CAAnimation. Please provide hints about your app's preferred refresh rate(s) to CADisplayLink or CAAnimation when presenting custom content.

Important

Ensure that your app operates at any refresh rate, not just those requested by CADisplayLink or CAAnimation.Specify the best frame rate possible for your content when specifying a preferred frame rate. The display cannot be updated at that rate all the time. Still, CADisplayLink tries to provide the closest refresh rate as possible depending on the hardware and the current operating conditions. If your app provides hints requesting either of these rates, iOS 15 prioritizes 30Hz and 60Hz refresh rates. iOS 15 is the only platform that provides such a priority.

Important

Do not use timers or other strategies that are incompatible with Core Animation's display refresh cycle.

In Conclusion

CADisplayLink and CAAnimation APIs are used by Core Animation to accommodate the preferences of apps using them. You mustn't assume that Core Animation will call your CADisplayLink callback at any specific refresh rate or even at the rate requested. IOs used the preferred Frames Per Second property before iOS 15. It allows you to specify the refresh rate your app prefers. With iOS 15, you can set the minimum, maximum, and preferred refresh rate for your content using a CAFrameRateRange. You can contact us for more information, and we would be happy to assist you.

Published on:
July 29, 2022