【React/Capacitor】Google Playで「APIレベル35以上を対象にする必要があります」が出た時の対処法

Androidアプリ

React + Capacitor で開発した Android アプリを Google Play ストアに公開、またはアップデートしようとした際、以下のようなエラーや警告が表示されてビルドが通らなかったり、アップロードが拒否されたりすることがあります。

現在、お客様のアプリは API レベル 34 を対象にしています。セキュリティとパフォーマンスが最適化された最新の API を利用するには、API レベル 35 以上を対象にする必要があります。

Google Play では、定期的に「対象 API レベル(targetSdkVersion)」の最低要件が引き上げられます。

今回は、React + Capacitor の環境で、対象 API レベルを 35(Android 15)に更新してこのエラーを解決する具体的な手順を解説します!

解決手順:variables.gradle を修正する

Capacitor プロジェクトにおいて、Android の SDK バージョンを管理しているのは、Android プロジェクト内にある variables.gradle というファイルです。ここを書き換えるだけで対応できます。

1. variables.gradle を開く

プロジェクトのルートディレクトリから、以下のパスにあるファイルをテキストエディタや Android Studio で開きます。

ファイルの場所: android/variables.gradle

2. コードを修正する

ファイル内にある compileSdkVersiontargetSdkVersion の値を 35 に変更します。

Gradle

ext {
    minSdkVersion = 22 // またはお使いの設定値
    compileSdkVersion = 35 // 35 に変更
    targetSdkVersion = 35  // 35 に変更
    // その他の設定
}

3. プロジェクトの同期とビルド

ファイルを保存したら、変更を Android プロジェクトに反映させます。ターミナル(コマンドライン)で以下のコマンドを実行してください。

Bash

# Webアセットのビルド(プロジェクトに応じて npm run build など)
npm run build

# Capacitorの変更をAndroidに同期
npx cap sync android

コマンド実行後、Android Studio を開き、画面右上にある 「Sync Project with Gradle Files」(象のアイコン)をクリックして Gradle の同期を行います。

同期が完了したら、通常通り .aab(Android App Bundle)をビルドして Google Play コンソールにアップロードすれば、エラーが出ずに受け付けられるようになります。

【重要】API 35(Android 15)対応時の注意点

targetSdkVersion を 35 に引き上げる際、値を変えるだけでは別のビルドエラーやアプリのクラッシュが発生する場合があります。以下の 2 点も合わせて確認しておきましょう。

① Capacitor 本体のバージョンを最新にする

古いバージョンの Capacitor を使ったまま API 35 を対象にすると、互換性の問題でビルドが失敗することがあります。Android 15(API 35)に対応するためには、Capacitor も対応したバージョン(Capacitor 6 の最新パッチ、またはそれ以降)にアップデートすることを強く推奨します。

Bash

# Capacitor 関連のパッケージを最新にする
npm install @capacitor/core@latest @capacitor/cli@latest
npm install @capacitor/android@latest

# 状態を確認
npx cap doctor

② 各種プラグインのアップデート

カメラ、位置情報、プッシュ通知など、ネイティブ機能を使う Capacitor プラグイン(または Cordova プラグイン)を利用している場合、それらが Android 15 の新しいセキュリティ仕様や権限(パーミッション)に対応している必要があります。

主要なプラグイン(例: @capacitor/camera@capacitor/geolocation など)も、合わせて最新バージョンに更新しておくと安心です。

まとめ

Google Play の API レベル引き上げ要求は、Capacitor 環境であれば android/variables.gradle の数値を変更することでスムーズに対処できます。

  • compileSdkVersion = 35
  • targetSdkVersion = 35

これらをセットで変更し、Capacitor 自体も最新に保つことで、安全に最新の Android 環境に対応したアプリを配信できます。同じエラーで困っている方の参考になれば幸いです!

コメント

タイトルとURLをコピーしました