美文网首页
版本号判断问题

版本号判断问题

作者: ImmortalSummer | 来源:发表于2017-07-27 19:50 被阅读0次

背景:客户端接收到服务端返回的线上版本号, 客户端判断线上版本是否比当前版本新, 如果存在新的版本号, 客户端需要弹出提示框提示用户下载新的客户端.
之前的代码是这样写的:

CGFloat service = [model.version floatValue];
CGFloat local = [[UserLoginHelper sharedInstance].systemVersion floatValue];
if (service > local) {
    model.isHaveNewVersion = YES;
}

这样写出现的问题是:
当版本号 为 **.**.** 的样式时, 比如 1.20.22 时, 转化成float再比较大小的方法就不可行了.改进后的代码如下:

改进后的代码

NSString *localVison = @"1.11.20";
NSString *servceVison = @"2.11.20";
if (servceVison && ([servceVison compare:localVison] == NSOrderedDescending)) {
    isHaveNewVersion = YES;
}
NSLog(@"是否存在新版本:%@",isHaveNewVersion?@"是":@"否");

相关文章

网友评论

      本文标题:版本号判断问题

      本文链接:https://www.haomeiwen.com/subject/xhrtlxtx.html