苹果,iOS App 还需要多久才能运行在 Mac 上?

苹果,iOS App 还需要多久才能运行在 Mac 上?

苹果,iOS App 还需要多久才能运行在 Mac 上?

Craig Federighi 在 2018 苹果全球开发者大会上

在今年的苹果全球开发者大会上,苹果的软件工程高级副总裁 Craig Federighi 回答了人们询问已久的一个问题:苹果是否会合并 iPhone 和 Mac 的操作系统。

他的回答十分简单:“NO。”几分钟内,“No”一词的截屏就在 Twitter 上流行开来,还变成了网络流行语。

苹果,iOS App 还需要多久才能运行在 Mac 上?

不过,这个“NO”应该加上备注,因为虽然苹果依旧会为手机和电脑发布两个不同的操作系统,但是苹果正在尝试在 Mac 硬件上运行 iOS 应用。

Federighi 曾经在采访中表示,将 iPhone 和 iPad 应用移植到 Mac 框架的开发已经开展两年了。他披露了该框架的一些技术细节,并且分享了一些他认为应该在 Mac 上运行的 iOS 应用的类型。同时 Federighi 不愿意太多考虑触摸屏电脑,尽管如果以触摸为主的移动应用也可以在笔记本电脑上运行的话,触摸屏电脑似乎更适合苹果的产品线。

苹果,iOS App 还需要多久才能运行在 Mac 上?

跨平台

Federighi 认为这项技术的目标并不是建立单一的通用操作系统。但苹果曾经公开声明,最晚一年之后会有重大事件发生,这清晰地表明苹果已经意识到未来的应用发展趋势。苹果还谈了一些关于 Mac 应用商店的健康问题。虽然 Mac 应用商店中有上万款应用,但与手机上拥有百万应用的应用商店相比就是小巫见大巫了。

在上个月的全球开发者大会上,苹果也表示今年下半年,他们的一些 iOS 应用会在 MacOS Mojave(下一版的 macOS)上亮相,这些应用包括主屏、股票、新闻和语音笔记等。从表面上看,苹果似乎是把自己的一些应用变成了跨平台应用。但在幕后,苹果在创建一种工具,最终可以让第三方开发者将他们的应用从 iOS 移植到 macOS,而且据 Federighi 坚称,这项移植毫不费力。苹果从两年前就开始计划这项行动,苹果内部的软件工程师已经开始测试该工具的 beta 版。目前已经有四款能在 Mac 上运行的 iOS 应用就是测试对象。

有关苹果的这些工作的传闻已久。彭博社在去年年底就报道过,苹果在努力让应用开发者建立可以同时在 iOS 和 macOS 上运行的应用。但人们对于这种跨平台的应用如何开发,以及特定的交互应当如何进行等问题仍有疑问,因为 iPhone 的触摸屏的交互方式与在 Mac 上使用鼠标不一样。

苹果,iOS App 还需要多久才能运行在 Mac 上?

原生应用

Federighi 大致地描述了苹果如何将 iPhone 软件框架移植到 Mac 上,并在 Mac 上以原生方式运行,而不是通过某种模拟器或仿真器。iOS 和 macOS 共享同一种内核,部分框架也是相同的,如图形、音频和显示布局。但随着时代发展,两个平台选择了不同的发展路径。最大也是最注明的框架就是 UIKit,这个框架从一开始就是为 iOS 设计的,完全没有考虑鼠标和键盘的控制。在 macOS Mojave 中,UIKit 将得到更新。就像开发者可以让应用在 iPhone 或 Apple TV 上运行一样,很快他们就可以让应用在 Mac 上运行了。

Federighi 强调,即使应用在两个操作系统之间共享,Mac 也不会变得像 iPhone 一样。

对于应用开发者来说,应用移植的某些方面可以自动化,但另一些方面依然需要额外的编码。通过苹果运行在 Mac 上的应用开发工具 Xcode,开发者可以指明是否要给 iOS 应用编写 macOS 版本。特定的 UI 交互会自动进行,如 iOS 上的长按会变成 Mac 上的双指点击。但是应用开发者仍然需要写一些额外的代码,例如处理应用中的菜单、侧边栏等,比如将 Mac 应用的侧边栏做成半透明,或将分享按钮放到工具栏中等。

Federighi 强调,即使应用可以有效地在两个操作系统之间共享,Mac 也不会变得像 iPhone 一样。“它仍然是 macOS,你仍然可以使用 Terminal,仍然可以连接四个显示器,仍然可以连接移动硬盘。”

并不是所有移动应用都适合移植到 Mac 上。比如,你不会带着 Mac 走到街上用运动传感器去跟踪你的活动。但苹果相信,许多游戏可以很容易地完成移植。Federighi 特别提到了《城堡之夜》就很适合移植。他还说,他可以想像,如 IMDB、Yelp 或 DirectTV 这些网站都会有原生的 Mac 应用。

当然,开发者现在就可以为 macOS 编写这些应用,但以目前的工具来说,这样做需要花费很大力气。从用户的角度来看,想让一个人下载并使用桌面应用而不是直接在浏览器中查找餐馆或电影,桌面应用就必须提供一些附加价值,如特别的功能,或者更好的隐私保护等。

我询问 Federighi,iPhone 和 Mac 运行在不同的芯片架构上,是否会对应用的跨平台造成影响。他回答,“从目前来看影响不大。许多核心 API 像 Metal等,我们已经做了多年的努力使它们能在 iOS 上以及 Mac 及其 CPU 和 GPU 上运行得都很好。”

苹果,iOS App 还需要多久才能运行在 Mac 上?

关于触摸屏

关于 iOS 到 macOS 的移植是否会导致苹果生产触摸屏版本的 Mac 的问题,Federighi 说他“对触摸屏电脑不感兴趣”,而且认为以后也不会感兴趣。“我们认为,从人体工程学的角度,使用 Mac 就是你的手腕放在某个平面上,而举起手去点屏幕是很累的。”

Federighi 还说,他不认为现在市面上的触摸屏电脑(他用了“实验品”一词)有任何竞争力。“我不认为我们会看着别人的产品说,我们多久能做出来?”(值得一提的是,广受好评的微软的 Surface 笔记本拥有触摸屏,而且被认为是 MacBook 的竞争对手。)

苹果,iOS App 还需要多久才能运行在 Mac 上?

通用应用的未来

谈到竞争,苹果在移动软件和桌面软件领域最大的竞争者们都已经提供了某种能同时运行在手机和电脑上的应用。微软的 Universal Windows Platform(UWP)早在 2016 年就发布了,开发者只需写一个应用,就能在个人电脑、平板电脑、手机和 XBox One 上运行。同年,Google 说它将把 Google Play 应用商店带到 Chromebook 上,这意味着人们可以在 ChromeOS 电脑上下载并运行安卓应用。

微软和 Google 都有各自的技术方案,在不同的设备上运行相似或相同版本的应用。但两个系统都默认了一个事实:尽管人们很喜欢移动应用,但对于开发者而言,为不同的平台分别创建应用很没有效率,代价也很高。

此外,通用应用的概念,即在个人电脑上运行移动应用,并不完全是好事。在微软发布 UWP 后不久,一名开发者就表示他认为 UWP 是微软的一次激进的争夺控制权的行为。Eipc Games 的联合创始人 Tim Sweeney 在一篇文章中表明,微软实际上在“告诉开发者,只有将控制权交给闭锁的 UWP 生态系统,才能使用这些 Windows 的特性。”

关于通用应用对利润分成的影响也有疑问。苹果对 App Store 销售的所有软件收取 30% 的分成(对于长期订阅的软件收取 15%)。现在 Mac 开发者可以直接在互联网上发布应用,从而绕过苹果的收费。如果从 iOS 应用创建 MacOS 应用,那么开发者是否还对应用享有同样的控制权?

Federighi 强调,应用的分发和定价依然完全由开发者自己决定。

但同样,这一切都要等到明年才会发生,所以许多细节仍有待讨论,而且估计会有关于桌面应用和 Web 应用的价值的许多讨论。笔者之前也曾询问 Federighi,第三方开发者可以拿到这些工具的准确时间。Federighi 拒绝回答。但当我问起是否可以认为在一年后的 2019 年全球开发者大会上能听到更多消息时,他回答:“那应该没问题。”

原文:https://www.wired.com/story/wwdc-2018-federighi-ios-apps-on-macos/

作者:LAUREN GOODE

译者:弯月,责编:屠敏

“征稿啦!”

CSDN 公众号秉持着「与千万技术人共成长」理念,不仅以「极客头条」、「畅言」栏目在第一时间以技术人的独特视角描述技术人关心的行业焦点事件,更有「技术头条」专栏,深度解读行业内的热门技术与场景应用,让所有的开发者紧跟技术潮流,保持警醒的技术嗅觉,对行业趋势、技术有更为全面的认知。

如果你有优质的文章,或是行业热点事件、技术趋势的真知灼见,或是深度的应用实践、场景方案等的新见解,欢迎联系 CSDN 投稿,联系方式:微信(guorui_1118,请备注投稿+姓名+公司职位),邮箱(guorui@csdn.net)。

相关推荐