在决定要开发的 iOS 版本时应考虑哪些因素?
Posted
技术标签:
【中文标题】在决定要开发的 iOS 版本时应考虑哪些因素?【英文标题】:What factors should be taken into consideration when deciding on a version of iOS to develop for? 【发布时间】:2012-08-28 19:14:10 【问题描述】:我目前正处于开发 ios 应用程序的规划阶段,我需要决定支持哪些版本。这是我的第一个应用程序,我倾向于使用 iOS 5。该应用程序将从网络中提取大部分数据,并且不会占用大量处理器。我主要担心的是,如果我为 iOS 5 或 6 开发,有些人将无法使用它。那么在做这个决定时应该考虑哪些因素呢?
【问题讨论】:
【参考方案1】:Apple 已从 Mountain Lion 上使用的任何 Xcode 版本中删除了 iOS 4 模拟器,并且很可能即将完全放弃对 iOS 4 的支持。这是推测,但基于以下事实:
每当 iOS 6 出现时,iOS 4 可能已经快两年了; iOS 4.3 放弃了对 ARMv6 设备的支持,因此继续允许构建 4.3 之前的版本会增加开发人员工具的大量维护成本; iOS 4 对自动引用计数的支持较少,现在这几乎是一项基本功能。这些事情不会提前公布,总有一天会有人拨动开关。
我还认为,如果您是新手,那么 iOS 4 值得避免,因为它缺乏:
故事板;和 内置 JSON 解析器。从统计上讲,前者是一种更简单的用户界面设计方法,而后者可能是您解码网络结果所需要的。
所以我会投票给 iOS 5。
【讨论】:
+1 全部正确,还可能涉及到运行 iOS 5 的用户百分比统计数据。详细信息:***.com/a/9269108/716216 您提出了一些有趣的观点,尤其是关于 JSON 解析器,因为我 99% 的数据将采用 JSON 格式。我已经决定为 iOS 5 开发似乎是我现在和未来的最佳选择。谢谢!【参考方案2】:您应该针对可能的最低版本进行开发,同时考虑性能要求和新版本中可能存在的任何必要功能。如果您想使用 iOS5 和 6 功能,但它们对于您的应用程序的基本功能不是必需的,您仍然可以定位 4 并针对这些功能进行条件检查以查看它们是否可供您使用。
您有意选择更高版本的主要原因之一是有意忽略不支持它的设备(iPhone 3g 或更低版本和 iPad 第一代)
【讨论】:
【参考方案3】:1) 是否需要支持早期版本的 iOS?如果这样做,您必须注意不要使用在您的部署目标之前发布的 API(也就是您要支持的较低版本)。
2) 如果您不需要/不想支持早期版本,Apple 表示您应该始终以更高的 iOS 版本为目标,这样您就可以使用最新的 API……有些东西是您无法做到的不要使用较旧的 API。
【讨论】:
【参考方案4】:您希望您的应用在哪些设备上运行?如果您希望您的应用程序在较旧的设备上运行,这将影响您开发的 iOS。
另外,这里有一张 iOS 版本使用统计图表。这将有助于决定支持什么和忽略什么。 iOS Version Usage Statistics
【讨论】:
【参考方案5】:确实,许多用户不会完全了解当前版本的 iOS。但是,这个数字非常小。典型用户不会立即升级到最新版本,但通常会在 1 个月内转换。
不升级的用户非常具体。越狱用户是我能想到的最大的社区,他们通常必须等待才能升级他们的 iOS 版本。其他用户是那些使用旧设备(例如 iPhone 2g 和 3g)的用户,新版本的 iOS 不支持这些设备。
考虑到这一点,建议始终为最高版本号编程。该代码将是最维护和最持久的。较低版本的编程通常涉及许多困难的工作,这些工作在较新版本的 iOS 中很容易完成。此外,无论何时出现新版本(想想 iOS 7、8、22?),您都必须确保您的旧代码仍然适用于新版本。这意味着您将需要访问安装了该版本的设备。
总而言之,大多数用户将使用最新版本的 iOS。
【讨论】:
以上是关于在决定要开发的 iOS 版本时应考虑哪些因素?的主要内容,如果未能解决你的问题,请参考以下文章