当前位置: 首页 > 知识库问答 >
问题:

在app Store发布时,哪些iOS应用版本/内部版本号必须增加?

关宏毅
2023-03-14

iOS应用程序的版本/构建字段包括:

>

  • “version”CFBundleShortVersionString(String-IOS,OS X)指定绑定的发行版本号,它标识应用程序的已发行迭代。发行版本号是一个字符串,由三个以句点分隔的整数组成。

    “build”CFBundleVersion(String-IOS,OS X)指定包的生成版本号,该版本号标识包的迭代(已发布或未发布)。生成版本号应该是由三个非负的、以句点分隔的整数组成的字符串,其中第一个整数大于零。字符串只能包含数字(0-9)和句点(.)人物。前导零从每个整数中截断,并且将被忽略(也就是说,1.02.3相当于1.2.3)。此键不可本地化。

    “iTunes Connect版本号”:在iTunes Connect上创建新版本应用程序时指定的版本号。

    我的问题是:

    当应用程序的新版本上载到iTunes Connect和/或发布到应用程序商店时,需要增加哪个版本/内部版本号?

    “Version”CFBundleShortVersionString或“Build”CFBundleVersion是否可以在应用程序更新期间保持不变?

    Apple源代码或iTunesConnect在上载无效版本号/内部版本号时显示的确切错误信息加分。

    引发这个问题的讨论是,Google Play商店中的Android应用程序的公开“版本”不需要增加,也没有任何验证。android:versionname可以在发布、升级、降级之间保持不变,或者是任何随机字符串,而不是看起来是有效的“版本号”。

    android:versionname-一个字符串值,表示应用程序代码的发行版本,因为它应该显示给用户。

    该值是一个字符串,以便您可以将应用程序版本描述为 . . 字符串,或任何其他类型的绝对或相对版本标识符。

    Android中versionName和versionNumber之间的差异

    android:versioncode则被强制为一个发布时递增的整数。

    正如新接受的答案中所指出的,苹果最近公布了一份技术说明,详细说明了他们的版本和内部版本号方案:

    Apple技术说明TN2420-版本号和内部版本号

  • 共有1个答案

    尉迟德惠
    2023-03-14

    Apple技术说明TN2420,版本号和内部版本号

    • 这对(版本内部版本号)必须唯一。
      • 序列有效:(1.0.1,12)->(1.0.1,13)->(1.0.2,13)->(1.0.2,14)...

      在向App Store提交新构建时,您可以检查以下一些内容。确保正确设置了版本号和内部版本号将有助于避免应用程序因配置不当而被自动拒绝。

      1. 对于你的应用程序的每一个新版本,你都需要发明一个新的版本号。这个数值应该大于您使用的上一个版本号。虽然您可以为应用程序的任何特定版本提供许多构建,但您只需要为应用程序的每个新版本使用一个新版本号。
      2. 不能重用版本号。
      3. 对于提交的每一个新生成,都需要创建一个新的生成号,其值大于上次使用的生成号(用于同一版本)。
      4. 可以在不同的发行版列中重用内部版本号,但不能在同一发行版列中重用内部版本号。对于macOS应用程序,您不能在任何版本系列中重用内部版本号。

      根据检查表,以下(版本,内部版本号)序列也是有效的。

      >

    • 案例:在不同的发布序列中重用内部版本号。(注:不是macOS app)

      (1.0.0,1)->(1.0.0,2)->...->(1.0.0,11)->(1.0.1,1)->(1.0.1,2)

     类似资料:
    • 问题内容: 我的问题与 iTunes Connect 中版本和内部版本号的限制有关。我们只允许3个非负整数,并且内部版本号必须是递增的。 我正在设置一个 Jenkins 作业,以将我的构建自动上传到 iTunes Connect, 以便测试人员可以下载它们。 问题: 我们如何确保递增的内部版本号?即使我们在每次提交之前都在Xcode中手动更改了它(这似乎是错误的),也有多个开发人员在项目上工作,所

    • 问题内容: 您如何使用既不使用自定义代码也不使用外部依赖关系(例如Shell脚本)的文件来编写: 生成格式major.minor.revision的内部版本号(例如 01.02.34 )。 在每次编译源代码时自动递增修订。 每次执行dist(ribution)任务时,都会自动增加次要版本。 另外: 提供增加主号码的选项。 提供增加小号的选项。 主编号递增时,次编号和修订版本号设置为0。 每当次要编

    • 我刚刚尝试在Android 4.0设备上运行使用Java8编译的应用程序。虽然我习惯于非常小心地查看Android留档中的Android API级别,以确保我只使用Android 4.0上可用的API,但我不太习惯于确保我没有使用Android 4.0上不可用的Java功能。 考虑以下代码,它试图从视图类导入initializeScrollbars()API,因为无论出于何种原因,它已从官方SDK

    • 版本号 采用三位版本号,分别是主版本号、次版本号、修订版本号。例如 5.1.2。 参见: http://semver.org/lang/zh-CN/。 主版本号:主版本号内的所有版本必须相互兼容;与其它主版本号不一定完全兼容,尽量向下兼容。 次版本号:代表新特性增强。版本号越大特性越丰富。 修订版本号:代表BugFix版本。只做bug修复使用,版本号越大越稳定。 版本维护 最多同时维护两个版本。

    • 问题内容: 如何设置Flutter应用程序的版本名称和版本代码,而不必进入Android和iOS设置? 在我的pubspec.yaml中 但我看不到内部编号的地方。 问题答案: 您可以在 pubspec.yaml 中的同一位置更新版本名称和版本代码号。只需将它们与标志分开即可。例如: 这表示 版本名称是 版本代码是 在新项目的文档中对此进行了描述(但是,如果您正在处理旧项目,则可能已将其删除):

    • 我目前在为Android构建发布版本时遇到了问题。< br >密钥库文件/密码/别名是正确的,并且我已经将“生成构建”设置为发布,但是我仍然收到以下通知: 警告:在没有有效证书的情况下为 Android 构建将生成一个临时证书,该证书不能用于重新分发应用程序。创建Android证书非常简单且免费,请参阅:http://www.codenameone.com/signing.html 我以前成功使用