看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!
Apple 已经着手抛弃 macOS 上的 32 位应用程序了。macOS 的下一个维护更新版本 High Sierra 10.13.4 将会在用户打开 32 位应用程序时对用户进行提醒,接下来的 Xcode 9.3 也会包含相关工具来帮助开发者更好地完成应用程序从 32 位到 64 位的过渡。
遵照 Apple 在 WWDC 2017 的声明,Apple 于今年 1 月已经停止接受 macOS 32 位应用程序在应用商城中的提交了,对于 32 位应用程序的更新支持仅持续到今年的 6 月份。随着下一个 macOS 的发布,Apple 将更进一步,向用户提出了一个明确的警告。确实是如此,我们在 macOS 10.13.4 的发布信息中可以看到:
为了之后 macOS 版本的发布,我们将不会对 32 位应用程序作出妥协,从 macOS 10.13.4 开始,当用户打开一个 32 位应用程序时将会收到系统的警告。该警告针对每一个应用程序只会出现一次。
Apple 停止对 macOS 上 32 位应用程序支持的策略类似于他们之前在 iOS 平台上抛弃 32 位应用程序的策略。实际上,自从 iOS 10.3 开始,每当 iOS 的用户打开一个 32 位应用程序时都会收到一个警告。最终在 iOS 11 上 Apple 全面停止了对 32 位应用程序的支持。
这次 Apple 同样通过 Xcode 9.3 中的一个诊断工具为开发者提供了拓展支持,该工具可以使得应用程序从32 位到64 位的过渡更加容易。特别地,开发人员可以启用一个新的 64 位测试模式,在该模式下运行 32 位代码将会触发应用程序的警告或者是针对其他类型应用程序(例如 Dashboard 或 WebKit 插件)的静默故障。该模式能够通过在终端中执行sudo nvram boot-args="-no32exec"
命令来启用,在重启机器之后就会生效。一旦开发人员确认他们的应用程序能够在 64 位模式下正常运行之后,他们就可以通过在终端中执行sudo nvram boot-args=""
命令并且重启机器就能够重新恢复至正常模式。
Apple 表示,在今后的 macOS 版本中将会提供更多有关 64 位测试模式的信息,以帮助开发人员对软件进行测试和验证。
评论