苹果,iOSApp还需要多久才能运行在

CraigFederighi在苹果全球开发者大会上

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

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

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

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

跨平台

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

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

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

原生应用

Federighi大致地描述了苹果如何将iPhone软件框架移植到Mac上,并在Mac上以原生方式运行,而不是通过某种模拟器或仿真器。iOS和macOS共享同一种内核,部分框架也是相同的,如图形、音频和显示布局。但随着时代发展,两个平台选择了不同的发展路径。最大也是最注明的框架就是UIKit,这个框架从一开始就是为iOS设计的,完全没有考虑鼠标和键盘的控制。在macOSMojave中,UIKit将得到更新。就像开发者可以让应用在iPhone或AppleTV上运行一样,很快他们就可以让应用在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到macOS的移植是否会导致苹果生产触摸屏版本的Mac的问题,Federighi说他“对触摸屏电脑不感兴趣”,而且认为以后也不会感兴趣。“我们认为,从人体工程学的角度,使用Mac就是你的手腕放在某个平面上,而举起手去点屏幕是很累的。”

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

通用应用的未来

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

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

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

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

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

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

原文:


转载请注明:http://www.aierlanlan.com/grrz/1571.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了