使用最新版本的Xcode 8,支持和测试iOS 5.1.1

时间:2017-07-30 20:21:55

标签: ios objective-c iphone xcode

我一直在寻找这个问题的答案,我似乎无法在任何地方找到答案。我是iOS开发的新手,我希望开始移植我的Android应用程序来制作我的第一个iOS应用程序。我不是一个大苹果用户,所以我只是在虚拟机中运行xcode并尝试在运行iOS 5.1.1的旧ipod touch第3代上构建和测试。我知道这是多么过时,但我想在这个设备上开发和测试有两个原因:

  1. 我不想购买价值750美元的新苹果产品来测试我非常简单的应用程序
  2. 当我发布我的应用时,我希望能够吸引尽可能多的用户
  3. 所以我的问题是:

    1. 在xcode 8中,是否可以开发部署目标为iOS 5.1.1的应用程序?
    2. 如果是这样,它会为所有版本的iOS构建吗?
    3. 当我将我的ipod连接到xcode时,它说设备不受支持,我可以通过安装一些5.1.1开发人员软件包或sdk来解决这个问题吗?或者我是否必须构建,然后手动安装并测试每次迭代?
    4. 如果所有这些都可行,并且我构建了一个针对5.1.1的应用,我可以将其发布到应用商店吗?如果我在我的5.1.1 ipod上打开应用程序商店,商店中仍然有最近更新日期的应用程序,那么人们仍然必须向iOS 5.1.1上的应用程序发布更新吗?或者我错过了什么,在iOS 5.1.1上运行的应用程序完全被Apple禁止。
    5. 很多问题,但如果可能,我真的想这样做。即使得到任何这些问题的完全已知的,确认的答案,我们将不胜感激。 感谢

1 个答案:

答案 0 :(得分:0)

  

我不想购买750美元的新苹果产品只是为了测试我的产品   简单的应用程序

Xcode有一个模拟器,你不需要一个设备来测试你的应用程序。

  

当我发布我的应用时,我希望能够吸引尽可能多的用户

截至2017年7月31日,https://developer.apple.com/support/app-store/

  • 86%的设备使用的是iOS 10.
  • 11%的设备使用的是iOS 9.
  • 3%的设备使用较早。 (可能是iOS 8)

你有这个问题来自Android,但iOS是完全不同的。设备设计为统一的,苹果鼓励(几乎强迫)人们更新它们。 (您不会再收到更新设备的通知)

专注于为您所拥有的特定设备进行开发实际上是不好的,特别是因为许多API将被弃用,加上特定设备的屏幕比例并不常见。

  

在xcode 8中,是否可以使用部署开发应用程序   iOS 5.1.1的目标?

没有*

  

如果是这样,它会为所有版本的iOS构建吗?

有点,它会运行,但它可能不会是你期望的,直到你为特定的iOS版本修复它。 (许多事情在iOS更新之间中断,因此开发人员有时被迫分支代码)

  

当我将我的ipod附加到xcode时,它表示设备不受支持,我可以   通过安装一些5.1.1开发人员包或sdk来解决这个问题   支持?或者我必须构建,然后手动安装和测试每个   迭代?

也许,但可能不是。实际上,您可以从较旧的xcode复制文件,以便在较新的xcodes中进行测试。您可以通过Google搜索"在Xcode 8"中使用iOS 7来搜索如何执行此操作。但是,我怀疑是否可以追溯iOS ​​5。在iOS 5上运行所需的Xcode甚至不支持macOS Sierra(最新的操作系统)

  

如果所有这些都可行,我构建了一个针对5.1.1的应用,   我可以将它发布到应用商店吗?如果我在5.1.1上打开应用程序商店   ipod,商店里仍然有最新更新日期的应用程序,所以   人们仍然必须在iOS 5.1.1上发布应用更新吗?要么   我错过了什么,完全在iOS 5.1.1上运行的应用程序   被Apple禁止。

理论上是的,iOS应用程序仍然可以支持"旧的iOS版本,开发人员放弃对旧操作系统的支持的原因是因为调试它们变得越来越困难,以及它们不支持新iOS所带来的新功能和API。

我的建议如果你真的痴迷于构建iOS 5.1.1,那就是确保它是一个64位应用程序:

https://developer.apple.com/library/content/documentation/General/Conceptual/CocoaTouch64BitGuide/ConvertingYourAppto64-Bit/ConvertingYourAppto64-Bit.html

下载旧版Xcode :(也许是Xcode 7或6?)

https://developer.apple.com/download/more/

但我认为你还需要使用xcode 8构建,因为你需要构建最新的SDK。旧的Xcode只是为它开发并便于调试。

相关问题