更新时现有的 iOS 应用程序会发生啥情况?

Posted

技术标签:

【中文标题】更新时现有的 iOS 应用程序会发生啥情况?【英文标题】:What happens to existing iOS app when I update?更新时现有的 iOS 应用程序会发生什么情况? 【发布时间】:2011-03-03 17:20:33 【问题描述】:

经过数月的工作,我终于为 ios4 更新了我的应用程序。

第一个版本是为 iOS3.2 编译的,并且已经在 AppStore 上架了一段时间,看到它继续工作并且一直可供 iOS4 用户下载,我印象深刻,尽管我的版本编译失败iOS4.

但是,现在我有新版本(符合 iOS4.2)等待审核 - 我不确定现有应用程序会发生什么!如果被覆盖使用,使用旧版本 iOS 的人会看到什么?我要对没有 iOS4.2+ 的人关门吗?

非常感谢

本。

附言抱歉,如果这已被涵盖 - 我确实看过但没有找到:-)

【问题讨论】:

【参考方案1】:

当您指定捆绑包中所需的最低操作系统时,它会过滤哪些用户会收到升级通知。因此,尚未升级底层操作系统的应用用户将不会收到更新。

【讨论】:

很高兴知道这一点。然而,一扇门正在关闭:通过提升最低 iOS 版本,您将无法再向运行旧 iOS 版本的用户提供更新(包括错误修复)。由于在旧设备上运行,一些用户实际上无法更新他们的 iOS 版本 - 请参阅 en.wikipedia.org/wiki/List_of_iOS_devices 了解哪些设备代可以运行哪个最大。 iOS 版本。【参考方案2】:

您实际上可以将目标操作系统级别指定为更早的版本。该应用程序将被允许安装在该版本和任何较新版本上。一般来说,Apple 在前向兼容性方面做得很好。

正如彼得所说,您可能不想将其编译为仅在 4.2 上运行。如果您添加了使用较新版本 iOS 的功能,您实际上可以在调用该方法之前进行检查(我已经使用手势识别器完成了此操作)以确保正在运行的操作系统版本能够运行。如果您不验证操作系统,该应用程序只会在使用过旧操作系统的用户上崩溃,这可能会导致 Apple 拒绝它。

另外,4.3 快出来了,所以你不妨等一个星期 :)

【讨论】:

感谢所有 cmets - 我不确定,可能兼容回 v4(我会检查!),我更担心 v3.2 用户?! 3.2 的用户没有理由不能将他们的设备更新到最新的操作系统,不用担心。 @Tom Irving - 不是每个人都能更新,有些人越狱了,有些人根本不在乎。并非每个人都必须有一台计算机可以连接。确保旧设备正常工作通常不是一项艰巨的任务。我还在 4.1 越狱不应该是一个问题,尤其是 iOS 4.2 可以越狱。以前没有听说过缺乏计算机论点 - 这真的影响了很多用户吗..? @Tom Irving - 出于某种原因,我的大多数朋友和家人从不更新,除非我强迫他们更新。我可以看到 4.0 是一个很好的跳跃,但较小的是“meh”【参考方案3】:

如果您的应用仅支持 4.2+,那么只有拥有 4.2+ iOS 设备的用户才能安装和使用您的应用。当前在商店中的版本将被覆盖。简而言之,是的,您正在向任何使用较低版本 iOS 的人“关上门”。

【讨论】:

以上是关于更新时现有的 iOS 应用程序会发生啥情况?的主要内容,如果未能解决你的问题,请参考以下文章

当我更新我的应用程序时,本地文件会发生啥?

当 iOS 为应用程序安装更新时,究竟会发生啥?

如果我将 UIKit 应用程序更新为 SwiftUI,老 iOS 用户会发生啥?

升级 Firebase 后,我的 iOS 应用(目前在 App Store 上架)会发生啥情况?

当 iOS 应用程序确实进入后台时,TCP 和 UDP(使用多播)连接会发生啥情况

如果应用程序的配置文件过期,App Store 中的应用程序会发生啥情况?