美文网首页
Build 跟Version的区别

Build 跟Version的区别

作者: coder_hong | 来源:发表于2016-10-08 09:48 被阅读40次

    打开项目->Target 可以看到一个Build号跟一个Version号 这里的信息是跟Info.plist的信息是想对应的

    Snip20161008_8.png

    我们打开Info.plist


    Snip20161008_9.png

    他们对应的关系

    Snip20161008_7.png

    代码获取他们

    • Build
    [[NSBundle mainBundle].infoDictionary objectForKey:@"CFBundleVersion"];
    
    • Version
    [[NSBundle mainBundle].infoDictionary objectForKey:@"CFBundleShortVersionString"];
    

    二者的区别

    • 普通情况下,我们只使用version即可,设置为"1.0", "1.1", "2.0" , etc,但如果你要使用两个版本号时候,需要将build设置为1,2,3...等递增的整数

    • version我们可以通过App Store、itunes或其它软件看到,是给用户看的,而build是我们在团队开发中内部只用的,只有我们自己可以看到. 比如团队打算发布1.0版本的时候,会发布很多build版本供测试或QA团队进行测试,你发布了很多build,因为一直在修改着代码,因此当你收到一条bug信息时候,你怎么知道是那个build引起的问题呢,这时候build版本号的有点就可以体现出来了

    开发技巧
    在Xcode编译时候自动增加build号码,先把 Info.plist 里的版本号改成某个数字,然后 Targets → your target → Build Phases → Run Script 的地方加上:


    屏幕快照 2016-11-09 上午9.30.58.png
    #!/bin/bash
    buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
    buildNumber=$(($buildNumber + 1))
    /usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"
    

    相关文章

      网友评论

          本文标题:Build 跟Version的区别

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