もう古いバージョンのReact NativeはNG!Android 14対応アプリ開発のすべて
Android 14 をターゲットとする React Native アプリの開発方法
2024年8月31日以降、Google Play ストアに新規または更新アプリを公開するには、Android 14 (API レベル 34) をターゲットとする必要があります。これは、React Native を使用したアプリにも適用されます。
この変更により、開発者は以下の点に注意する必要があります。
- React Native SDK のバージョン: React Native 0.68 以降を使用する必要があります。古いバージョンの SDK は、Android 14 で動作しない可能性があります。
- AndroidManifest.xml ファイル: 必要な権限と API を宣言する必要があります。Android 14 で導入された新しい権限や API を使用する場合は、それらを宣言する必要があります。
- コード: Android 14 での変更に対応するために、コードを更新する必要があります。たとえば、非推奨の API を使用している場合は、新しい API に置き換える必要があります。
React Native アプリを Android 14 をターゲットとする方法
以下の手順に従って、React Native アプリを Android 14 をターゲットとするように更新できます。
- React Native のバージョンを確認する
react-native --version
このコマンドを実行すると、現在インストールされている React Native のバージョンが表示されます。0.68 以上の場合、アップグレードする必要はありません。
- React Native をアップグレードする
古いバージョンの React Native を使用している場合は、アップグレードする必要があります。以下のコマンドを実行してアップグレードできます。
npm install --save react-native@latest
- AndroidManifest.xml ファイルを更新する
必要な権限と API を宣言するように AndroidManifest.xml
ファイルを更新する必要があります。Android 14 で導入された新しい権限や API を使用する場合は、それらを宣言する必要があります。
- コードを更新する
Q: React Native 0.67 以前のバージョンを使用している場合はどうすればよいですか?
A: 2024年8月31日以降、Google Play ストアに新規または更新アプリを公開することはできません。古いバージョンの React Native を使用している場合は、アップグレードする必要があります。
Q: どの権限と API が Android 14 で必要ですか?
react-native --version
npm install --save react-native@latest
以下のコードを追加して、必要な権限と API を宣言します。
<uses-sdk
android:minSdkVersion="34"
android:targetSdkVersion="34" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
この例では、CAMERA
と RECORD_AUDIO
の権限を宣言しています。アプリで他の権限や API を使用する場合は、それらをこのセクションに追加する必要があります。
Android 14 で非推奨となった API を使用している場合は、新しい API に置き換える必要があります。たとえば、以下のコードは android.support.v4.content.ContextCompat.getColor
を使用していますが、これは Android 14 で非推奨となっています。
const color = ContextCompat.getColor(this, R.color.primary);
このコードを以下のように置き換える必要があります。
const color = this.getResources().getColor(R.color.primary);
この例では、非推奨の ContextCompat.getColor
API を新しい getResources().getColor
API に置き換えています。コードを更新する際は、同様に変更する必要がある箇所がないか確認してください。
Expoは、React Native開発を容易にするプラットフォームです。Expoには、Android 14を含むさまざまなバージョンのAndroidをターゲットとするためのツールが含まれています。
Expoを使用するには、以下の手順に従います。
- Expo CLIをインストールします。
- 新しいExpoプロジェクトを作成します。
expo build
コマンドを実行して、アプリをビルドします。
Expoを使用すると、Android 14をターゲットとするために手動で変更を行う必要がなくなります。
Bitrise を使用する
Bitriseは、CI/CD(継続的インテグレーションと継続的デリバリー)ツールです。Bitriseを使用して、アプリを自動的にビルドしてデプロイできます。
- Bitriseアカウントを作成します。
- 新しいBitriseワークフローを作成します。
- ワークフローに、アプリをビルドしてデプロイするステップを追加します。
Bitriseを使用すると、開発プロセスを自動化し、Android 14を含むさまざまなプラットフォームでアプリをデプロイすることができます。
React Native Upgrade Tool を使用する
React Native Upgrade Toolは、React Nativeアプリを新しいバージョンにアップグレードするためのツールです。このツールを使用して、Android 14をターゲットするようにアプリをアップグレードできます。
React Native Upgrade Toolを使用するには、以下の手順に従います。
- React Native Upgrade Toolをインストールします。
- 以下のコマンドを実行して、アプリをアップグレードします。
react-native-upgrade --target-version 0.69
android react-native sdk