zoukankan      html  css  js  c++  java
  • iOS 版本号Version和Build的区别

    一个version,一个build,都是设置版本的地方,有什么区别呢?

    在ios中(Android等工程中也一样),有两种version,一种是 CFBundleVersion ("Bundle Version"),也就是我们看到的version,另一种是CFBundleShortVersionString ("Bundle version string, short"),也就是我们看到的Build。

    普通情况下,我们只使用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版本号的有点就可以体现出来了

    当前运行版本信息可以通过info.plist文件中的bundle version中获取:

    NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];   

        CFShow(infoDic);      

    可以自己输出看一下CFShow打印出来的时什么

    下面的代码是如果你想在UI上展示给用户看的获取Version的代码,对比是否升级也是通过version对比,而不是build,也是用下面代码

     NSString  * appVersion = [[NSBundle mainBundle]objectForInfoDictionaryKey:(NSString *)kCFBundleVersionKey];

    =============================================================

    version是app发布时用户看到的版本号。

    build的为了方便开发者多次提交binary, 比如被苹果reject后。

    例如,第一次提交version和build都是1.0.

    假如审核没过,那么修改代码后新的构建的version还是1.0,build改为1.0.1就ok了。

    这是一个很显而易见的区别,但我之前一直就没留意到. >_<

  • 相关阅读:
    Django学习:博客分类统计(14)
    Django学习:上下篇博客和按日期分类(13)
    Django学习:分页优化(12)
    Django学习:shell命令行模式以及分页(11)
    Django学习:博客页面的响应式布局(10)
    Django学习:响应式导航条(9)
    八、Django学习:使用css美化页面
    七、Django学习:模板嵌套
    js日期使用总结
    Vue 的数据劫持 + 发布订阅
  • 原文地址:https://www.cnblogs.com/yeng/p/5610280.html
Copyright © 2011-2022 走看看