比安卓做得更好,iOS 15通用搜索功能这么牛逼?( 二 )
所以,想要实现应用内搜索,需要同时满足两个条件:1.建立唯一对应的索引;2.让搜索引擎知道要拉起哪个应用。而苹果的iOS Search API刚好是一个系统性的解决应用内搜索的方案,在这套方案中,应用内容被抽象的分为:私密内容(Priviate)和公开内容(Public),与之对应的两个索引为On-Device Index(本地)和Cloud Index(云端)。
需要注意的是,只有索引才会有云端和本地之分,因为私密内容也可以上传云端,所以内容本身没有这些区分。
为了解决公开内容和私密内容的索引问题,苹果在iOS Search API中设置了三个子API。首先是NSUserActivity API,即搜索看过的内容。在iOS9中,苹果在搜索功能里引入了该API,软件开发者可以利用该API捕捉当前页面的元数据。举个例子,淘宝、京东等都调用了这个API,我们可以在Spotlight里搜索到在淘宝、京东浏览过的宝贝。
其次是CoreSpotlight API,即索引应用内所有内容。以豆瓣为例,用户可以在搜索栏中输入关键字来查找豆瓣上的电影。
最后是Web Markup,即搜索网页上的应用内容。这样一来,即便没有安装某个App,苹果的索引也能在网页上搜索特定的标记,在Sarfi或Spotlight上显示搜索结果。比如用户要在携程订酒店,但手机上未安装携程App,这时Spotlight搜索结果则会以网页的形式显示。
而iOS 15中的Spotlight,苹果可能在iOS Search API加入了新的索引,以此来丰富应用内搜索功能。关于应用内搜索,苹果给出了自己的方案。作为竞争对手的谷歌,自然也有类似于Spotlight的应用内搜索功能。
应用内搜索功能,安卓也有与苹果不同,谷歌的思路很简单,就是增强谷歌搜索的能力,让它不仅限于搜索网页内容,还能搜索应用内的内容,甚至是搜索到用户在手机本地存储的内容。
为了实现应用内搜索,谷歌推出了Firebase App Indexing方案。App Indexing可以将开发者开发的应用纳入谷歌搜索,如果用户安装了某个App,点击搜索结果可以直接打开该App;如果没有安装,开发者可以通过App Indexing来设置接下来的搜索结果,包括:对应的Web页面,打开应用商店以及出现小卡片介绍应用,然后再转入应用商店。
谷歌的Firebase App Indexing与苹果的ios Search API有一个共同点,那就是都能索引网页数据、应用页面和个人数据。而两者之间的不同点在于,谷歌的Firebase App Indexing是可以跨平台的,在iOS和Android都有完整的解决方案,开发者只需适配一次,并且应用所获得的流量主要依赖于搜索结果中的排位。
虽然谷歌的应用内搜索方案与苹果的有些类似,但从开发者文档来看,苹果的iOS Search API会显得更加完备和成熟。如果非要开发者在两者之间选其一的话,谷歌的方案会更有吸引力,因为谷歌搜索的流量是现成的。
不过,现在看来,对比谷歌的应用内搜索,苹果的Spotlight可以说是要更胜一筹,能够将搜索结果进一步细化,让用户可以更快速地找到自己想要看到的内容。
- gen.g战队|高通可能会在11月14日发布骁龙8 Gen 2 SoC,明年安卓机旗舰就看它了
- 鸿蒙的跨屏协同,安卓也可拥有
- 按照惯例|安卓最强芯第二代骁龙8加持 小米13曝光:最快11月发
- 本周|对标高通骁龙8+ 天玑9000+旗舰已在路上:安卓阵营CPU
- 今天|安卓之光终于来了 曝小米12 Ultra下周预热
- 联想又有一款机型即将升级到安卓12底层了|全球首发骁龙870 摩托神机edge s即将升级安卓12
- 传感器|三星S22:喜提安卓13!三星S23:无缘屏下和HP3传感器!
- 安卓|这次能成吗!安卓之父新团队官宣:这次可是真旗舰
- 天玑|联发科成了!天玑9000+成为安卓阵营最强CPU
- 安卓|目前这3部几乎“零差评”的手机最值得买,用到2027年不成问题
