柯林斯字典的出现也许让不少不曾接触过日区 App Store 的人注意到了「物書堂」这个字典应用开发商。这家开发商的字典虽然都是一个模子,但是这个模子兼顾易用和便捷(具体可以看 官网介绍),尤其是对 URL Schemes 的支持深得我心。因为查单词这种操作是最适合通过 Launch Center Pro + URL Schemes 这个组合来完成的。

于是我前两天在推上和微博上都发了「物書堂」官网的 URL Schemes 页,结果有几个人在评论里跟我说里面没有新出的 柯林斯英汉字典。原因我猜是因为这个页面已经很久没被认真编辑过了,大辞林 现在都出到 4.1.1 版了,网页里还是 1.2 版……

于是我根据给出的范例推断了一下,测试以后发现是正确的。柯林斯字典查词用的 URL Scheme 是:

mkcccad://jp.monokakido.CCCAD/search?text=单词

然后我来简单说一下我是怎么推的。

首先看官网给出的,过期了的,标准格式:

这个格式翻译成中文是:

辞典 Scheme 名://jp.monokakido.辞典 App ID/search?text=待查单词&src=返回 URL(可省略)&srcname=返回应用名(可省略)&usePasteboardText= 调用剪切板,可填 Yes 或省略(省略时默认为 No)&option=日中字典里以中搜日时专用的数字:16777216(可省略)

首先,它 URL 给得很长,你用不着全部都用。URL Schemes 这个东西比较灵活,用哪截哪就可以,比如我文首给的柯林斯英汉的 URL,只到待查单词这一步就结束了。实际上,为什么说它这个标准格式过期呢,因为 URL 后面带有「(可省略)」字样的部分,都不用怎么考虑:返回 URL 和返回应用名似乎在 iOS 9 推出「返回上一个 App」这功能后已经基本失效1;取剪切板内容可以直接被支持 URL Schemes 的工具(比如 Pin 和 LCP)自带的剪切板功能取代:最后那个数字只对日中字典有用。

然后我们来接着推英汉字典的 URL。

这些辞典的 Scheme 名,还有 App ID,其实在该页最初的表格里已经提供,网页中的表格是这样的:

应用版本号辞典 Scheme 名辞典 App ID
大辞林 v1.2 mkdaijirin DAIJIRIN
... ... ... ...

然后你看,它的辞典 App ID 就是辞典 Scheme 名去掉mk以后的大写。

所以,要柯林斯英汉的 URL Schemes,只要知道 App ID 或者 Scheme 名其中一个就行了。

那这俩怎么找?我就想啊,程序员起名是很懒的,这么多字典,它能用一种模式起名就不会每个都另想一种模式。然后我打开柯林斯英英(第 8 版)和柯林斯英英(美语版)第 2 版的网站,发现两个网站的链接的最后都有它们的 App ID:

  • 柯林斯英英(第 8 版)页面 URL:https://www.monokakido.jp/foreign/ccadb/
  • 柯林斯英英(美语版)第 2 版页面 URL:https://www.monokakido.jp/foreign/ccad/

最后的 App ID 分别是:ccadbccad

那我知道柯林斯英汉字典页面的 URL,我不就知道它的 App ID 咯:

柯林斯英汉:https://www.monokakido.jp/cn/foreign/cccad/

看最后,App ID 是 cccad,那 Schemes 肯定就是 mkcccad。知道这俩,就做得出文首查词的 URL Schemes 了。


  1. 基本失效指:本身这个部分应该做到的是,跳转查词后,给你一个选项,问你是否再次跳转。它的使用情境可以是:查词以后跳回要查词的 App,比如 Pocket。或者,你对语义的精准度要求非常高,需要对照不同字典的释义和例句,这样你可以在物書堂买不同的字典,然后用这一个 URL,在字典之间来回跳转查同一个单词。但是现在,它指在第一个字典查询失败以后有效。所以基本没啥用了。 ↩︎