想象一下,你的一个朋友给你发了一条短信,短信里附带了周边新开的一家披萨店的Yelp(类似国内大众点评,译注)上的点评链接。因为你iPhone手机里已经装了Yelp应用,所以当你点开链接后,手机直接打开了应用而不是进入浏览器。但是在另一种情况下,如果你的朋友通过Facebook私信给你另外一家餐馆的Yelp点评链接,点开链接后你会进入Yelp的网页版界面,而不是切入Yelp应用。这究竟是为何?
自从iOS9引入了一种叫「通用链接」的「链接到应用」的新标准后,应用开发者就开始对这一问题摸不着头脑。尽管苹果允许应用开发者与其他应用通过链接相互跳转,但不是每个应用都具备链接跳转功能。各个应用程序开发者的标准不同,很容易让人们回想起过去浏览器混战的不堪场景。如果没有一个统一的标准,将会引起很多麻烦。
能将用户带到应用所在的特定网页而非首页的链接被称作「深层链接」,不过这种链接也不少见。目前智能手机制造商才开始研究如何让这些链接在统一标准下打开。苹果更倾向于用「通用链接」的界面来打开深度链接,也就是在苹果最新的操作系统iOS9里新增的标准。可是有个麻烦,奥斯汀说,通用链接其实并不通用。苹果自己的应用,包括iMessage、Safari浏览器和邮箱使用的是「通用链接」协议,但是一些很重量级的苹果外部的应用比如Facebook、Twitter和Google的Gmail并不同意这一协议。这也就解释了为何你在Facebook上打开的是网页而非应用。
往事不堪回首
无论是在应用里点开链接结果发现在网页里打开了,还是想要用应用打开链接的话得先用浏览器打开一遍才能跳转,这些都只是给我们造成了小小的不便。但是从统计学来看,用户很有可能会在发现应用没法直接跳到链接所在应用的时候卸载掉该应用。一家初创企业Branch Metrics的CEO奥斯汀如是说。这对于刚起步想要建立起稳定顾客群体的初创企业无疑是个坏消息,所以奥斯汀认为,苹果公司和Google公司应该共同合作为开发者们提供一个能更好构建应用之间桥梁的方案。
奥斯汀说,曾经开发者一度可以不用经过通用链接这种依赖其他应用制造商的模式来创建深层链接。比方说Branch Metrics就开发了一个系统,该系统能通过打开Safari来检查用户是否安装了该应用。如果装了该应用的话,就会自动从Safari跳转到该应用打开;如果该应用没有被安装,那么开发者要么会把链接转到应用商店,要么继续用浏览器打开该应用。这不是一个完美的解决方案,但是它管用。不过自从去年12月发布iOS9.2之后,开发者已经不能用Safari打开链接了。然而最近发布的iOS9.3粉碎了大家对苹果公司可能会改变策略的最后一丝希望。如果你在iOS里打开深度链接,你就得规规矩矩遵循通用链接标准。
安卓系统的情况更糟糕一些,奥斯汀说,谷歌手机操作系统每发布一个新版本就改变一次深度链接协议,然而经常有用户习惯用旧系统而不更新,所以Branch Metrics的应用得适用各个版本的安卓系统,这让他们很难做。
「这感觉就像九十年代后期,每一家浏览器都不一样,所以你设计的网站得适用于所有浏览器才行。」他说。
然而我们需要的,奥斯汀极言道,是一个统一的标准去处理应用间的链接。可能会需要一个第三方存在,类似万维网联盟的机构,为所有的网页浏览器建立标准。「现在浏览器之间也有区别」,他说,「但是比以前好多了,现在的一些标准几乎每个浏览器都会遵循。」
不过如今人们不太愿意去建立那样一个第三方标准了,「当然没错,如果针对每个开发者有一个统一的标准那是最好的了,每个人就不必一面这样一面那样」,广告公司URX的产品部副总裁麦克(负责给深层链接添加广告)说,「但是短期内还是不会实现的,苹果和Google不会坐到一块然后说,『嘿,为了让安卓和iOS更好开发我们来搞个什么共同协议出来吧。』」
事实是,至少现在是,越来越多的iOS开发者开始支持通过通用链接来打开对外链接。于此同时,如果你希望应用程序用起来更像网页,那网页依旧可以是你的不二选择。