在决定开发iOS版本时,应考虑哪些因素?

在决定开发iOS版本时,应考虑哪些因素?,ios,Ios,我目前正在计划开发iOS应用程序,我需要决定支持哪些版本。这是我的第一个应用程序,我倾向于iOS5。该应用程序将从网络上获取大部分数据,并且不会占用大量处理器。我主要担心的是,如果我为iOS 5或6开发,一些人将无法使用它。那么,在决定这一点时,应该考虑哪些因素呢?您应该开发尽可能最低的版本,同时考虑性能要求和新版本中可能存在的任何必要功能。如果你想使用iOS5和iOS6功能,但它们对你的应用程序的基线功能不是必需的,你仍然可以将目标锁定在4个,只需对这些功能进行条件检查,看看它们是否对你可用

我目前正在计划开发iOS应用程序,我需要决定支持哪些版本。这是我的第一个应用程序,我倾向于iOS5。该应用程序将从网络上获取大部分数据,并且不会占用大量处理器。我主要担心的是,如果我为iOS 5或6开发,一些人将无法使用它。那么,在决定这一点时,应该考虑哪些因素呢?

您应该开发尽可能最低的版本,同时考虑性能要求和新版本中可能存在的任何必要功能。如果你想使用iOS5和iOS6功能,但它们对你的应用程序的基线功能不是必需的,你仍然可以将目标锁定在4个,只需对这些功能进行条件检查,看看它们是否对你可用

您有意选择更高版本的一个主要原因是有意省略不支持它的设备(iPhone 3g或更低版本和iPad第1代)

1)您需要支持早期版本的iOS吗?如果您这样做,您必须注意不要使用在部署目标之前重新部署的API(即您将要支持的较低版本)


2) 如果你不需要/不想支持早期版本,苹果说你应该始终以更高的iOS版本为目标,这样你就可以使用最新的API。。。有些东西是使用旧的API无法完成的。

您希望应用程序在哪些设备上运行?如果你想让你的应用程序在旧设备上运行,这将影响你开发的iOS


此外,下面是一个包含iOS版本使用统计信息的图表。这将有助于决定支持什么和忽略什么

确实,许多用户在当前版本的iOS上不会完全处于最新状态。然而,这个数字非常小。典型用户不会立即升级到最新版本,但通常会在1个月内过渡

不升级的用户非常具体。越狱用户是我能想到的最大的社区,他们通常需要等待才能升级iOS版本。其他用户可能是那些使用iphone2g和3g等旧设备的用户,新版本的iOS不支持这些设备

考虑到这一点,建议始终为最高版本号编程。该代码将是维护最多、最持久的代码。较低版本的编程通常涉及许多困难的解决方法,这些方法在较新版本的iOS中很容易完成。此外,任何时候出现新版本(想想iOS 7、8、22?),您都必须确保旧代码在新版本上仍然有效。这意味着您需要访问安装了该版本的设备


总而言之,大多数用户将使用最新版本的iOS。

苹果已经从Mountain Lion上使用的任何版本的Xcode中删除了iOS 4模拟器,并且可能会完全放弃对iOS 4的支持。这只是猜测,但基于以下事实:

  • 每当iOS6面世时,iOS4可能已经有两年的历史了
  • iOS 4.3放弃了对ARMv6设备的支持,因此继续允许针对4.3之前版本的构建增加了开发人员工具的大量维护成本
  • iOS4对自动引用计数的支持较少,而自动引用计数现在几乎是一项基本功能
这些事情并不是事先宣布的,总有一天会有人把开关打开

我还认为,如果您是新手,那么iOS 4是值得避免的,因为它缺少:

  • 故事板;及
  • 内置的JSON解析器
前者是设计用户界面的一种更简单的方法,而后者可能是您解码web结果所需要的,从统计学上讲


所以我会投票给iOS 5。

+1所有这些都是真的,提及运行iOS 5的用户百分比统计数据也可能相关。细节:您提出了一些有趣的观点,特别是关于JSON解析器,因为我99%的数据都是JSON格式的。我已经决定,无论是现在还是将来,为iOS 5开发似乎是我最好的选择。谢谢