概要
fvmをAndroid Studioで使用し、fvm global等でバージョン指定を変更した際、Flutter SDKだけでなくDart sdkの指定も注意しましょう。
flutter --verisonコマンドと実態が合わなくなる場合があります。筆者は以下のようなことを経験し、何時間かハマりました。。。
・チーム開発で自分だけビルドができない。バージョン揃えているつもりだが、実際にはそう見えているだけ。引数がチームメンバと異なるなど。
・Dart SDKのバージョンが正しく設定されているはずなのに使用したいAPIが利用できない(例えば、以下エラー文が表示される)
The current Dart SDK version is x.x.x
Because material_banner requires SDK version >=x.x.x <3.0.0, version solving failed.
pub get failed (1; Because material_banner requires SDK version >=x.x.x <3.0.0, version solving failed.)
確認方法
##①Flutter SDKのバージョンを確認
flutter --versionで指定したバージョンになっているかを確認
$ flutter --version
Flutter 2.5.1 • channel stable • https://github.com/flutter/flutter.git
Framework • revision ffb2ecea52 (5 days ago) • 2021-09-17 15:26:33 -0400
Engine • revision b3af521a05
Tools • Dart 2.14.2 ←🌟🌟🌟ただし、これを見て安心してはいけない!!!🌟🌟🌟
念のため、Android Studioのバージョンも確認する
Android Studio > Preferences > Languages & Frameworks > Flutter
※注: 既存プロジェクトのみ(新規PJ作成時には[Flutter][Dart]の項目は表示されない)
##②Dart SDKのバージョンを確認する
※Flutterのバージョンについては、flutter --versionでケアできますが、Dart SDKは結構忘れがちなので要注意だと思います。
Android Studio > Preferences > Languages & Frameworks > Dart
画像だと見にくいかもしれないので、パスも念のため記載しておきます。
/Users/xxxxxxxxx/fvm/versions/x.x.x/bin/cache/dart-sdk
皆さんも筆者が経験したようなことが実際に起きたら、ぜひ一度お試しください。