Как получить сборку и номер версии приложения Flutter

В настоящее время я разрабатываю приложение, которое в настоящее время находится в бета-режиме. В связи с этим я хотел бы показать им, в какой версии они находятся. Например, "v1.0b10 - iOS". Пока у меня есть этот код: Text("Build: V1.0b10 - " + (Platform.isIOS? "iOS": "Android")). Как я смогу получить версию и номер сборки внутри флаттера?

Ответ 1

Вы можете использовать package_info.

Версии извлечены из:

Android:

build.gradle  , versionCode and versionName

IOS:

Info.plist  , CFBundleVersion

использование

Добавить зависимость

  1. Добавьте это в ваш пакет pubspec.yaml:
dependencies:
  package_info: ^0.4.0+3
  1. Импортируйте файл в ваш файл дартс:
import 'package:package_info/package_info.dart';
  1. если ваш метод помечен как async
PackageInfo packageInfo = await PackageInfo.fromPlatform();

String appName = packageInfo.appName;
String packageName = packageInfo.packageName;
String version = packageInfo.version;
String buildNumber = packageInfo.buildNumber;

Если вы не хотите использовать away/async

PackageInfo.fromPlatform().then((PackageInfo packageInfo) {
  String appName = packageInfo.appName;
  String packageName = packageInfo.packageName;
  String version = packageInfo.version;
  String buildNumber = packageInfo.buildNumber;
});

Ответ 2

Это более подробный ответ для будущих посетителей.

Существует плагин, который поможет вам получить название и номер версии.

Добавить зависимость

В pubspec.yaml добавить package_info пакет.

dependencies:
  package_info: ^0.4.0+3

Обновите номер версии до текущей.

Импортировать пакет

В файл, который вам нужен, добавьте следующий импорт.

import 'package:package_info/package_info.dart';

Получить название версии и код

В вашем коде вы можете получить название и код версии приложения:

PackageInfo packageInfo = await PackageInfo.fromPlatform();
String versionName = packageInfo.version;
String versionCode = packageInfo.buildNumber;

Смотрите также