今年的 WWDC 年度开发者大会上,苹果公司主动提到了一个被讨论很多的话题,iOS 与 macOS 两个系统的融合。

苹果公司称,它不准备将两个系统合并起来,但在推进 iPhone 和 Mac 应用的打通计划,准备鼓励开发者将 iOS 应用移植到 macOS 系统上去。

在发布会上,苹果工程副总裁 Craig Federighi 称,该计划将丰富 Mac 电脑上的应用:“我们有数百万个 iOS 应用,其中有部分在 Mac 电脑上也会表现不错。”他提到可能的移植对象,例如游戏 Fortnite,还有类似 IMDB、Yelp、DirectTV 等。

目前苹果公司的计划是,先将官方旗下的 4 个 iOS 应用——股票、家庭、News、语音备忘录——移植到 macOS 上,作为首批测试对象。这 4 个应用的 macOS 版本预计将会在 1 年内在 Mac 电脑上推出,可能是在新的 macOS Mojave 系统上。

Craig Federighi 在接受《连线》采访时称,苹果公司在过去两年都在推进这一项目。在移植官方应用外,苹果公司还在 iOS 开发工具 XCode 上开发面向第三方开发者的移植工具,致力于让开发者花费“最少的精力”就可以完成类似的移植工作。最后 macOS 移植版本的发行方式,仍然由开发者决定是否通过 Mac 电脑的 App Store 发行。

所谓的“最少的精力”指的是,以触屏为主的 iOS 应用转化成以鼠标点击、触控板交互的 macOS 版本上,部分交互变化将在移植过程中自动完成。但开发者还需要另外的编程,以适配 Mac 电脑以及 macOS 系统。

Craig Federighi 举出了一些案例。例如 iOS 应用上的长按,将会经过 XCode 自动转成双指点击。开发者需要为适配 Mac 电脑所需要的编程工作,可能是对菜单、边栏的调整,例如需要将 macOS 版本侧边栏设置成透明,或者是新增新的分享按钮。

在过去 2 年,苹果公司致力于将 iOS 应用在移植时能够适应不同的硬件、底层系统。虽然 iOS 与 macOS 在底层架构有不少相同之处,例如两个系统有共同的内核,在图像、声音以及布局显示上的框架也有相同的设置。但所用的硬件、主要的框架都不同,例如 macOS 使用 AppKit,iOS 使用 UIKit。

Craig Federighi 称:“包括图形渲染技术 Metal 很多核心 API 中,过去几年我们很努力使它们可以在 Mac、相关的 CPU 和 GPU 芯片,以及 iOS 平台上运行良好。”他说,在过去 2 年的推进下,iPhone、iPad 以及 Mac 电脑硬件层面的差异对于 iOS 移植影响不大。

打通 iPhone 与 Mac 应用,彭博社在去年 12 月份就有过爆料。苹果当时在内部设立了一个名为 Marzipan(杏仁膏)的项目负责推进这个事。

将 iOS 应用移植到 Mac 电脑上,最直接的好处是丰富 Mac 上的应用规模,这是 Mac 电脑过去常被诟病的问题。当 iPhone、iPad 受到更多开发者欢迎时,Mac 电脑上的应用数量少、更新缓慢。但 Mac 用户远少于 iPhone 近 8 亿的规模,macOS 平台也很难吸引更多开发者花费精力开发、更新应用,这本质上是个恶性循环。 

即便苹果的第三方工具可以帮助 iOS 开发者快速移植到 macOS 平台,适合定位在生产力工具的 Mac 电脑上的应用也较为有限。此外,开发者还需要依据 Mac 电脑强调鼠标、键盘与触控板的交互方式进行调整,这不是个容易的事。等到上述 4 个 iOS 应用移植完成后,就可以看到移植的实际效果。

开发 iOS 应用的移植工具,提前曝光后续的新品 Mac Pro,这些都被视作是苹果公司又开始重视 Mac 产品线了。类似的事情,微软、Google 都有做过,微软的计划失败了。苹果公司是其中直接拥有消费电子产品最多的公司。但要让人用更多 Mac 上的应用,最关键的可能不是移植方便与否的问题,如果有商业前景,公司是有动力自己花钱开发的。

题图来自:pxhere

我们做了一个壁纸应用,给你的手机加点好奇心。去 App 商店搜 好奇怪 下载吧。

毒镜头:老镜头、摄影器材资料库、老镜头样片、摄影