说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

《近匠》豌豆荚李大海:用搜索敲开手机娱乐平台之门

HTML文档下载 WORD文档下载 PDF文档下载
《近匠》第48期:不久前,豌豆荚发布了"应用内搜索"技术协议。初步提供了对应用内搜索的检索、收录和调起标准。还同步上线了“应用内搜索”接入申请入口。豌豆荚已不再是简单的应用平台,逐渐变成了娱乐搜索中心。

2014年3月,豌豆荚发布了垂直应用搜索的"应用内搜索"技术协议。初步提供了对应用内搜索的检索、收录和调起标准。同一时间,豌豆荚同步上线了“应用内搜索”接入申请入口。应该说搜索是豌豆荚的重要战略之一,而开放接口的一个重要原因在于,在已经培养一段时间的用户习惯后,豌豆荚的深度用户已不满足于现有应用的内容。同时,部分通过豌豆荚分发的应用已经开始与豌豆荚接触希望成为应用内搜索的来源之一。

应用内搜索的意义在于,像当年的Web网站一样,试图将移动互联网打通,使手机应用之间的关系,不再像现在一样是一个个的信息孤岛,而是可以通过搜索将信息内容串联起来。此前,Google在Android 4.4中推出的App Indexing便试图做到这一点,即将应用内容URL化,方便被搜索引擎抓取。而作为一家应用平台,着力打造应用内搜索,除了能从侧面提高被调起应用的下载量,有利于增强豌豆荚分发优势外,还可以打破各家内容的瓶颈,将视频、 电子书等内容在搜索内进行聚合,探索移动搜索的同时去发现渠道市场的新形式。

那么,豌豆荚在应用内搜索方面都做了哪些实践?应用内搜索技术在国内目前处于哪个阶段?又有哪些机遇与挑战留给开发者?针对这些问题,CSDN近日对豌豆荚搜索平台技术负责人李大海进行了专访。


CSDN:请简单介绍一下你的工作经历。

李大海:我2006年毕业于北京大学基础数学系,之后加入了谷歌中国,在谷歌待了四年多以后,跟当时的谷歌北京工程副院长刘俊一起创业做云云网。去年 8 月来到豌豆荚,负责搜索业务方面的事情。目前,我的主要工作是跟着搜索平台团队一起为公司的搜索产品提供技术支持。

CSDN:能否介绍一下豌豆荚的搜索技术团队?

李大海:豌豆荚早在2012年就开始做应用搜索,团队是按照典型的搜索引擎架构来分工的。工作内容包括爬虫、后台的数据处理、检索、排序,以及对用户意图的理解等。当然,随着公司业务的变化,我们的团队也一直在变。随着业务功能的增加,团队的规模也在不断壮大。 

CSDN:今年你们的工作取得了哪些成绩?

李大海:今年是我们从应用搜索向手机娱乐搜索转变的过程,这个过程有很多阶段性成果,比如我们的电子书、视频以及壁纸搜索,在线上服务了很多的用户。这些业务的变化促使我们在人员的规模和分配上也作出了一些调整。

CSDN:豌豆荚现在所做的应用内搜索是一个什么样的体验?

李大海:我们是把App的内容做了一个索引,给用户提供一个完全直达的体验。以电子书为例,用户通过搜索找到自己想看的书,豌豆荚可以直接把用户带到相应的 App 中去(比如《多酷书城》),你可以免费试读也可以下载。而这些 App 则变得更像传统互联网的网站,不再是信息孤岛。

CSDN:现在一些巨头也在向应用内搜索方向进行尝试,请问你怎样看待这种现象?在你看来,应用内搜索业务在竞争中得胜的关键是什么?

李大海:应用内搜索是一个非常新的领域,从产品形态上来看,它一定是基于手机使用场景发展起来的产品。豌豆荚一直专注于移动使用场景,为用户打造简单有爱的手机应用,我们也是第一个把应用内搜索产品化的公司。我们看到有越来越多的公司认可这件事,并且加入到这个领域当中,这是非常令人高兴的现象。说起应用内搜索的关键,我认为以下三点比较重要:全面、准确、情景化。尤其是全面、准确,这是用户愿不愿意用你的搜索产品的关键。另外,数据的积累客观上也能形成竞争的壁垒。豌豆荚在移动领域积累了4年的数据,这正是我们的优势。

CSDN:这样看来,豌豆荚已不再是一个单纯的应用平台?

李大海:是的。其实我们最终想做的事情是一个手机上的综合的内容搜索,把手机娱乐场景下的所有内容全面建立起来。当然,这需要一些时间,让用户对产品的认知慢慢改变。

CSDN:前不久,豌豆荚与《猫眼电影》合作,提供基于场景的搜索内容反馈。在你看来,理想的场景推送是一种怎样的体验?

李大海:我认为,理想的场景推送就是准确把握住用户需求。在搜索的场景下,我们知道用户需求后,再根据其他一些条件去判断,成功率和准确率会高很多。举个例子,一个智能的生活类搜索引擎,在用户晚上十点,以“川菜”为关键词进行搜索时,应当结合用户所处的位置,为用户提供附近能吃宵夜的川菜馆,而不是那些虽然流行但已经关门了的馆子。这就是所谓的“智能”,它不是虚无炫酷的,而是对用户需求的的准确判断。豌豆荚最近引入了电影票门类,在搜索最近热映的电影时,比如《后会无期》,用户可以直接点击第一条搜索结果开始选座购票,这样,用户会被直接带到猫眼电影 App 中,整个流程是无缝、流畅的。


CSDN:应用内搜索用到了一个关键技术,即Deeplink,能否简单介绍一下这一技术?

李大海:Deeplink在互联网发展的早年就提出来了,当时的概念是与首页对立的,“藏在首页之下的页面”,再后来,搜索引擎行业把这个概念跟爬虫容易抓取到的内容相对起来。我们认为,还有更多的互联网内容是藏在这些页面之后没被人看到的,也就是说,我们看到的信息只是冰山一角,更多的数据实际上是藏在冰山的下面的。现在,Deeplink更具体的是指App里面的内容。我们知道,App是组成移动互联网的一个个细胞,它对应着以前的网站。但它与网站不同的是,App的内容是孤立的,没有超链接的技术规范。所以,想知道App内有哪些好的内容从 App外部是不太容易做到的,这些内容隐藏得很深。针对这一情况,人们开始找出一些技术方案来解决这一问题,这些技术解决方案统称为Deeplink。

CSDN:能否举一些例子,具体讲讲Deeplink的实现原理?

李大海:现在已经有很多公司在定义自己的Deep Link规范,比如豌豆荚的应用内搜索技术协议(http://developer.wandoujia.com/search),Google的App Indexing(https://developers.google.com/app-indexing),Quixey的AppURL(http://appurl.org)和Facebook的App Links(http://applinks.org)等。

这些协议都有一个共同特点,通过某种方式代替URL来描述资源,为了与普通的(Web)URL对应,我们姑且称之为App URL,再使用第三方工具把App URL解释为Android系统或其它移动操作系统的原生App调起方式,打开App内对应的资源。这些协议要变得可用,都需要App首先能支持系统原生的外部调起方式。在Android上,这就是使用intent-filter来响应特定的intent。

拿豌豆荚的应用内搜索技术协议来说,我们使用Microdata+扩展的Sitemap来结构化地描述内容资源(这里的内容资源有比如视频和电子书等),在每个资源的描述文件中使用标签xhtml:link来描述该资源在Android上对应的打开方式,当这个资源在搜索结果中被点击时,标签xhtml:link中的内容会被豌豆荚翻译成相应的intent,让Android系统调用合适的Action。

下面是一个具体的例子:


这个视频的App URL就是“example://play/movie/xxx”,在调用的时候,豌豆荚会向系统构造一个intent,这个intent的action是"android.intent.action.VIEW",category是 "android.intent.category.DEFAULT",scheme是“example”,host是“play”等。这样,只要App在manifest文件中通过intent-filter注册了这样的intent响应能力,就能够顺利调起这个视频,进而开始播放了。

CSDN:这个过程当中会不会引起一些安全性的问题?

李大海:首先,从豌豆荚下载的应用我们会进行严格的认证,我们的应用内搜索本身也是在这些验证、审核过的应用的基础上把里面的内容提供给用户。用户能够搜索到这些内容,就表明这个内容本身的安全性是有保证的。第二, 用户在点击这个内容之后,会通过刚才提到的技术直接调起对应的App,打开相应的资源。到这里豌豆荚的工作就结束了,接着就是由对应App接手这个工作继续为用户服务,豌豆荚不能也不会获取和监听用户的使用信息。

CSDN:这是不是说,你们要去与开发者沟通,取得他们的支持,才能真正实现Deep link所预想的想法?

李大海:是这样的。真正支持Deeplink的开发者还非常少,所以我们为了实现预想的用户体验效果,必须跟开发者合作,跟他们解释需要做的事情和可以获得的好处,这是很难绕开的事情。目前,我们已经与超过50家合作伙伴达成了合作。最近也在准备上线自动接入内容的新版开发者中心,提升接入效率。

CSDN:作为豌豆荚搜索平台的技术负责人,你的常用开发工具是什么?

李大海:我研究生毕业前就是一个Liunx爱好者,是北京大学Linux俱乐部的常任会员。进入谷歌之后,也一直在Linux平台下做开发,日常使用的操作系统是Ubuntu,平时使用Vim进行代码编写,开发语言主要是用C++和Java,偶尔用一下Python,对Go语言也很感兴趣。

CSDN:在你的技术实践当中,有哪些建议与心得可以给到开发者?

李大海:现在是一个开源的时代,我建议开发者多了解开源界的动向,对常用的开源框架和工具,以及一些现成的存储系统有所了解,这样,在需要快速实现一个原型系统的时候能够以很低的时间和成本完成。比如Java和 Spring框架、Hadoop、Hbase、Hive、Storm、Spark等。另外,在移动互联网时代,我们经常需要处理海量数据。我建议开发者,在开发的时候,一开始就要想好怎样能把代码写得对分布式比较友好。比如选用数据库解决方案的时候虽然一开始量可能很小,但还是要想清楚到底是MySQL更合适业务需要,还是用HBase这样的Non-SQL数据库就足够了。如果采用MySQL,以后数据量大了可能会怎么运营?诸如此类。


【《近匠》上海庆科:智能家居背后的连接和交互方案提供商】《近匠》第47期:今年国内智能硬件团队不断涌现,而专注于智能家居方向的团队数量多。同时,一些如海尔、美的这样的老品牌也开始走向智能化。在这些智能家居背后,有着一个重要的云方案提供商,那就是上海庆科。

【《近匠》图灵机器人:App和移动硬件的智慧大脑】《近匠》第46期,图灵机器人是为开发者提供智能语义处理能力(包括语义理解,智能问答,知识库对接等)的服务。目前已经积累近百亿条语料库和GB级别基础数据,本期专访联合创始人韦克礼,听他详解“智慧大脑”。

【《近匠》Blueware何晓阳,不做中国的New Relic】《近匠》第45期,APM指“端到端应用性能管理”,可以对应用的传输链进行统一、实时深入分析。目前这一领域最广为人知的公司是美国的New Relic。作为一家中国APM提供商,Blueware希望APM可以为更多国内开发者所用。

回顾更多内容及线下开发者活动信息,请关注mobilehub公众微信号(ID: mobilehub)


寻求《近匠》免费报道,请私信:@CSDN移动,或发送邮件至mobile#csdn.net。

Evernote更新Android SDK:新增商务服务并拆分“印象笔记” 主流编译器对C++11的支持现状比较 GCC 4.8发布,提升对C++11的支持 英国政府下令首选开源软件 为何美国IaaS收购被引爆?基于IaaS的四个误解和四个猜想 Kinect SDK v1.7迎来重大更新 如何激励同事编写单元测试? 谷歌GCE vs. 亚马逊EC2:快源于谷歌本有的底蕴 不要责怪开源技术 它是无辜的 短命:微软将于2014年停止对WP8系统支持 Native和Web过时了,企业级移动开发流行用Hybrid App 与EverNote竞争?谷歌Google Keep浮出水面 又一次跨越:著名3D游戏引擎Unity版本更新 Feedly团队:自研后端平台或将开源 StackMob的诱惑:16小时,山寨一款移动App “云”筹帷幄 开发者必知的5大SaaS在线服务工具 超350个政府项目托管在GitHub 政府开源会成主流? Kinect for Windows SDK 1.7正式发布,支持3D建模 SafeNet与风河系统联手推出VxWorks嵌入式系统软件货币化方案 Windows Server 2012中的动态负载均衡 Google等互联网公司将成为创新中心? 在Hadoop的战争中 MapR获新一轮3000万美元融资 初创公司DNNresearch:谷歌科技帝国的新“基石” 创业了,我们该如何起名? 乐视网联手富士康推新盒子C1S “0+290元”新浪微博发售 吸引开发者:只要开发新应用 微软便奖100美元 PaintCode - 将矢量图转化为Objective-C代码的开发神器 苹果发布iOS 6.1.3 封杀evasi0n越狱所用漏洞 [API快讯] Google开放实时协作API 58同城开源轻量级Java Web框架 Argo 初创公司AppNeta:4轮融资,4780万美元 寻求:《com原理与应用》的电子版下载? 关于页面刷新的问题? 关于网络流量计算,紧急,在线等待,高手请指教 寻mp3控件,要能读取其tag信息. 请问如何将IE分成两部分,左边是一个APPLET写的tree,右边响应树中节点的事件(链接页面)? 如何才能得到本程序的cpu占有率?而不是总的cpu占有率? 如何编程枚举网上邻居 课件招标!!凡是我觉的有帮助的回答都给分!分不够可以再加!!先来100分!! 谁是高手?在线等待,立马给分! 发邮件问题 单挑高手:一个可变的字符串变量记录着类名(classname),怎么样根据这个符串的值创建所含信息的类实例?? 大放分!!!即放即給 一个在桌面上产生雪花的小程序,请帮忙修改。 请教一个程序速度的问题 辽宁沈阳的凯夫集团有知道情况的么? 好书是那本? 再请saucer(思归, MS .NET MVP),你帮忙得问题用你的方法解决了一半,还差一点。 关于界面控键问题! 为什么在设计时控件的属性不可以修改?在线等候 我的ROOT口令忘了,我该怎么办? 在RedHat8.0上安装Kylix3出现的问题?(关于文件包glibc检查出错)??????? VSS: Unable to check out the file <file> because it is already checked out. 一个暴难问题,关于两台电脑通过一个modem上网的问题。谢谢。 谁是高手,立马给分! 如何使ListControl 内容排序? 无法安装sql2000! 关于inport()和outport()的问题! 哪位仁兄手上有灰度图像的傅立叶变换和反变换的程序代码? 请教高手!死机问题 如何可以让网页内容置中显示,不管客户端的分辨率是多少? 大家注意Acrobat 5与BDE有冲突!! 怎样向客户端输出数据 如何判断一个变量是否定义过?使用if(var)的方法不行,报错 Interbase树形结构和递归调用问题,高手请进!!急!!!! 有谁知道哪有pb8.0汉化版出售。本人是个十足的英语盲! Oracle8 的blob字段,BDE读取报“Invalid Field Type”的错误 Interbase树形结构和递归调用问题,高手请进!!急!!!! 如何选出表中相同的纪录? 下面这些对编程风格的说法是否正确? Interbase树形结构和递归调用问题,高手请进!!急!!!! 请教dos中有没有类似notify的命令用于邮件通知 java有没有RTTI(runtime type information) 在DOS下开发软件,应该如何调用扩展内存? 高分求:Antechinus C# Editor4.2c和JavaScript Editor的注册码! 想自己做个字典软件,但是没有词库 怎样做个链接?链接邮件地址。 如何在工具栏statusbar的右下角(最后一个panel里)做一个走动的时钟 大家讨论一下开发JSP Web站点用什么工具比较好? 我想编一个网页管理软件,有如下要求。。。 大家帮看一下,加注释的一句是什么意思 高分求救!!有关数据同步!! 电信诈骗出新花样 装主刀医生发短信索情侣喝多了吵架动手 误伤隔壁桌客人致陈宝成完整录像 还原陈宝成被刑拘事情宁波一名男子救跳江自杀女孩 做完好事宁波一辆工程车倒下40多吨渣土差点活酒店司机撞伤人被判全责 伤者丈夫上门超级高铁时速1223公里 成本仅为高保安曾捐肾给工友治病 靠名声骗钱数十法官设计引出老板帮助小伙拿到被拖欠工宁波外海一名柬埔寨籍船长天热中暑半身煤气瓶突然爆炸 两人受伤严重被烧伤进文革红卫兵向受害者道歉 沉重忏悔罪行二代身份证存缺陷 挂失后还能被使用台湾失智老夫妻 演绎我的世界只有你的网络名人共守七条底线 微博大V传播社印度潜艇爆炸18人被困 俄军工产品质浙商解救妻女牵出万人传销团伙 涉案金新手湖州高速上开路虎飙到196码被记潜水打麻将求清凉 交流仅仅靠手势北京群体自杀事件伤者身着“哈尔滨铁路男子干活时突然心慌 飞奔回家救下面临市民免费学才艺经济“去地产化”非易事我省将评选“诚信画廊”朱树诚先生A股患上“一日游综合征”520 “我爱你”告白惊现长沙街头大试完还有礼《蒙娜丽莎的微笑》将做手机表情符号马刺35分血洗雷霆《幻想曲》戛纳首映推出汉兰达店庆版《背影》被逐出教材再遭误传象牙塔外的路,走得很辛苦周日彩虹跑,High行十公里为了回家,所以旅行新车越来越向年轻人靠近小型SUV接棒保时捷卡宴从《归来》看“眼泪叙事”乐购节全线放价湖湘建筑定将诞生惊世之作苏亚雷斯受伤或影响世界杯
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘