对 Shortcuts 的一些想法

Workflow => Shortcuts

Workflow 这个 app 在效率软件领域非常有名,做得非常好,已经在一年前被 Apple 收购了。Apple 花了一年的时间改造 Workflow,最主要是把它和 Siri 做一个紧密的结合。

在 WWDC18 里面 Apple 公布了 Workflow 的新动向也就是现在的 Shortcuts,并且在前几天开放了 TestFlight 申请(如果我没记错的话这也是 Apple 第一次公开征集 TestFlight,但需要开发者账号才行)。

如果你不了解 Workflow,我非常建议你下载下来看看,现在是免费的,这个软件有很多非常有趣的设计,可以让你通过搭积木的方式实现一些类似编程的效果。用一种更容易懂的说法来描述就是:它是 iOS 平台上面的 Automator。

可能,Apple 在某个时候也想自己做 iOS 平台的 Automator,但是那个时候也许 Workflow 已经做到了近乎完美的程度(他们也拿过 Design Award),所以索性就收购了吧。

由于我已经使用了几天 Workflow 的转世 Shortcuts,也在上面做了一些 Demo,我这篇文章就来讲一讲 Shortcuts 对开发者意味着什么。

Shortcuts 是什么

当我们在用 Shortcuts 这个名词的时候,实际上我们在指代两件事情:

  • Shortcuts 这个应用(中文名目前被翻译为快捷指令)
  • SiriKit 里面的可以与这个独立应用发生联动的接口

对于 Shortcuts 这个应用,其实没有太多可以要讲的(很多人说这是 iOS 12 的功能,这是错的,Shortcuts 支持更老的 iOS 版本),因为事实证明这个应用完完全全脱胎于 Workflow,只是在 Workflow 基础上的一些改进(甚至有些地方还没有完全改掉,还保留着 Workflow 的痕迹)。这很正常,这就是收购后应用的最佳结果,类似几年前 Microsoft 收购 Acompli,经过品牌重新塑造之后,就是现在的 Outlook Mobile。

事实上目前 Shortcuts 之余 Workflow 的差异,除了设计风格上更接近 iOS 原生的风格以外(我其实更喜欢 Workflow 原本的设计),改动并不多。


但还是有几个非常 Apple 的改动值得注意,例如去掉了一些第三方应用的支持,取消了直接分享 Workflow 链接的功能。一个是为了减少对第三方应用的倾向性,另一个是对 UGC 的谨慎。

我猜测 Apple 可能会在某个时候完全去掉 Shortcuts 里面对第三方应用的支持,或者改为不那么明显的方式,否则的话这个倾向性是十分严重的,Apple 很少会去这么做。对于 Gallery 里面的内容,我不知道 Apple 是否会在某个时间让他变成可以用户上传,但我对这个事情比较悲观。因为你在 Workflow 里面可以轻松的做出一些功能,但这些功能是违法的。Apple 如果要支持这样的 UGC,他又得投入巨大的精力去审核这些内容。

但就目前而言,Apple 还保留了可以从外部导入 Shortcuts 的途径,只是把 URL Schemes 给改掉了。

改进

也不能说新的 Shortcuts 完全没有什么变化,事实上由于 Shortcuts 这两个改进还是有点意思的:

  • 可以使用一些系统开关例如打开蜂窝数据
  • 可以在 Safari 上面运行 JavaScript


对于第一点,没什么好说的,第一方应用私有接口想怎样都行(但其实 Workflow 在被收购之后就已经在陆陆续续使用私有接口了,例如他可以获取你的安装应用列表)。第二点在 Twitter 上面我看到了剧烈的反响,很多人像发了疯一样称赞这个功能。

但其实…… 这个功能就是我之前做过的 $safari.inject(),如果你还有印象的话,我还介绍了这件事情原理:https://xiaozhuanlan.com/topic/4297083651

top Created with Sketch.