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

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

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。

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万美元 MongoDB释放2.4版本:692更新及8大得意之作 十年6亿美元!Amazon云计算喜获CIA大单! 国人当自强:HTML5+联盟首次筹备会成功举行 开源框架TAAE发布 快速打造iOS音频应用 如何学会600多种编程语言 “第五届中国云计算大会”将于2013年6月5-7日在京召开 Ridiculous Fishing:游戏遭遇山寨如何一雪前耻 老游戏的今天:Doodle Jump每周进账2万美元 剑指Evernote 谷歌正式推出Google Keep 开源的JS MVC框架 Backbone.js 1.0发布 前Facebook资深员工王淮给技术创业团队的十点建议 微软发布Windows Embedded 8系列操作系统 Google Play 4.0抢先体验 中国 vs. 非洲:移动医疗的前世今生 Java大数据框架初创企业Concurrent获400万美元融资 基于Edge Animate开发CSS3 Animations 后端服务商Firebase发布全新iOS SDK [爆料]百度云或在秘密打造实时移动Web App开发框架 请问这个检索的SQL语句怎么写? 这样是否就一定安全了,高手进 为什么直接删除不行 asp.net问题,马上给分 在线请教各位一个简单的问题--请问oracle8哪里有的下栽,急!!!!!!! 谁给我Beyond 2003演唱会下载地址! 为什么同一存储文件的程序在win2000个人版下出现:"存储文件时的共享违例"但是在win2000 server下没有,请教各位大师 用什么程序,把用户的安全性调到最低(可以出现警告对话框)??? 在线等待,马上揭贴 谁知到哪里有下载Jbuilder啊。。 如何在Win2000下注册服务程序呢?分不够再加 请问:如何解决“JDBC 服务器”配置不受支持的问题。 万分火急!请大侠指教(100分立即给) 如何在窗体上动态加载图标? MM明天生日放分庆祝(一) 如何进入Java的门? APS.NET下Excel调用:如何让服务器端只运行一个Excel实例?如何结束Excel进程? 快来快来!出事儿啦! 3d效果的正方形!! 惭愧啊!这么简单的数据库问题我都不会,你会吗? 谁告诉我这个马甲“ FrameShare (大城市里的帅哥) ”是谁的,千分不在话下! 在线等待,马上揭贴 再發貼(grid中定位問題) 怎么把长度为8且首位为0的string类型的数据转换成对应的长整型,用什么函数?载线等!!!! 在panel上没有OnKeyPress事件,怎么样实现按键盘某键触发该Panel上的button事件 急急急!高分求解(在线等待) 我有个棘手的问题,不知道高手能否给我解决,关于vc安装的问题 几十万条查循纪录纪录,在WEB页面中分页显示问题?大虾帮忙!!!!! 如何连接SQL数据库 在线等待,马上揭贴 MM明天生日放分庆祝(二)来者有分 Dephi的浏览器控件比VB慢,占用资源也大些! 100分,请大家帮我把下面的文字译成英文,很简单的 parser.parse是什么意思:请看代码(在线等) 菜鸟提问,快请高手解答!谢谢了! 非常值得探讨的问题 VB中的有无现成反三角函数用?函数名是什么? 菜鸟提问,快请高手解答!谢谢了! 上传文件出错误,请问该如何解决 报道 花了两个多月写了一套购物程序,请大家测试测试 ADO操作大字段地问题,急!! 有关C++I/O流库write()和read()函数的问题. 关于线程的简单问题,在线急等 请问一个C#的基本问题! ADO错误,怎么回事? java绘图 我用commondialog1打开了个文件,如何用text1得到这个文件的路径? 〓〓>===→ 怎样屏蔽datagrid的提示信息?up也给分。 对文件进行处理的问题 跪求解决方案(身份验证问题)! 这是个什么错误?? hippo怎么读 i在hippo中的发音怎么读?i在hippo中的音标是什么?i 在这里怎么读?i 在hippo中的音标是什么?是/i/么? i get the tinglies in a silly place silly place 概括“我素不知道天下有着许多新鲜事”的成语是什么? 对酒当歌,人生几何!譬如朝露,去日苦多! These papers haven't been written yet.请教一下,这句有错误吗? 6Please wait a minute.I’m__through with these papers.A mostly Bhardly Calmost 大雁的羽毛被剪断了还能长吗婚后 beast 12时30分mv什么意思 腾云驾雾的腾和驾是什么意思 腾云驾雾的腾是什们意思 美国监听丑闻变“质”环保部:上半年新疆青海等省区氨氮排放人社部:正研究办法治理公职人员“吃空亚冠决赛今夜首战 恒大优势大或破\"媒体称广州公务员年收入超17万 不少女子超市门口产下龙凤胎续:其亲人已经杭州一头藏獒蹿出工地咬伤小区保洁员欧洲盟友讨伐美国的“监听战争”俄“质子”火箭搭载美国通讯卫星升空诺奖得主:转基因之争需要一场高质量的地球变暖事实确凿 人类活动是主因新疆反恐一线警察蹲着吃饭席地睡觉(图中国驻菲使馆提醒公民勿去菲高危地区南纺股份造假虚增利润3.44亿 仅罚3小时17分的《冬眠》获金棕榈大奖(引黄灌渠成了“机油河”公租自行车微平台上线中国获女足亚洲杯季军周迅为何越来越会穿?(图)专家:事业单位工资将与机关体系松绑 寒门学子可获“善薪”捐助陕西信达男篮三连胜
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘