我有一个应用程序,其最低版本已设置为iOS 7.0。此应用程序还使用NSUserDefaults
字典。这个应用程序正在广泛地使用UIAlertView
和UIActionSheet
(不确定苹果的保密范围)。现在,在iOS 8.0中,这两个视图已经被废弃,并被控制器UIAlertController
所取代。现在,我可以看到两种方法可以帮助我更新iOS 8的应用程序。
但是,有一个问题,它来自于从iTunes内部或在版本号较高的设备上执行的升级,然后同步到iTunes。当用户将旧设备与iTunes同步时,iTunes实际上将从设备中删除应用程序,因为它无法运行当前在iTunes中的新版本。当我将我的一个应用程序升级为只支持4.0时,我有几个拥有原始iPod touches的用户报告了这一点。
以上意见载於已接纳的答覆内,网址如下:
Raising minimum iOS Deployment Target Version for App Update
由于应用程序使用的是NSUserDefaults字典,因此在删除应用程序时,字典中的相关条目将被删除。
所以,我在想,在上述两种方式中,哪一种选择更好?(由于某些限制,该应用程序目前只使用Objective)。
发布于 2014-06-27 17:19:02
从用户的角度来看,最好的做法可能是使用UIAlertView
和UIActionSheet
编写代码,即使它们不受欢迎。保持你的iOS 7目标和过去一样。Xcode不应该向您发出警告,因为您使用的是旧版本作为基本目标。您将不需要更改代码的任何内容,而且它应该仍然工作得很好。
一旦您准备好切换(可能在iOS 9发布时),我将将您的基本目标切换到iOS 8,并更新您的代码以在任何地方使用UIAlertController
。对我来说,花时间支持两个不同的版本是没有意义的,如果它只是一个API降级,它仍然允许您的代码以多年来的方式工作。节省资源和能源,以便稍后更新。
但是这真的取决于你和你想要支持多少iOS 7,我认为在下一个版本发布之前放弃支持是没有意义的。我总是尝试支持当前和最后的版本,这样就不会有烦人的客户了,但这取决于您自己的需求。
如果您已经集成了分析,那么一旦iOS 8发布给公众,就可以查看它采用的百分比。如果不是,这是一个很好的机会添加它,以了解如何更新您的客户是!
https://stackoverflow.com/questions/24457199
复制相似问题