iOS 中的 CFBundleShortVersionString 与 CFBundleVersion

时间:2022-07-23
本文章向大家介绍iOS 中的 CFBundleShortVersionString 与 CFBundleVersion,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

iOS 中的 CFBundleShortVersionString 与 CFBundleVersion

iOS 开发中经常看到 CFBundleShortVersionString 和 CFBundleVersion 两个都可以用来标识应 用版本号的变量, 究竟应该用哪个呢? 下面就一探究竟。

CFBundleShortVersionString

CFBundleShortVersionString (String - iOS, OS X) 表示 bundle 发布版本号, 标识应 用的一个发布迭代。 发布版本号是由三个用句点 . 分割的整数组成的字符串, 第一个数字是主版本 号,表示重要的功能或重大的更新, 第二个数字表示次要功能的更新,第三个数字表示维护更新, 具体规则也可以参考语义化版本

这个值与表示应用构建迭代(包括发布与未发布)的 CFBundleVersion 的值不同, 并且这个值可以 被包含在 InfoPlist.strings 文件中进行本地化。

查看 CFBundleShortVersionString 的苹果开发者文档。

CFBundleVersion

CFBundleVersion (String - iOS, OS X) 表示 bundle 构建迭代的版本号(发布与未发布), 命名规则与 CFBundleShortVersionString 相同, 并且只能包含数字 (0-9) 和 句点 (.) , 整数开头部分的 0 会被忽略,比如: 1.02.31.2.3 相同。 这个值不能被本地化。

查看 CFBundleVersion 的苹果开发者文档。

这两个值的对比如下:

Key

Xcode name

Summary

CFBundleShortVersionString

Bundle versions string, short

(Localizable) The release-version-number string for the bundle

CFBundleVersion

Bundle version

(Recommended) The build-version-number string for the bundle

简单来说, CFBundleShortVersionString 标识 bundle 的版本号字符串, 并且可以被本地化, 而 CFBundleVersion 表示构建版本号, 因此推荐使用 CFBundleVersion 作为应用程序的版本号标识。