Flutter应用更新插件updatermaster的使用

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

Flutter应用更新插件updatermaster的使用

UpdaterMaster

由 💙 Hossein Valipour (Hosivay) 开发

版本支持

版本 星标

一个用于检查应用程序新版本的包。

平台支持

Android iOS MacOS Web Linux Windows

入门指南

在你的 pubspec.yaml 文件中添加 updatermaster 作为依赖:

dependencies:
   updatermaster: ^0.0.2

使用 flutter pub get 更新你的包。

使用方法

通过GitHub检查更新

你可以使用 UpdaterMaster 从GitHub仓库查询程序的新版本信息。

import 'package:updatermaster/updatermaster.dart';

...

Future<bool>? _checker;

[@override](/user/override)
void initState() {
  _checker = UpdaterMaster.withGithub(
    repo: "https://github.com/username/repo", // 替换为你的GitHub仓库地址
    version: "v1.3.0" // 当前程序版本号
  );
  super.initState();
}

...

FutureBuilder(
  future: _checker,
  builder: (context, snapshot) {
    if (snapshot.data == true) {
      return const Text("有新版本可用");
    } else {
      return const Text("当前版本已是最新的");
    }
  },
),

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

1 回复

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


当然,关于在Flutter应用中使用updatermaster插件来实现应用更新的功能,下面是一个基本的代码示例。这个示例将展示如何集成updatermaster插件,并检查应用的更新。

首先,确保你已经在pubspec.yaml文件中添加了updatermaster依赖:

dependencies:
  flutter:
    sdk: flutter
  updatermaster: ^最新版本号  # 请替换为实际的最新版本号

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

接下来,在你的Flutter应用中,你可以按照以下步骤使用updatermaster插件:

  1. 初始化插件并检查更新

在你的主文件(通常是main.dart)中,你可以初始化UpdaterMaster并检查是否有新的更新可用。

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

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

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  UpdaterMaster? updaterMaster;

  @override
  void initState() {
    super.initState();
    // 初始化UpdaterMaster
    updaterMaster = UpdaterMaster(
      context: context,
      appID: "你的应用ID", // 替换为你的应用ID
      androidStoreLink: "https://play.google.com/store/apps/details?id=你的包名", // 替换为你的Google Play商店链接
      iosStoreLink: "https://apps.apple.com/app/你的应用名/id你的应用ID", // 替换为你的App Store链接
      showDialog: true, // 是否显示更新对话框
      mandatoryUpdate: false, // 是否强制更新
      autoCheck: true, // 是否自动检查更新
      newVersionAvailable: (version) {
        // 当有新版本可用时回调
        print("新版本可用: $version");
      },
      noUpdateAvailable: () {
        // 当没有新版本可用时回调
        print("没有新版本可用");
      },
      updateNow: () async {
        // 用户点击立即更新时的回调
        try {
          bool result = await updaterMaster!.updateApp();
          if (result) {
            print("更新成功");
          } else {
            print("更新失败");
          }
        } catch (e) {
          print("更新过程中发生错误: $e");
        }
      },
    );

    // 检查更新
    updaterMaster!.checkUpdate();
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('UpdaterMaster 示例'),
        ),
        body: Center(
          child: Text('检查应用更新...'),
        ),
      ),
    );
  }

  @override
  void dispose() {
    // 释放资源
    updaterMaster?.dispose();
    super.dispose();
  }
}

在这个示例中,我们初始化了UpdaterMaster实例,并设置了相关参数,如应用ID、商店链接、是否显示更新对话框、是否强制更新等。我们还定义了几个回调方法,用于处理新版本可用、没有新版本可用以及用户点击立即更新等情况。

  1. 处理更新对话框

UpdaterMaster插件会自动处理更新对话框的显示。当用户打开应用时,如果检测到有新版本可用,插件会弹出一个对话框提示用户更新。用户可以选择“稍后更新”或“立即更新”。

  1. 强制更新

如果你需要将更新设置为强制更新,只需将mandatoryUpdate参数设置为true。这样,当用户打开应用时,如果检测到有新版本可用,他们将无法继续使用旧版本,必须更新后才能使用应用。

请注意,上述代码示例是基于updatermaster插件的假设用法。由于插件的具体实现和API可能会随着版本的更新而发生变化,因此在实际使用时,请务必参考插件的官方文档和最新版本的API说明。

回到顶部