原文地址: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.3 與 1.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 作為應用程式的版本號碼標識。