2014-02-24 49 views
0

我正在为Mac 10.7及更高版本(现在为10.7,10.8和10.9)开发应用程序。 根据我对网络搜索 -OSX架构相关

  1. OSX 10.8和10.9只配备了64位的味道
  2. OSX 10.7同时支持32位和64位英特尔。
  3. IN OSX 10.7 - 如果我开发的是64位(x86_64),那么应用程序也可以在32位下工作。 https://discussions.apple.com/thread/3200553。 在这种情况下,ARC如何在内部进行处理?

有人可以验证并确认我上面的假设吗?

谢谢

回答

2

x86_64是不是在32位机器上模拟,所以如果你想让你的代码工作在这些上,你必须为它构建。您正在链接的讨论讨论内核架构,这与您的目的无关。

ARC在32位代码中不起作用,所以如果你想支持32位机器,你不能用ARC构建(是的,像许多这样的权衡,选择支持旧的替代方案增加了工作并且可能容易出错)。

0

最好的办法是检查发行说明。但是,如果您尝试使用不支持它的目标SDK编译32位,Xcode会大声告诉您。

上次销售的32位Mac是多年前的。我很确定现在甚至支持硬件。 仅针对64位和最新版本,您将受益匪浅。随着免费更新的新策略,它使事情变得简单。

+0

根据应用类型和用户基数的不同,定位10.7甚至10.6仍然是一个好主意。例如,我有一个非常专业的应用程序处理蝙蝠电话,而不是典型的Mac用户。许多仍然有10.6的运行,甚至有10.5 ...而我的主要开发机器仍然运行10.7。如果支持速度太快,我总是很烦恼。所以我不建议只是总是去发布最新版本......但我完全同意丢弃32位支持 – Volker

+0

谢谢。我需要支持从10.7及以上。我可能会决定停止32位,但可能会有一些10.7用户谁拥有32位英特尔。我的问题是我的64位应用程序在32位英特尔? –

+0

当然。我在谈论更广泛的市场,以及在一定的时间和资源限制内真正可行的。如果你已经有了一些东西,就不会急于排除旧版本。但通常从头开始新的发展,它会给你一条更简单的道路。 – uchuugaka