iOS 和 Mac 融合到一起到底靠不靠谱?这比你想象中还要复杂

    摘要

    更早面世的 Mac,现在需要“被拯救”WWDC 大会后,费德里吉接受了《Wired》的采访,他表示这套工具已经在苹果内部开发了 2 …

    作者:爱范君

    如果你要为今年的苹果 WWDC 大会选择一张最具代表性的图片,那张巨大的黑底白字“No”,一定会成为很多人的选择。

    作为苹果负责软件工程的高级副总裁,克雷格·费德里吉(Craig Federighi)在现场回答了业内对于 iOS 和 Mac 双平台融合的疑问。

    这个问题最早来源于去年年底彭博社的一次报道,当时有知情人士透露,苹果内部正在展开一个代号为“Marzipan”的计划。


    理想状态下,开发者们只需要开发一套应用,就能够直接适配 iPhone、iPad 和 Mac 等多个平台。


    不过在这次的 WWDC 大会上,费德里吉所展示的内容与其说是融合,倒不如更接近于移植:苹果将用于 iOS 应用核心框架 UIkit 带进了 macOS 平台中,只需要对代码做较少的改动,就可以将 iOS 应用直接移植到 macOS 平台上。


    本次 macOS 10.14 Mojave 系统中新增的股票、新闻和语音备忘录等应用,就是从 iOS 平台移植过来,在形态上更接近于 iPad 版本。



    这基本可以视作为苹果对外的一个表态 —— 这家公司并没有打算将 Mac 和 iOS 两个平台融合到一起,而是希望让数量众多的 iOS 应用来反向带动 Mac 平台的发展。


    最起码在短时间内,苹果是这样计划的。



    比 iPhone 更早面世的 Mac,现在需要“被拯救”

    WWDC 大会后,费德里吉接受了《Wired》的采访,他表示这套工具已经在苹果内部开发了 2 年的时间,但显然到现在还未准备好。


    按照计划,这套工具要到明年才会提供给第三方开发者。


    “macOS 系统中新加入的那四款应用,其实就是基于这套工具开发的,我们不是要创造一个统一的操作系统,如果要说代价,现在这个方案显然是最小的。”


    费德里吉强调,现在这个工具是将 iOS 应用在 Mac 电脑中实现本地化运行,而非依靠什么模拟器。


    毕竟 UIKit 本来就是从 AppKit 当中分家出来,其实就是要让 UIKit 在 Mac 上可以跑。



    但考虑到 Mac 并不支持触屏操作,而 UIKit 面向的也只是移动设备,一些特定的人机交互比如手势滑动和长按屏幕等操作,这些都牵涉到底层代码的改变。


    所以即使 UIKit 可以直接在 Mac 上运行,真正有移植需求的 App 可能也还是少数,毕竟两者所面向的工作内容和适用人群都是不一样的。

    “Mac 始终运行的是 macOS 系统,你仍然需要用 Terminal 终端运行指令,你仍然能够外接显示器和连硬盘。但你不会打开 Mac 边走边玩,也不会用它来记录自己今天走了多少步。”


    因为更广泛的使用场景,iPhone 成功抢占了 Mac 的使用时间,也让大量的第三方应用开发者们转投到 iOS 平台上。


    社交聊天、视频、音乐、导航......现在大部分零散的事情,都能在智能手机上很好完成,包括一些非常热门的游戏,也都是将移动平台作为第一优先位置来考虑。


    PC 不再是大众消费者所关注的重点,这自然也包括 Mac。如何改变这种困境?苹果想把这数以百万的 iOS 应用带过来。


    ▲ 图片来自:Readly


    费德里吉认为,这套工具能为一些热门游戏起到不小的帮助,比如在 WWDC 上展示的《堡垒之夜》。这款游戏已经开发了 iOS 版,基于同样的 Metal 图形接口,移植到 macOS 系统也十分轻松。


    此外像 IMDB、Yelp 或 DirectTV 这类使用频次较高的视频和美食点评类网站,也可以在 macOS 系统中推出独立的应用版本,而以前 Mac 用户只能使用浏览器登陆网站来查阅信息。


    虽然这些移植依旧少不了编码工作,但至少用现在的办法,会比重新开发一款新的应用要简单不少,看上去也不是一个坏点子。


    ▲ 图片来自:Medium



    要开放还是要封闭?

    苹果不是第一个尝试将移动端和桌面端做整合的大公司,最早想做这件事的是微软。


    不管是 Windows Phone 时代提出的“大一统”策略,还是现在为 Windows 10 构筑的通用平台,即 UWP,微软都希望开发者们可以实现“一次开发多处部署”的愿景:包括 PC,包括平板、手机,也包括 Xbox 和各种智能家居产品。


    但从现实情况来说,微软面对的挑战比这个愿景要复杂得多。



    一方面,这些通用应用程序对比传统键鼠操作的应用没有明显的优势,尤其是一些复杂生产力工具和企业类软件;另一方面,微软已经放弃了自家的 WP 手机业务,单纯为触控 PC 打造 UWP 应用并非是必要的。


    最终这些 UWP 应用很可能只是孤零零地躺在微软应用商店中,却没有多少用户愿意安装使用。



    还有一个是开放性的问题,Epic Games 的创始人 Tim Sweeney 两年前曾在英国卫报提出一个观点,他说:

    “微软打造的 UWP 平台是一个封闭生态,如果以后 Win 32 应用都被淘汰了,Windows 系统上所有应用和游戏就必须得通过 Windows 官方商店进行分发,而不是像以前 Win32 应用一样随意安装。”

    虽然这个观点有些“阴谋论”,但如果要保证统一的体验,那么减少分发渠道,收拢开发接口显然都是比较合适的做法。


    论封闭,苹果比微软还要更激进,保不准在新工具出现后,苹果就要强制 iOS 开发者们保证应用对 macOS 系统的兼容性。毕竟这其中涉及的 API 等接口问题,苹果也已经准备了很多年。


    ▲图片来自:Macworld


    根据 AnandTech 的最新报道,苹果已经通知开发者,未来将不再支持包括 OpenGL、OpenGL ES 和 OpenCL 在内的跨平台图形 API 接口,转而鼓励开发者们在 Mac 平台使用苹果专门的 Metal API。


    但这项决定并不让人意外,毕竟 OpenGL 一直在为“Mac 不适合玩游戏”背锅,而 Metal 接口过去几年对 iOS 设备的游戏性能表现提升则是有目共睹的。


    伴随着 Mac 和 iOS 平台对 OpenGL 的放弃,Metal 迟早会成为 Mac 的标准、甚至是唯一一个受支持的图形 API 接口,这无疑为数量众多的 iOS 游戏移植提供了更好的便利性。至于更多的细节,得等到明年的 WWDC 大会上才能知道。



    触屏 Mac 到底有没有必要?这不是苹果一个人说了算


    对于触屏电脑的态度,以及为什么不做可触屏的 Mac,多名苹果高管都曾表过态度。苹果首席设计师乔纳森·埃维(Jony Ive)曾解释过说:


    “我们很多年前曾经尝试并探索多点触控屏的使用场景和应用机会,但 Mac 不是一个合适的地方,尤其是当你的朋友切换回传统的键盘时,才会意识到这些概念是否有推出的价值。”

    ▲ 图片来自:Mac Rumors


    费德里吉的说法则更直接了,除了依旧“否认苹果会推出触屏 Mac 设备”的设想外,他觉得“举起胳膊用手指戳屏幕是一件很累人的事情。”


    这个说法其实被提及很多次,在之前苹果 MacBook Air 的介绍视频中,苹果高级副总裁菲利普·席勒(Phil Schiller)也表示:“将触控交互放在显示屏的位置上并不合适,因为手臂悬空操作感觉很诡异。”


    最终苹果选择在键盘下方做了一块巨大的多点触控板,以及尝试在最新一代的 MacBook Pro 添加了 TouchBar,就是那个看上去很酷的触控条,实际上也没啥用。



    作为对比,微软的 Surface Pro 系列已经卖了近 5 年,专注办公领域和多形态变形本的概念已经深入人心,产品口碑也非常不错。


    但要说销量的话,Surface 系列整体还是比较一般,真正买账的还是企业级市场,也算不上微软的营收大头。



    至于现在的 Surface Book 和 Surface Laptop 就更传统了,它俩的形态也能说明,触屏交互对笔记本电脑来说仍然只是一种辅助,关键干活的还是得靠键盘。


    值得一提的是,今年 5 月份 9to5Mac 曾透露了一款代号为“Star”的苹果新设备,其中就提及了 ARM 处理器和触摸屏,这证明纵使苹果对外宣扬的是用 iPad Pro 来替代我们的传统笔记本,但在内部也并不是完全对触屏 Mac 没有想法。


    试验和探索仍然在持续,但仅仅是形态上的改变还不够,如果苹果想要做成这件事,必然得依靠杀手级应用和大量第三方开发者的支持。他们今后对 macOS 系统的支持程度,也决定着苹果生态大融合的未来。


    (题图来源:MobileSyrup)

    关注爱范儿(ID:ifanr),后台回复「1314

    获取最新版 macOS Mojave 开发者版下载链接


    avatar
    • 本文由 发表于 2018年11月7日
    Mac 软件推荐(续)之程序猿篇 mac软件下载

    Mac 软件推荐(续)之程序猿篇

    在前面一篇文章“Mac 软件推荐(续) -- !程序猿篇” (文章取名装X失败, 悲伤)中, 我已经介绍了一些大众化的软件, 当然作为程序猿的你也应该参考参考(没看过前文的必须补上啊).本篇文章将介绍...
    匿名

    发表评论

    匿名网友 填写信息