0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Flutterで特定のウィジェットだけエラーが出てしまう場合、channelの問題かも

Last updated at Posted at 2020-11-02

現在のchannelではサポートされていないウィジェットだった

他の人が作ったプロジェクトを自分の環境で動かそうとすると、あるウィジェット(ScaffoldMessenger)にエラーが出てしまうことがありました。
色々調べたところ、FlutterSDKのchannelの問題だったようです。

Flutterのchannelについて

詳しくはこちらの公式ページに書いてあります。
https://github.com/flutter/flutter/wiki/Flutter-build-release-channels

FlutterSDKのchannelにはmaster, dev, beta, stableの4つがあり、この順で最新機能が早く使えるようになるようです。
最新機能が使える分、masterなどは検証がまだ不十分な状態のものもあるため、安定して動かしたい製品などの場合はstableの利用が推奨されています。
まずは最新の機能がmasterに出る→少し検証されたらdevに入る→さらに検証されて毎月第一月曜日リリースのbetaに登場→そこで確認されれば四半期に一度リリースのstableへ、といった感じのようです。

リリース情報はこのページです。
https://flutter.dev/docs/development/tools/sdk/releases?tab=macos

今回は、ScaffoldMessengerはdevではリリースされていたものの、自分が使っていたstableのchannelではまだ使えなかったためにエラーが出ていました。
channelをdevに切り替えたところ解決しました。

channelの変更

ターミナルで

flutter channel dev

のように打つことでchannelを変更できます。(devの部分を任意のchannel名に変更)

また、現在のchannelは

flutter channel

で確認できます。

ちなみに、channel変更後に「一応Flutterをupgradeしといた方がいいよ」的な文言が出たので

flutter upgrade

でFlutterSDKをアップグレードしておきました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?