[Flutter] 检测新版本封装类


检测新版本

思路

将“1.0.1”的string分离并存入列表,再根据列表的index进行判断,

分离后列表的值也是string,所以需要转int再进行判断。

封装类

class CheckVersion {
    static bool isNew = false;
    static isNewVersion(version, newversion) {
        List verList = version.split('.');
        List newVerList = newversion.split('.');
        if (int.parse(newVerList[0]) > int.parse(verList[0])) {
            isNew = true;
        } else if (int.parse(newVerList[0]) == int.parse(verList[0])) {
            if (int.parse(newVerList[1]) > int.parse(verList[1])) {
                isNew = true;
            } else if (int.parse(newVerList[1]) == int.parse(verList[1])) {
                if (int.parse(newVerList[2]) > int.parse(verList[2])) {
                    isNew = true;
                }
            }
        }
        return isNew;
    }
}

调用

import 'CheckVersion.dart';

void main(List args) {
    String version = "1.0.1";
    String newversion = "2.1.0";
    print(CheckVersion.isNewVersion(version, newversion));//true
}

相关