versionCompare function

bool versionCompare(
  1. String local,
  2. String cloud
)

Implementation

bool versionCompare(String local, String cloud) {
  try {
    List _local = local.split(".");
    List _cloud = cloud.split(".");
    if (_local.length != _cloud.length) {
      return false;
    }

    List<_CompareType> resultList = [];

    for (var i = 0; i < _local.length; i++) {
      int a = IntUtil.parse(_cloud[i]);
      int b = IntUtil.parse(_local[i]);
//      LogUtil.printLog("a: $a --- b: $b");
      if (a > b) {
        resultList.add(_CompareType.dayu);
      } else if (a == b) {
        resultList.add(_CompareType.dengyu);
      } else {
        resultList.add(_CompareType.xiaoyu);
      }
    }

    bool result = false;
    if (resultList[0] == _CompareType.dayu) {
      result = true;
    } else if (resultList[0] == _CompareType.dengyu &&
        resultList[1] == _CompareType.dayu) {
      result = true;
    } else if (resultList[0] == _CompareType.dengyu &&
        resultList[1] == _CompareType.dengyu &&
        resultList[2] == _CompareType.dayu) {
      result = true;
    } else {
      result = false;
    }
    return result;
  } catch (e) {
    return false;
  }
}