【Flutter】2.10.0に対応するためにしたこと

Dart

概要

どうも、@daiki1003です!

Flutter2.10が正式リリースされました! 🎉

今回の記事では、Flutter2.8.1からFlutter2.10への
アップデート時に対応したことを書いておいたので何かの参考になれば幸いです。

Flutter2.10のダウンロードなどは割愛しています。

Android project migration

FlutterApplicationの置換

まず、最初に以下のように怒られ、 flutter pub getも成功しない状況でした。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Warning
──────────────────────────────────────────────────────────────────────────────
Your Flutter application is created using an older version of the Android
embedding. It is being deprecated in favor of Android embedding v2. Follow the
steps at

Upgrading pre 1.12 Android projects · flutter/flutter Wiki
Flutter makes it easy and fast to build beautiful apps for mobile and beyond - Upgrading pre 1.12 Android projects · flutter/flutter Wiki
to migrate your project. You may also pass the --ignore-deprecation flag to ignore this check and continue with the deprecated v1 embedding. However, the v1 Android embedding will be removed in future versions of Flutter. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ The detected reason was: /path/to/project/android/app/src/main/AndroidManifest.xml uses `android:name="io.flutter.app.FutterApplication"` ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

なので、

io.flutter.app.FutterApplicationの部分を${applicationName}に変更しました。

FlutterEmbedding

This app is using a deprecated version of the Android embedding.
To avoid unexpected runtime failures, or future build failures, try to migrate this app to the V2 embedding.
Take a look at the docs for migrating an app: https://github.com/flutter/flutter/wiki/Upgrading-pre-1.12-Android-projects
The plugin `firebase_analytics` requires your app to be migrated to the Android embedding v2. Follow the steps on https://flutter.dev/go/android-project-migration and re-run this command.

と言われていました。

AndroidManifest.xml

<meta-data
    android:name="flutterEmbedding"
    android:value="2" />

の記述を入れることで解決しました!

body_might_complete_normally_nullable

flutter_hooksの、 useEffectの第一引数の関数は
本来であれば、dispose時に呼び出すべきメソッドを返すべきです。
が、これを記述していない箇所があり、指摘されていました。

return nullなどを記述することにより解決。

誰かのお役に立てば。

Twitterフォローお願いします

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

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

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

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

☕️ Buy me a coffee

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

コメント

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