【Flutter】Flutter3.3.0にアップデートするためにしたことをまとめてみたよ

Dart

概要

どうも、@daiki1003です!

恒例のアップデート対応シリーズです!

これからあげようと思ってるけど大変なのかな?
何を変えるんだろう?
と思っている方の参考になれば幸いです!

早速行ってみましょー!

筆者環境

OS: macOS Monterey 12.4
アップデート前バージョン: Flutter 3.0.5

アップデート内容の紹介

no_leading_underscores_for_local_identifiers

no_leading_underscores_for_local_identifiers

Dartprivateであることのシンボルとしてプレフィックスに_を置きます。
なので、コードリーディングしている人は_を見ると、privateなんだな、って思います。
一方、ローカル変数やパラメタにprivateという概念はありません。
そんなローカル変数やパラメタに_を付けているから外してね、という警告です。

Before

Widget build(BuildContext context) {
  final _hoge = ...;
  void _incrementCounter() {
    value++;
  }

  return GestureDetector(
    onTap: _incrementCounter,
    child: ...,
  );
}

After

Widget build(BuildContext context) {
  final hoge = ...;
  void incrementCounter() {
    value++;
  }

  return GestureDetector(
    onTap: incrementCounter,
    child: ...,
  );
}

なお、buildメソッド内にメソッド定義できるんだ?と思った方はこちらの記事もどうぞ。

【Flutter】メソッド内メソッドを使いこなそう 初心者脱出編 1/8
Flutter楽しんでますか? 僕は相変わらず楽しんでます笑 さて、皆様は自分が書くFlutterのコードに満足していますか? 満足している方はこのブログは読まなくても大丈夫だと思います笑 むしろ僕に教えてください! ...

avoid_redundant_argument_values

avoid_redundant_argument_values

デフォルト値として、設定しているものを敢えて指定しないでね、という警告です。

この警告自体は前から有効にはなっているのですが、Flutterのアップデートにより、デフォルト値が
変更された場合や新たに追加された場合に起きることがあります。

Before

showModalBottomSheet<void>(
  ...,
  enableDrag: true,
);

After

showModalBottomSheet<void>(
  ...,
);

deprecated_member_use

Diagnostic messages
Details for diagnostics produced by the Dart analyzer.

新たにdeprecatedとなったメソッドやパラメタがあるから新たに用意したものを使ってね、という警告です。

今回は、ElevatedButton.styleFrom(primary:)で怒られていました。

Before

ElevatedButton(
  style: ElevatedButton.styleFrom(
    onPrimary: Colors.white,
    primary: Colors.blue,
  ),
)

After

ElevatedButton(
  style: ElevatedButton.styleFrom(
    foregroundColor: Colors.white,
    backgroundColor: Colors.blue,
  ),
)

CI/CD

最後に、もしお使いのCI/CDでFlutterのバージョンを指定しているところがあったらお忘れなく!

最後に

これで、無事CIが通ってくれました。
まだ、何かありましたら追加したいと思います。

また、自分のプロジェクトではこんな対応もしたよーなどありましたら
教えていただけると嬉しいです!

本ブログではFlutterのアップデートに対して、
本記事の様な、対応時の変更点をまとめた記事を更新しています。

まだの方はTwitterをフォローしていただけると嬉しいです!

誰かのお役に立てば。

Twitterフォローお願いします

「次回以降も記事を読んでみたい!」
「この辺分からなかったから質問したい!」

そんな時は、是非Twitter (@daiki1003)Instagram (@ashdik_flutter)のフォローお願いします♪

Twitterコミュニティ参加お願いします

Twitterコミュニティ「Flutter lovers」を開設しました!
参加お待ちしております😁

☕️ Buy me a coffee

また、記事がとても役に立ったと思う人は
コーヒーを奢っていただけると非常に嬉しいです!

コメント

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