最近 iOS 上出了一个「效率新神器」,那就是 Workflow。相比「前辈」Launch Center Pro,它是一款更加直观、强大的效率启动器,它让过去很难做到(或是做起来很麻烦)的一些事情,因为 Workflow 而变得简单、快捷。更重要的是,Workflow 拥有巨大的想象空间,它让原本已足够强大的 iOS 变得更加不可估量。所以,也难怪苹果官方会如此支持它,少有的第一时间将这样一款小众、极客的效率工具,推上了 App Store 首页的「编辑精选」。

很自然地,Workflow 也是我们少数派编辑的「新欢」,截至目前已有 3 篇文章介绍它:

而今天这篇文章编译自国外博客 geekswithjuniors 的一篇博文,侧重从 8 个方面总结了 Workflow 的特性,让你知道它擅长做什么,给你更多爱上 Workflow 的理由,点此 可阅读英文原文。


1. 简单易上手

Workflow 使用简便的可视化方式新建自己的工作流。不需要明白 URL Scheme 和 x-callback-url 的原理,简单的拖拖拽拽就能建立新的工作流。即使是新手,通过第一次运行时的引导,也会马上对建立流程的步骤有基本概念,跃跃欲试。

主页面非常简洁,只有 My Workflows 和 Gallery 两个页面。Gallery 是官方提供的一些现成的工作流供下载,质量和实用度都有很好的保障,未来也会不断有新的工作流被添加到此处。不愿意折腾的用户可以坐享其成。

点击右上角的加号新建工作流。在新建页面底部的 Actions 标签选择某个动作。Workflow 支持大量的系统动作,点击大的分类会看到分类下的详细内容。如果你不清楚某个 Action 的功能,点击它则会显示详细说明,包含当前 Action 的输入内容、输出内容和它所需要的系统权限。比如引导中的生成 GIF 的工作流,输入是图片,输出是 GIF,很好理解。这也是贯穿整个软件始终的概念:流。

直接向屏幕右边拖动某个 Action,页面会迅速切换到 Workflow 页。松开手后这个 Action 就被成功添加到当前流程中。设置常用参数,比如拍照动作的拍照的数量,使用前摄像头还是后摄像头。

返回 Actions 页面重复上面的步骤,即可一步步添加其它动作。所有的动作添加完成之后点击 Workflow 页面顶部的三角箭头运行测试。

可以看到整个添加过程没有任何上手难度和技术门槛。通过这样的方式会产生大量的流程组合,可以高效率地简化日常使用中遇到的各种复杂问题。

2. 支持 iOS8 扩展

在 Workflow 中建立的流程可以通过 iOS 8 的系统分享的方式在应用之外使用,这是笔者最爱的特性,那儿需要哪儿使用,无需自行在应用间切换。

设置也很简单,在流程 Settings 内选择 Type 为 Action Extension,选择能够识别的数据类型,在需要处理的内容处点击 Run Workflow 操作时候会进行筛选,只会显示对应监听内容的 Workflow 供选择。

比如我们建立一个压缩图片后发送短信的流程之后,点击右上角的齿轮按钮打开详细设定,选择 Type 为 Action Extensions, Accepts 类型为图片,这样在系统的照片相册中点击分享按钮,就能够使用 「Run Workflow」 运行这个流程。

 Workflow 可以识别的数据类型有: 图片、联系人、文本、PDF、URL、日期、地点、电话号码、文件、富文本、邮箱地址、地图链接等等。Workflow 最大化地利用了 iOS 8 的新特性,拓展出了更多的可能,在支持系统分享动作的地方都有运行自动流程的机会。

对于日常经常使用,不依赖特定输入数据的流程,可以选择「Add to Home Screen」添加到手机主页,可以自行设置非常漂亮的图标,毫无违和感。

3. 支持条件判断和循环,复杂流程也不在话下

条件判断和循环是编程语言的重要部分。而在 Workflow 的世界里,没有编程基础的用户也可以亲自尝试,体会它的强大。Workflow 支持 If 和 Repeat 等语法。目前 If 只支持对于文本内容的识别,如果设置的字符串出现在输入文本中,则继续执行下面的动作,否则跳至 Otherwise 后面的步骤执行。

4. 强大的内置功能

众所周知 iOS 的系统是相对封闭的,而 Workflow 在这片封闭的天地中依然能够处处逢源。功臣在于其预置的大量的功能。比如你可以在日历中识别即将到来的事件和提醒事项,从通讯录中获取电话号码和邮箱地址,将任何支持的输入数据生成为 PDF;可以配合内置的地图获取当前位置、方向和到达目的地的预计用时, 配合谷歌地图查看街景图片; 可以控制系统音乐的的播放, 暂停; 可以设置流程在照片应用中自动处理图片等等。了解这些功能的最佳途径是自己从 Gallery 中下载目前官方提供的流程进行尝试,熟悉并了解它的工作方式,之后可以发挥想象力创建自己的工作流程。

5. 优秀的第三方支持(不仅仅是 URL Schemes)

自从 iOS 支持 URL Scheme 之后,很多第三方的 App 开始支持这一特性,一定程度上解决了应用之间不能通信的尴尬。 但是不可否认的是,直到现在还有不少常用应用不支持 URL Scheme,这时候 Workflow 又可以大展身手。和 URL Scheme 的原理不同,Workflow 的动作支持更多的功能,比如现在你可以选中照片,设置文本内容,然后直接发布到 Instagram。这些操作如果仅仅靠 Instagram 官方的 URL 很难实现(点击安装该 Workflow)。

Workflow 同时还支持 Dropbox、Editorial、Evernote、Fantastical、谷歌地图、Tweetbot、Things 等常见第三方应用。利用这些强大的功能,你可以把创建的 Gif 保存到 Dropbox, 在浏览 Safari 时把复制的文本放置到 Evernote 中等等,用法组合无穷无尽。

6. 开发者福利:解析 JSON 文件

Web 开发者们深谙公共 Web 接口调用之道,而 Workflow 可以利用这些公共接口做一些很酷的事情!

其中的奥妙在于 Get Contents of Web Pages, Get Dictionary from Input 和 Get Value for Key 这几个动作的配合,从网络请求返回的 JSON 文件中解析出来键值对应的词典,从而根据词典的 Key 来获得想要的具体内容。好啦,其实笔者根本不需要班门弄斧地解释,对于开发人员来说,看到这几个名字就知道如何使用了。在这里笔者也代表广大技术小白呼吁开发大神们能够发挥想象力和创造力,利用现有的开放网络接口建立起更多实用的工作流,分享给普通用户。

这里有一个 实时汇率转换 的例子,使用的是 Google 的汇率转换公共接口,有科学上网条件的可以试试,或者参照此模板更改成其它的流程。

7. 支持回调语法 (x-callback-url)

Workflow 可以使用以下语法来在其它应用内调用某个流程,并且在流程运行完成之后返回到应用内。只需要设置对应 Workflow 的名称和输入内容即可。回调语法是双向的,你也可以同时设置在 Workflow 中跳转至别的应用中执行动作,完成之后回到 Workflow.

基本格式如下:

workflow://x-callback-url/run-workflow?name=[workflow-name]&input=[text-or-clipboard]

这里有一个例子:在 Drafts 中对当前输入中的文本进行调用某个流程的操作(点击安装到 Drafts 中)。安装完成之后再使用 Share 功能运行某个 Workflow 时,在运行完成之后会返回到 Drafts 中而无需手动切换。

8. 方便的分享

不同的用户会建立不同的流程,也许某天你灵光一现,发掘出一个特别实用的流程,这时候简单快速的分享显得非常有用。和 Launch Center Pro 一样,分享自定义的 Workflow 非常简单。点击上方的齿轮按钮,选择 Share Workflow 分享。系统会自动分配一个 uniqueID. 格式如下: 

http://workflow.is/workflow/uniqueID
 

你也可以在微博等地方直接分享此链接。如果你的 Workflow 足够实用,请不要犹豫,选择「 Submit to Gallery」提交给开发官方。你提交的 Workflow 会由 Workflow 官方来审核,或许下一次你进入 Gallery 页面时,就能看到自己提交的 Workflow 了。 

总结

Workflow 的横空出世给 iOS 8 时代带来了更多可能性——支持 iOS 8 的扩展,支持众多第三方应用,支持流程自定义,让 Workflow 成为自动化流程应用中的佼佼者。除了强大的功能,它的友好的界面和简单直观的操作体验,也让很多原本对自动化流程不感兴趣的用户愿意体验它的魅力。

「Powerful Automation Made Simple」,这是 Workflow 官方的宣传口号,笔者一直尝试依照它的特性来翻译出其神韵,但最终还是放弃。或许只有当你亲自尝试之后,才会体会到它的简单,和不简单。