我一直在寻找一种将 buildDate 和 buildNumber 添加到我的项目(我发现)的方法,但我有点困惑,大多数人建议将属性添加到被info.plist
调用的CFBuildDate
and CFBuildNumber
。
编辑:
这些属性是否以 CF 开头,因为:
- 他们属于核心基金会,这就是惯例?
- 它们不是 CF 的一部分,但约定是无论如何都要使用 CF 吗?
- 它们可以被称为任何东西,CF 只是让它们与其他 CF 键匹配?
- 没关系,随心所欲地称呼他们。
我一直在寻找一种将 buildDate 和 buildNumber 添加到我的项目(我发现)的方法,但我有点困惑,大多数人建议将属性添加到被info.plist
调用的CFBuildDate
and CFBuildNumber
。
这些属性是否以 CF 开头,因为:
当我问自己这个问题时,我从类似于这篇文章的文章中获得了我的原始信息,该文章讨论了使用CFBuildNumber
并CFBuildDate
提供了一些巧妙的脚本创意来生成它们。
经过详尽的搜索,我找不到任何有关在任何 iOS 项目或最近的 OSX 项目中使用CFBuildNUmber
/的官方 Apple 文档。Information Property List Key Reference (Core Foundation Keys)也没有提及它们,所以我的结论是它们不是官方的,只是使用 CF 作为前缀,类似于现有的 Core Foundation 键。CFBuildDate
对于您的问题,我相信 #2、#3 和 #4(正如您所怀疑的那样)是由于缺少关于这两个键的任何官方 Apple 文档。
- 它们不是 CF 的一部分;惯例是无论如何都要使用CF。
- 它们可以被称为任何东西;CF 只是使它们与其他 CF 键匹配。
- 他们的名字并不重要,他们可以叫你想要的。
我不能说 OSX 开发,但从 iOS 方面来看,为这些目的提供的两个键是CFBundleShortVersionString
和CFBundleVersion
。前者是 App Store 可见的短版本,后者是扩展版本,如果需要,可以添加数字。
我使用 CI 服务器生成的内部版本号,并CFBundleVersion
在编译时将其附加到密钥的末尾。如果您想添加日期,可以将其添加到同一个键中。
Core Foundation 框架为包提供了底层基础设施,包括在运行时用于加载包和解析其结构的代码。因此,该框架识别的许多键是定义捆绑包本身的基础,并且有助于确定捆绑包的内容。
Core Foundation 键使用前缀 CF 将它们与其他键区分开来。
有关更多和详细信息,请参阅此...