iOS 应用程序的版本/构建字段包括:
-
“版本”CFBundleShortVersionString(字符串 - iOS、OS X)指定捆绑包的发布版本号,它标识应用程序的已发布迭代。发行版本号是由三个句点分隔的整数组成的字符串。
-
"Build" CFBundle版本(字符串 - iOS、OS X)指定捆绑包的构建版本号,它标识捆绑包的迭代(已发布或未发布)。构建版本号应该是由三个非负、以句点分隔的整数组成的字符串,其中第一个整数大于零。该字符串应仅包含数字 (0-9) 和句点 (.) 字符。每个整数的前导零都会被截断并被忽略(即 1.02.3 相当于 1.2.3)。该键不可本地化。
-
“iTunes Connect 版本号”:您在 iTunes Connect 上创建应用程序的新版本时指定的版本号。
我的问题是:
哪个版本/内部版本号是需要增加应用程序的新版本何时上传到 iTunes Connect 和/或发布到 App Store?
可以是“版本”CFBundleShortVersionString
或“构建”CFBundleVersion
应用程序更新之间保持不变?
对于 Apple 来源或 iTunesConnect 在上传无效版本/内部版本号时显示的确切错误消息,可加分。
Android / Google Play 注意:
引发这个问题的讨论是 Google Play 商店中 Android 应用程序的公共“版本”确实not需要增加并且在no way已验证。这android:versionName
可以在版本、升级、降级之间保持不变,或者是任何随机字符串,而不是看似有效的“版本号”。
android:versionName
— 表示应用程序代码的发布版本的字符串值,应向用户显示。
该值是一个字符串,以便您可以将应用程序版本描述为<major>.<minor>.<point>
细绳,或任何其他类型绝对或相对版本标识符。
Android 中 versionName 和 versionNumber 的区别
鉴于android:versionCode
强制为释放时递增的整数。
苹果文档
如中所述新接受的答案苹果最近发布了一份技术说明,详细介绍了他们的版本和内部版本号方案:
Apple 技术说明 TN2420 - 版本号和内部版本号
Apple 技术说明 TN2420、版本号和内部版本号
Summary:
- The pair (
Version
, Build number
) must be unique.
- 该序列有效: (1.0.1, 12) -> (1.0.1, 13) -> (1.0.2, 13) -> (1.0.2, 14) ...
-
Version
(CFBundleShortVersionString) 必须按升序排列。
-
Build number
(CFBundle版本) 必须按升序排列。
版本号和内部版本号清单
以下是您在向 App Store 提交新版本时可以检查的一些事项。确保正确设置版本号和内部版本号将有助于避免您的应用程序因配置不当而被自动拒绝。
- 对于应用程序的每个新版本,您需要发明一个新的版本号。该数字应大于您上次使用的版本号。尽管您可以为应用程序的任何特定版本提供许多版本,但您只需要为应用程序的每个新版本使用一个新版本号。
- 您不能重复使用版本号。
- 对于您提交的每个新版本,您将需要发明一个新的版本号,其值大于您使用的最后一个版本号(对于同一版本)。
- 您可以在不同的版本系列中重复使用内部版本号,但不能在同一版本系列中重复使用内部版本号。对于 macOS 应用程序,您无法在任何版本系列中重复使用内部版本号。
根据清单,以下内容(Version, Build Number)
顺序也是有效的。
-
案例:重复利用Build Number
在不同的发布系列中。 (笔记:NOTmacOS 应用程序)
(1.0.0, 1) -> (1.0.0, 2) -> ... -> (1.0.0, 11)
-> (1.0.1, 1) -> (1.0.1, 2)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)