Appleは、新しいiPhone 13ラインナップのProモデル向けのアプリで、開発者がより高速なProMotionディスプレイのリフレッシュレートを使用してカスタムアニメーションを行う方法に関するドキュメントを公開した。
ストーリーのハイライト:
- ProブランドのiPhone 13モデルでは、最大120Hzのダイナミックリフレッシュレートが利用可能
- Appleは、サードパーティのアプリがより高速なリフレッシュレートを利用できることを明らかにした。
- 新しいドキュメントでは、アプリの.plistファイルを変更してProMotionを使用する方法について詳しく説明しています。

iPhone 13 ProとMaxでサードパーティ製アプリがProMotionを使用する方法
ProMotionは、画面のリフレッシュレートを10フレーム/秒から120フレーム/秒(従来のiPhoneの2倍)まで動的に調整する機能のAppleのマーケティング名称です。これにより、アニメーションがよりスムーズになり、スクロール時の操作性が向上します(例えば、ウェブページを素早くスクロールしてもテキストが鮮明に表示されます)。
Apple Developersウェブサイトのドキュメントによると、プログラマーはアプリの.plistファイルにいくつかの簡単な変更を加えるだけで、リフレッシュレートを高速化できます。簡単に言うと、.plistファイル(「plist」はProperty Listの略)はアプリの環境設定や様々な設定を保存するために使用されます。
こうすることで、この特定のアプリが、リストのスクロールやメニューへのアクセスなど、標準のシステム アニメーション以外のカスタム アニメーションに ProMotion リフレッシュ レートの全範囲を使用するようにオペレーティング システムに指示します。
Appleは、「リフレッシュレートを高くすると、電力消費が大幅に増加する可能性がある」と警告している。
ProMotionの実際の仕組み
代わりに開発者は、ユーザー インターフェイス アニメーションを担当する iOS のサブシステムに、アプリがアニメーションに好むリフレッシュ レートに関するヒントを提供します。
Apple のドキュメントには次のように記載されています。
ProMotionディスプレイに特定のレートでコンテンツを表示させることはできません。ProMotionディスプレイのリフレッシュレートは、従来のディスプレイとは異なる動作をします。システムは、ProMotionディスプレイの実際のリフレッシュレートをアプリから分離します。アプリの観点から見ると、ProMotionディスプレイのリフレッシュレートは、Core Animationがディスプレイ全体のコンテンツをレンダリングするレートです。システムはレンダリングプロセスをディスプレイハードウェアのリフレッシュレートと同期させますが、ディスプレイハードウェアが必ずしもレンダリングプロセスを駆動するわけではありません。
そしてこれ:
アプリ内のカスタムアニメーションは、リフレッシュレートの変化に適応できる必要があります。ディスプレイのリフレッシュレートは様々な理由で変化する可能性があるため、アプリは特定のリフレッシュレートを前提とすることは決してありません。例えば、低電力モードやデバイスが高温になった場合、システムは高速リフレッシュレートを無効にします。また、UIKitとCore Animationが様々なGUI要素を管理している間、Core Animationはユーザーエクスペリエンスを向上させるためにリフレッシュレートを変更する場合があります。
人々がパニックに陥らないように、iOS 15 アプリの受け入れを開始する前に、Apple がこのドキュメントを開発者に事前に共有していれば、はるかに良かったでしょう。
→ ProMotionをオフにする方法
重要なのは、Appleが登録開発者に、ProMotionリフレッシュレートを活用するために必要なツールをすべて提供しているということです。つまり、よりスムーズなカスタムアニメーションを実現するために、ProMotion対応アプリにアップデートするのは開発者の責任です。