将iPad应用移植到Mac电脑上,苹果的跨平台计划是如何实现的?

将iPad应用移植到Mac电脑上,苹果的跨平台计划是如何实现的

OS 和 macOS 两大系统的应用生态融合是一个极具野心的项目,也是苹果近几年在软件层面实施的最大改动。Ars Technica 近日采访了几位苹果工程师和第三方开发者,对这个项目做了进一步解析。早在 2018 年的 WWDC 大会上,苹果就公开回应了一个已经被讨论许久的话题,那就是 iOS 和 macOS 在系统上的融合。

但实际上,苹果并未打算将两个系统合并,它真正想做的其实是打通移动端和桌面端的应用生态。作为首批展示案例,在 macOS 10.14 中,苹果就曾把 iOS 端的新闻、股票等手机应用移植到 Mac 系统中,强调可以让开发者用「很少的精力」就能实现这样的移植工作。到了今年,苹果进一步公开了名为「Project Catalyst」的项目,让广大第三方开发者也参与到移植工作中。

简单来说,现在开发者们可以利用苹果提供的新工具包,只要对 iPad 应用的底层代码做简单的调整,就能直接创建一个可以在 Mac 电脑上运行的应用。这听起来似乎并不困难,但项目本身仍然有很多让人在意的细节。如何将一款 iPad 应用搬到 Mac 电脑上?去年,苹果工程副总裁克雷格·费德里吉(Craig Federighi)曾介绍「Project Catalyst」项目的设立目的,就是为了让成熟的 iOS 应用生态来倒推 Mac 平台的发展,丰富桌面端的应用。

从数据来看,iPhone 的用户规模已经接近 10 亿,而使用 Mac 电脑的用户量仅为 1 亿而已,在这样的悬殊差距下,指望开发者只为 Mac 开发应用显然很困难,而移植则是弥补差距最快速、简单的策略。但作为平台方,想要拉拢足够多的第三方开发者参与其中,显然得先解决移植的工作量、成本和风险等问题。为此,苹果第一步是计划先将 iPad 应用带到 Mac 电脑中,而非数量更多的 iPhone 应用。

macOS 的高级市场总监 Todd Benjamin 解释说,这是因为 iPad 应用在上线时就已经针对大屏幕做了适配,UI 界面基本都是现成可用的,反而是 iPhone 手机应用需要重新修改设计。但在具体的迁移过程中,iOS 与 macOS 两个系统的编写底层仍存在不少差异。最明显的一点,macOS 应用使用 AppKit,而 iOS 应用使用 UIKit,这是两种不同的开发框架,直接复用一套代码显然不现实,苹果只能尽可能地将两者架构中相同的部分整合到一起,降低移植的工作量。

Twitter 的工程师 Nolan O’Brien 在采访时就表示,苹果提供了一个可以让开发者重复利用现有代码资源的套件,这意味着应用厂商不必再为 Mac 应用单独设立一支运维团队。「今后我们对于 Mac 平台的支持,会提升至和 iPhone、iPad 一样的水准。」O’Brien 称,目前 Twitter 的官方版 macOS 应用已经在 WWDC 上有过展示,之后就会上架 Mac 商店。

 2/4   首页 上一页 1 2 3 4 下一页 尾页

文章TAG:软件体系结构  复习题  期末考试  移植  软件  软件体系结构期末考试复习题  实现软件移植的主要途径有哪些  
下一篇