[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

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

(注)以下のフォームより当社公式メールマガジンにご登録頂くことで
約6時間のFlutter動画講座が無料で受講できます!

(メールマガジンは登録無料・いつでも解除可)

[体験版]
ゼロからのFlutter
(Flutter初級編) 

 

【体験版講座に含まれるもの】
・約70本・約6時間の動画テキスト
・1つの課題アプリのソースコード
・Flutterアプリを作るための「環境構築ライブサポート(Google Meet)」
(「体験版」は全30時間超の「製品版」の約1/6を抜粋した講座です。「製品版」の詳細はこちらから)

 

【当社公式メルマガご登録6大特典】
blank

\約6時間動画講座を無料プレゼント!/
今すぐ無料体験版に申し込む ▶
無料メルマガ登録で講座割引クーポンなど6大特典ゲット!

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

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

はじめての方へ

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

みんプロ作成アプリ

blank
blank
blank
blank
blank

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

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

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

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

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