Flutter版本管理插件pub_version_plus的使用

发布于 1周前 作者 sinazl 来自 Flutter

Flutter版本管理插件pub_version_plus的使用

简介

pub_version_plus 是一个命令行工具,用于轻松地递增 pubspec.yaml 文件中的版本号。它支持四种类型的版本更新:majorminorpatchbuild

Pub Package Dart Version GitHub issues

关于版本号

pubspec.yaml 文件中,版本号的格式为 version: 0.0.0+000,其中:

“0.0.0”

  • 名称
    • iOS: CFBundleShortVersionString (版本号)
    • Android: versionName
  • 详情
    • 可以重复使用(与不同的构建号)
    • 必须总是大于之前的版本号

“000”

  • 名称
    • iOS: CFBundleVersion (构建号)
    • Android: versionCode
  • 详情
    • 不能重复使用(在同一版本号下)
    • 必须总是大于之前的构建号(在同一版本号下)
    • 如果版本号递增,则可以重置为 0

更多关于版本号的详细信息,请参考 Android | Apple

安装

pub_version_plus 可以全局安装或作为开发依赖项添加到 pubspec.yaml 文件中。

全局安装

$ pub global activate pub_version_plus
#! 或者
$ flutter pub global activate pub_version_plus

作为库使用

#! dart
$ dart pub add --dev pub_version_plus

#! flutter
$ flutter pub add --dev pub_version_plus

或者直接在 pubspec.yaml 文件中添加:

dev_dependencies:
  pub_version_plus:

使用方法

pub_version_plus 支持以下四种命令:

  • major: 增加主版本号 - X.0.0
  • minor: 增加次版本号 - 0.X.0
  • patch: 增加修订版本号 - 0.0.X
  • build: 增加构建号 - 0.0.0+X

根据安装方式的不同,使用方法也有所不同:

全局安装

$ pubversion <version-type>

作为开发依赖项安装

#! Flutter
$ flutter pub run pub_version_plus:main <version-type>

#! Dart
$ dart pub run pub_version_plus:main <version-type>

pub_version_plus 作为开发依赖项安装后,可以在任何 CI/CD 工具中使用(如 GitHub Actions, CodeMagic 等)。

示例

Major

增加主版本号:

test_package upgraded from 1.2.1 to 2.0.0

#! 包含构建号
test_package upgraded from 1.2.1+2 to 2.0.0+0

Minor

增加次版本号:

test_package upgraded from 1.0.1 to 1.1.0

#! 包含构建号
test_package upgraded from 1.0.1+3 to 1.1.0+0

Patch

增加修订版本号:

test_package upgraded from 1.0.0 to 1.0.1

#! 包含构建号
test_package upgraded from 1.0.0+4 to 1.0.1+0

Build

增加构建号:

test_package upgraded from 1.0.0+4 to 1.0.0+5

示例代码

以下是 pub_version_plus 的完整示例代码,包含如何在项目中集成和使用该插件:

1. 创建一个新的 Flutter 项目

$ flutter create my_app
$ cd my_app

2. 添加 pub_version_plus 作为开发依赖项

编辑 pubspec.yaml 文件,添加以下内容:

dev_dependencies:
  pub_version_plus:

3. 运行 flutter pub get 获取依赖项

$ flutter pub get

4. 使用 pub_version_plus 更新版本号

例如,增加次版本号:

$ flutter pub run pub_version_plus:main minor

这将自动更新 pubspec.yaml 文件中的版本号,并输出更新后的版本信息。

通过以上步骤,您可以轻松地管理和更新 Flutter 项目的版本号。希望这些信息对您有所帮助!


更多关于Flutter版本管理插件pub_version_plus的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter版本管理插件pub_version_plus的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,关于Flutter版本管理插件pub_version_plus的使用,以下是一个基本的代码案例来展示如何集成和使用这个插件。

首先,你需要在你的pubspec.yaml文件中添加对pub_version_plus的依赖。确保你的Flutter项目根目录下有这个文件,并添加以下依赖:

dependencies:
  flutter:
    sdk: flutter
  pub_version_plus: ^x.y.z  # 请替换为实际的最新版本号

然后,运行flutter pub get来安装依赖。

接下来,在你的Flutter项目中,你可以使用PubVersionPlus类来获取当前项目的pub版本信息。下面是一个简单的示例,展示了如何在Flutter应用中显示当前项目的版本号:

import 'package:flutter/material.dart';
import 'package:pub_version_plus/pub_version_plus.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  String? appVersion;

  @override
  void initState() {
    super.initState();
    // 获取当前项目的版本号
    _fetchAppVersion();
  }

  Future<void> _fetchAppVersion() async {
    try {
      String version = await PubVersionPlus.getVersion();
      setState(() {
        appVersion = version;
      });
    } catch (e) {
      print("Error fetching app version: $e");
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter Demo'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'App Version:',
              style: TextStyle(fontSize: 20),
            ),
            SizedBox(height: 10),
            Text(
              appVersion ?? 'Loading...',
              style: TextStyle(fontSize: 24, fontWeight: FontWeight.bold),
            ),
          ],
        ),
      ),
    );
  }
}

在这个示例中,我们做了以下几件事:

  1. pubspec.yaml中添加了pub_version_plus依赖。
  2. 使用PubVersionPlus.getVersion()异步方法获取当前项目的版本号。
  3. 在UI中显示获取到的版本号。

确保你已经按照上述步骤正确配置了依赖,并且已经运行了flutter pub get。然后,运行你的Flutter应用,你应该能看到当前项目的版本号显示在屏幕上。

这个示例只是一个简单的演示,你可以根据需要进一步扩展和修改。

回到顶部