[Flutter/Android]「エラー: シンボルを見つけられません・・・場所: クラス VERSION_CODES.○」の対処法

FlutterのプロジェクトをAndroidアプリとして実行しようとすると、まれに

Running Gradle task 'assembleDebug'...
/Users/***/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_android-2.1.0/android/src/main/java/com/baseflow/geolocator/location/LocationMapper.java:29: エラー: シンボルを見つけられません
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
                                                    ^
  シンボル:   変数 S
  場所: クラス VERSION_CODES

という意味不明なエラーが出て、ビルドに失敗する場合があります。

blank

これは、Androidのネイティブコードを操作しているFlutterのプラグイン(≠パッケージ)を入れている場合(geolocatorや音再生関係のパッケージ等)に起こりうるのですが、

(注)Flutterにおける「プラグイン(Plugin)」とは、「Dartコードで書かれたAPIと1つ以上のプラットフォーム固有の実装を組み合わせたもの」を指します。

A specialized Dart package that contains an API written in Dart code combined with one or more platform-specific implementations. Plugin packages can be written for Android (using Kotlin or Java), iOS (using Swift or Objective-C), web, macOS, Windows, or Linux, or any combination thereof.

この例でいうと、Flutterで位置情報を取得するためのパッケージである「geolocator」が、Androidのネイティブ側のコードで「Build.VERSION_CODES.S」を参照しているが、それが見つけられないという参照エラーが起こっていることを示していますので、

(注)VERSION_CODES.Sの「S」はAPIレベル「31」を指します。英文字と数字の対応表は以下の通り

blank

「android/app/build.gradle」ファイルから、「compileSdkVersion」と「targetSdkVersion」の数値を「VERSION_CODES.」の「」に対応するAPIレベルの数値に変更してやるとエラーが解消します(この例の場合は「S」なので「31」)。

blank

(詳しくは、以下の動画で解説していますので、よろしければご覧下さい)

blank

こんな記事も読まれています

今すぐプレゼントを受け取る(約6時間のFlutter初級編体験版動画講座を無料でプレゼント)

はじめての方へ

blank
みんプロ式プログラミング講座体系・ラインナップ
みんプロ式プログラミング講座受講の流れ(割引特典利用方法)
サイトマップ(みんプロHPコンテンツ一覧)
運営会社概要

おすすめコンテンツ

プログラミングを学ぶとどんないいことがあるのか
みんプロ式を選んでいただける6つの理由
ぼくの人生挫折ヒストリー(代表者プロフィール)
ぼくのプログラミング挫折ヒストリー(無料メール講座・6大特典付き)
今最も注目のアプリ開発ツール「Flutter(フラッター)」ミニ動画講座

みんプロ式動画講座(コア・Flutter)

ゼロからのFlutter(初級編)-はじめてのプログラミングからアプリリリースまで-
Flutter中級編1-Web通信・設計・状態管理・DIの基礎-
Flutter中級編2-Firebase/地図・カメラ連携等の基礎-
Flutter中級編3-広告/アプリ内課金等の基礎-
Flutter中級編4-Webアプリとレスポンシブデザインの基礎-

みんプロ式動画講座(サテライト)

Flutter/Dartトラブルシューティング・小ネタ集(コア初級編受講で無料プレゼント)
ゼロからのGit・GitHub(コマンドラインツールを極力使わないバージョン管理入門)
Flutter/Dartにおける設計・状態管理・DIの解説集
blank

みんプロ式対面講座(Zoom)

反転授業型3ヶ月集中グループコース(対面講座)
アプリ作成サポート型マンツーマンコース(対面講座)

みんプロ作成アプリ

blank
blank
blank
blank

TOP