IOS系统|WWDC 2020——关于 Mac 未来的半成品答卷( 三 )


从积极的角度说 , 这么做显然有助于大幅充实 Mac 平台的应用数量 。特别是对于那些惰于开发桌面端应用的「大厂」服务 , 哪怕只是用上放大版的 iPhone 应用 , 也算一种体验升级(我一直觉得对着手机屏幕点外卖是非常折磨人的) 。
但反过来说 , 允许直接运行 iOS 应用 , 又可能进一步为部分厂商忽视 Mac 平台提供借口;如果今后的 Mac App Store 被 iOS 应用充斥 , 很难说是优化还是劣化了 Mac 平台的生态 。
更令人担忧的是 , 对于那些真正有志于开发优质跨平台应用的开发者 , iOS 应用的通行还可能为用户提供一种「投机省钱」的动机——宁愿牺牲部分体验 , 将就使用廉价的 iOS 版 , 也不愿为 Mac 版另外付费 。由于 iOS 应用上架 Mac App Store 是默认的 , 如果为了堵住上述空子而选择不上架 , 又可能面临被用户指责为「贪婪」的舆论风险 。
因此 , 在充实 ARM Mac 的应用数量和维护开发者的积极性之间 , Apple 或许还需要更为审慎的考量 。
框架
除了架构更新 , 今年的 WWDC 也针对 Mac 应用的开发框架宣布了很多新变化 。
如果你对「框架」(framework)的概念比较陌生 , 可以这样通俗地理解:如果将操作系统比作一家餐厅 , 为系统开发应用比作做菜 , 那么开发框架就类似于「食材库」 , 为烹饪提供现成的原料 。
在过去 , macOS 和 iOS 虽然是同一品牌旗下的两家「分店」 , 但「食材库」是各自专属的 , 分别称为 AppKit 和 UIKit 。两者虽然在内容上有很大的重合与相似 , 但并不互通 。因此 , 两家分店的菜谱就因为备料不同而无法通用 。
Mac Catalyst
去年的 WWDC 上 , Apple 在一年的酝酿后正式向开发者开放了 Mac Catalyst 技术 , 其作用是将 UIKit 从 iOS 移植到了 macOS 上 。由于有了完全相同的食材库 , iOS 分店的菜也可以端上 macOS 分店的桌了 。
但 Mac Catalyst 并不是一个完美的解决方案 。最大的问题在于食谱可以照搬 , 但食客的口味难以统一 。
想象一下 , 一家开在南方的分店 , 即使能 100% 复刻出北方分店里的咸豆腐脑 , 也难免显得格格不入 。类似地 , 让 iOS 应用在 Mac 上能够运行只是最低限度的要求 。两个平台的应用从控件外观(按钮、菜单等)、输入方式(触控/鼠标加键盘)到操作逻辑(全屏/多窗口)都有诸多区别 , 照搬照套只会得到「橘越淮而为枳」的古怪效果 。
去年 WWDC 前夕 , 知名 Mac 和 iOS 应用开发商 Iconfactory 曾发文表达过这种担忧 , 事实证明一语成谶:一年过去 , Mac App Store 上使用 Mac Catalyst 开发的应用屈指可数;一些原本十分优秀的 iOS 应用经过移植 , 获得的反响也令人失望 。
关联阅读
把 iPad 应用「一键」搬上 Mac , 首批 Project Catalyst 应用体验怎样?
要把 iOS 应用带到 Mac 上的 Marzipan 框架 , 有哪些值得关注的细节?
IOS系统|WWDC 2020——关于 Mac 未来的半成品答卷
文章图片

文章图片

在 macOS Mojave 中作为首批 Catalyst 应用出现的 Home 应用 , 因为与 macOS 格格不入的设计受到批评
这个问题在今年的 WWDC 上得到了回应 。简单来说 , Apple 赋予了 Mac Catalyst 应用「入乡随俗」的能力 , 可以针对 iPad 和 Mac 两种运行环境 , 显示出不同的布局和外观 。
用 Apple 的术语 , 今后通过 Mac Catalyst 开发的 Mac 应用将能运行在两种「idiom」(一种用于判断设备类型的机制 , 可以形象地翻译/理解为「方言」)之下 。
其中 , iPad idiom 与以往相同 , 相当于将 iPad 应用调整尺寸后直接运行 。而在新增的 Mac idiom 中 , iPad 上的界面元素将被自动「翻译」为对应的 Mac 形态 , 例如按钮、滑块等;iOS 风格的开关也会变成在 Mac 上看起来更自然的复选框 。此外 , 系统会自动设定界面元素和文本的最佳尺寸 , 而不像以前那样机械地缩小为 iPad 版的 77% 。


推荐阅读