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

版本号判断问题

作者: 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