アプリをiOS 15とAndroid 12に対応させる準備
皆さん、こんにちは!
今年の後半に新しいモバイルOSのバージョンがリリースされるため、一般公開された際にリグレッション(機能低下)が発生しないよう、React Nativeアプリを事前に準備しておくことをお勧めします。
iOS 15
iOS 15 のリリース日はまだ発表されていませんが、これまでの iOS リリースに基づくと、9月16日前後になる可能性が高いです。また、アプリを iOS 15 に対応させるために変更が必要な場合は、App Store の審査期間も考慮してください。
注意すべき点
QuickType バー
TextInput で QuickType バーを無効にする方法が変わりました。QuickType バーとは、キーボードの上にある、3つの候補語が表示されるバーです。UI でこのバーを非表示にする必要がある場合、これまでのバージョンでは autoCorrect を false
に設定することで QuickType バーが無効になりましたが、iOS 15 ではもはや無効になりません。QuickType バーを非表示にするには、spellCheck も false
に設定する必要があります。これにより、TextInput のスペルチェック(赤い下線)が無効になります。スペルチェックを有効にしたまま QuickType バーを無効にするオプションはなくなりました。

3つの候補語が表示されるQuickTypeバー
iOS 15でQuickTypeバーを無効にするには、プロパティspellCheckとautoCorrectをfalse
に設定します。
<TextInput
placeholder="something"
autoCorrect={false}
spellCheck={false}
/>
透過ナビゲーションバー
iOS 15では、ナビゲーションバーのデフォルトの動作が変更されます。iOS 14とは異なり、コンテンツを一番上までスクロールすると、ナビゲーションバーが透過になります。これによりコンテンツが読みにくくなる可能性があるため、注意してください。この問題の回避策については、このスレッドを確認してください。
iOS 15 のインストール方法
デバイス
予備のデバイスをお持ちの場合、ベータプログラムに参加して iOS 15 をインストールできます。この時点ではベータ版リリースは一般的に安定していますが、iOS 15 へのアップグレードは元に戻せないことに注意してください。
シミュレーター
iOS 15 を搭載したシミュレーターでアプリをテストするには、Xcode 13 をダウンロードする必要があります。Xcode 13 はこちらから入手できます。
Android 12
Android 12 はこの秋にリリースされ、アプリのエクスペリエンスに影響を与える可能性のあるいくつかの変更が導入されます。Google Play では、慣例として、アプリのターゲット SDK を翌年の 11 月までにアップグレードする必要があります(以前のリリース要件についてはこちらを参照)。
注意すべき点
オーバースクロール効果
Android 12 では、すべてのスクロールコンテナに影響する新しいオーバースクロール効果が導入されます。React Native のスクロールビューはネイティブビューに基づいているため、スクロール可能なコンテナを確認して、効果が正しく適用されていることを確認することをお勧めします。これは、overScrollMode
プロパティを never
に設定することでオプトアウトできます。
権限の更新
Android 12 では、ACCESS_FINE_LOCATION
権限で要求した場合、アプリのユーザーが概算位置情報のみへのアクセスを許可できます。詳細についてはこちらをご覧ください。
Android 12 で動作するすべてのアプリに対する Google の詳細な動作変更を確認してください。
Android 12 のインストール方法
デバイス
Android の予備デバイスをお持ちの場合、こちらの手順に従って Android 12 ベータ版をインストールできるか確認してください。
エミュレーター
デバイスがない場合、こちらの指示に従ってエミュレーターをセットアップできます。