ios – 如果您的应用程序使用的api在您的应用程序发布后已被弃用,会发生什么?

如果您发布一个使用稍后弃用的api(在您的应用程序发布之后)的应用程序,那么会发生什么?

如果在商店上发布应用程序后不再更新应用程序,该怎么办?它会与所有未来版本的iOS配合使用吗?

当api在以后的操作系统版本中消失时,应用程序是否仍然可用?或者App Store只会阻止您的应用程序下载到未来的操作系统版本?

解决方法

你问:

If you release an app that uses an api that is later deprecated (after the release of your app),then what happens?

据苹果公司称,“被淘汰的方法已被取代,未来可能不受支持.”

所以,不用说,如果你的应用程序正在使用在将来某个日期不推荐的API,那么它通常会继续工作,直到苹果选择不再支持该API.实际上,随着API被淘汰,您的应用程序将继续运行良好,因为Apple非常重视向后兼容性.

如果您使用的方法已被标记为在您释放应用程序时已被弃用(或至少没有对后续方法的可用性进行适当的运行时检查),那么您将承担与即将推出的iOS版本不兼容的更大风险.但是,如果您坚持在发布应用程序时不被弃用的API,那么在任何合理的时间范围内,您都不可能遇到API更改的问题.

What if you never update your app after it is released on the store? Will it work with all future versions of iOS?

如果设计得当(例如,您不依赖于在开发应用程序时已弃用的方法),则至少可能对于几个iOS版本来说是安全的,但是您不能保证这样做.开发人员的负担在于确保该应用与新版iOS兼容.

坦白地说,应用程序通常在API的演变破坏之前就已经很好,所以用户兴趣水平在API打破之前就会减少.

Will the app still work when the api goes away in later OS versions? Or will the App Store just prevent your app from being downloaded to future OS versions?

如果API最终退休,那么很明显,您的应用程序将不再运行,除非您预料到这样可以适当地处理这种情况.我不相信应用程式会自动删除,大概只是为了回应用户的投诉.

我知道的唯一自动删除是开发人员允许他们的付费开发者许可证失效.在这种情况下,该应用程序立即从商店中删除.

除此之外,您只专注于API差异.另一个问题的根源是这些应用程序,这些应用程序依赖于一些未记录的iOS特性,以便成功运行该应用程序.如果你坚持标准的,记录的API调用,你应该是罚款.但是,如果您有一些功能,您只需要在实验中使用一些kludgy工作,但在官方文档中找不到,那么这是一个警告标志,您的应用程序可能不是非常“面向未来”,并且可能会打破未来的iOS版本.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...