[Flutter] pubspec.yamlからアプリ情報(バージョン等)を取得する【2022年4月版】

Fltuterを使用していて、起動画面にアプリのバージョンを表示したかったので検索した。package_infoを使え、とあったが、WEBで実施すると動作しなかった。パッケージのページを確認すると「DISCONTINUED」だった。Webのみならず、iOSやAndroidでも使わない方がよさそう。
後継のパッケージとして、「package_info_plus」があったので使用した。互換性が保たれているので、パッケージをインストールして、import先を変更すれば、そのまま使える。

インストール

flutter pub add package_info_plus
flutter pub get

コード

  import 'package:package_info_plus/package_info_plus.dart';
PackageInfo packageInfo = await PackageInfo.fromPlatform();

  print(packageInfo.appName);
  print(packageInfo.packageName);
  print(packageInfo.version);
  print(packageInfo.buildNumber);

取得箇所

Flutter Web実施時に取得できた値

  • appName: pubspec.yamlのname
  • packageName: pubspec.yamlのname
  • version: pubspec.yamlのversionの+より前(1.0.4+2)
  • buildNumber: pubspec.yamlのversionの+より後ろ(1.0.4+2)

参考

package_info_plus の公式ページ