versionCompare function
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;
}
}