我有一个其最低版本已设置为iOS 7.0的应用程序。该应用程序还使用NSUserDefaults
字典。该应用程序使用UIAlertView
和UIActionSheet
广泛的(不知道有多少苹果非公开覆盖)。现在,在iOS 8.0中,这两个视图已被弃用,并已由controller取代UIAlertController
。现在,有两种方法可以帮助我更新iOS 8应用程序。
但是,有一种问题的情况是,这种情况来自在iTunes或具有更高版本号的设备上执行的升级,然后将其同步到iTunes。当用户将旧设备与iTunes同步时,iTunes实际上会从设备上删除该应用程序,因为它无法运行iTunes中当前的新版本。当我将其中一个应用程序升级为仅支持4.0时,我有几个使用原始iPod touch的用户报告此问题。
以上评论出现在以下网址的可接受答案下:-
由于该应用程序正在使用NSUserDefaults字典,因此删除该应用程序后,该字典中的相关条目将被删除。
因此,我想知道以上两种方法中哪个更好?(由于某些限制,此应用程序目前仅使用Objective-C)。
从用户的角度来看,最好的做法是使用编码UIAlertView
,UIActionSheet
即使它们已被弃用。保持iOS 7目标不变。Xcode不应向您发出警告,因为您将旧版本用作基本目标。您无需更改任何代码,它仍然可以正常工作。
一旦您准备好进行切换(也许在iOS 9推出时),我便会将您的基本目标切换到iOS 8,并更新您的代码以UIAlertController
在任何地方使用。对我来说,花时间尝试支持两个不同的版本是没有道理的,因为它只是一个API弃用项,仍然允许您的代码按照多年的编写方式工作。节省资源和能源,以便稍后进行更新。
但是,这实际上取决于您以及要支持多少iOS7。我认为在下一个版本发布之前放弃支持是没有道理的。我总是尝试支持最新版本和最新版本,因此不会有烦恼的客户,但这取决于您自己的需求。
如果您已集成分析功能,请在iOS 8公开发布后查看其采用率。如果没有,这是添加它的绝妙机会,以了解您的客户的最新情况!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句