8
4

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.

既存プロジェクトを Flutter2.0 向けにアップデート対応してみた

Posted at

さて、Flutter2.0 がリリースされましたね。

Flutter 2.0.0 release notes - Flutter

そこで既存の Flutter のプロジェクトにて、Flutter2.0 向けにアップデート対応をしましたので、備忘録として手順をまとめておきます。

手順

Flutter および各パッケージのバージョンアップ

ターミナル等でプロジェクトのルートに移動し、下記の 3 つのコマンドを実行します。

cd [プロジェクトのパス]
flutter pub upgrade
flutter pub outdated
flutter pub upgrade --major-versions

これにより、Flutter のアップデートおよびプロジェクト内で使用しているパッケージのバージョンも更新されます(pubspec.yamlが自動的に書き変わります)。
ですが、私の環境ではflutter pub upgradeコマンドを実行した際、下記のようなエラーが出ました。

flutter pub upgrade
Resolving dependencies...
Because god_voice_flutter depends on flutter_localizations any from sdk which depends on intl 0.17.0, intl 0.17.0 is required.
So, because god_voice_flutter depends on intl ^0.16.1, version solving failed.
pub finished with exit code 1

この場合、エラー文通りにintlのバージョンを修正し、flutter pub getコマンドを実行すれば大丈夫です。

pubspec.yaml
dependencies:
  intl: ^0.17.0

Web でビルドするための設定を行う

ターミナル等でプロジェクトのルートに移動し、下記の 2 つのコマンドを実行します。

cd [プロジェクトのパス]
flutter config --enable-web
flutter create --org [アプリのパッケージ名] .

1 つ目のコマンドで Web 版への対応を有効にし、2 つ目のコマンドでプロジェクトを再構築します。
これにより、main.dartおよび、web フォルダとその配下にファイル群が生成されます。

1.png

アプリを実行する際、デバイスとして Chrome(web)が選べるようになるはずです。

まとめ

既存プロジェクトを Flutter2.0 向けにアップデート対応してみました。
対応自体は基本的にコマンドを実行していくだけなので、さほど難しくはなかったです。
ただ、既存プロジェクトですとだいぶ影響が大きい(使用しているパッケージが Web に対応していないなど)ため、初期段階で早めに対応すると良さそうです。

参考 URL

8
4
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
8
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?