Ios 应用商店版本号-更改方案/最佳做法

Ios 应用商店版本号-更改方案/最佳做法,ios,app-store,versioning,appstore-approval,Ios,App Store,Versioning,Appstore Approval,我们正在考虑在下一版本的iOS应用程序中更改版本号,从使用传统的Major.Minor.Patch版本号方案改为使用基于日期的方案,如2012.month.Patch,以便更好地向用户反映应用程序的货币 苹果在iTunes Connect中的唯一版本号指南如下: 您正在添加的应用程序的版本号。随后应进行编号 典型的软件版本控制约定(例如,1.0或1.0.1或 (1.1) 我的问题是,他们是否执行这一传统计划 使用基于日期的计划有什么缺点吗 在一个已经广泛部署的应用程序上,改变方案是否会产生任何问

我们正在考虑在下一版本的iOS应用程序中更改版本号,从使用传统的Major.Minor.Patch版本号方案改为使用基于日期的方案,如2012.month.Patch,以便更好地向用户反映应用程序的货币

苹果在iTunes Connect中的唯一版本号指南如下:

您正在添加的应用程序的版本号。随后应进行编号 典型的软件版本控制约定(例如,1.0或1.0.1或 (1.1)

我的问题是,他们是否执行这一传统计划

使用基于日期的计划有什么缺点吗

在一个已经广泛部署的应用程序上,改变方案是否会产生任何问题


更新:更多地解释使用基于日期的版本控制方案的理由。。。相关应用程序的更新主要是为了反映每年添加几次的新数据集。对于用户来说,了解2012.2版有当前数据是很有用的—2.6版没有传达这一信息。

苹果方案通常是强制执行的,因为您的捆绑包会被检查两次以获得正确的版本号(一次在验证时,一次在上传时)。如果不是苹果公司,那就是公认的传统。此外,如果只需要使用buildnumber字段,为什么需要超出建议的小数点

不管怎样,只有一个问题。有时候,iTunes Connect在处理小数点后的两位数时会遇到问题。我的意思是,V1.1和V1.10有时显示为同一版本(因为零被忽略)。但是,V1.11还可以


按照你的建议,这似乎有点奇怪,但我会继续尝试。app store不会显著地显示版本号(软件更新期间除外,即使是在软件更新期间,它也是一个字幕),所以我敢打赌,它可能就这么溜走了。如果需要,只需修改应用程序的名称以反映年份。

根据我的经验,他们不会强制执行,除非第一个版本不低于1.0,并且您不能发布编号较低的版本

传统方案的优势在于,它关注的功能可能会随着您的步伐而更新,而不是日期总是滴答作响,变化太快。与其他版本和更短的使用日期相比,可以很容易地判断该版本的适用范围

你为什么要这么做?如果您向应用商店提交2012.02.08,但直到2月15日才获得批准,则立即存在差异。应用商店列出了应用上次更新的日期,您的用户可以阅读该日期或您的网站


如果你定期更新,他们会下载更新,那么我相信他们会收到你的应用经常更新的消息。我当然注意到应用程序更新的时间。除了在下载时或在应用程序中实际看到版本号之外,将版本号更改为日期并不能帮助他们知道它经常更新。

在做了一些研究以提交我的第一个版本后,我正在写这篇文章

应用程序的首次上传不能小于1.0(不允许使用测试版) 每次后续上传至少应增加一次

允许的最大子版本格式为X.X.X(其中X只能是数字) 没有字母表


在存档以上载到应用商店之前,请确保Info.plist文件中所有与版本相关的参数中只遵循一个版本号

我想对此发表评论,说明使用年.月.日版本控制方案是可以的

我检查了我的手机,看看谁在做类似的事情,下面是我发现的:

ideviceinstaller -l | grep 2020
com.bestbuy.buyphone, "202003261603", "Best Buy"
com.google.Docs, "1.2020.10202", "Docs"
com.huang.speedtest, "2020043002", "Oka Speed Test"
com.alibaba.iAliexpress, "8.7.1.2020031010", "AliExpress"
com.wayfair.WayfairApp, "20200326.72595", "Wayfair"
com.nguyenvh.holeio, "202003271450", "Hole.io"
com.adobe.Adobe-Reader, "20200326.133802", "Acrobat"
com.clearchannel.iheartradio, "2020022503", "iHeartRadio"
com.google.Sheets, "1.2020.12203", "Sheets"
com.google.Classroom, "2.2020.12205", "Classroom"

为了进一步解释使用基于日期的版本控制方案的合理性。。。相关应用程序的更新主要是为了反映每年添加几次的新数据集。用户知道2012.2版有当前数据是很有用的-2.6版没有传达这一点。这很公平。你有没有考虑过下载新的数据集,而不是将它们捆绑在一起,让应用程序只是一个客户端?通过这样的设置,你可以在一个他们肯定会看到的地方有一个面向用户的字符串“Last updated:xxx…No new data available”。Joe--可下载数据集已经在待办事项列表上出现了一段时间,但到目前为止,投资于必要的后端基础设施(该应用程序几乎不赚钱)在财务上没有意义。也许一旦我实现了应用内购买,实现可下载数据将是可行的。但现在我只是不明白我怎么能为免费升级支付带宽。好主意,谢谢!我们在.9->.10更新中遇到一些问题。。。想知道你是否有关于这个“抓住你”的更多细节。。。愿意分享吗?:)是的,你有一个完美的例子。您可能输入了.9到.10,但iTunes显示的是9到1。你看到问题了吧?iTunes认为你的应用程序只下载了8个版本!在我们的例子中,.9->.10升级导致下载应用程序(以及大量的1星评论)的人大约70%的失败,它在发布时就会崩溃,而在我们发现并启动它之前的一个小时内,它就已经在商店里了。。。有趣的是,我们所要做的就是等待它从所有的苹果商店中推出,然后重新启用它以供下载(相同的.10版本),它在全球范围内都能正常工作。似乎苹果的一些系统认为.10在.9之后,有些可能认为它在.1之后和之前。。。但奇怪的是,它是间歇性的。绝对是苹果的错误。保持版本号一致链接,避免硬编码,这是一个很好的做法。不允许使用-0.1或0.0.1之类的beta版本号,这将导致应用程序审查团队的拒绝