发明内容
在本发明实施例中,提出了一种浏览器跳转至应用程序的控制方法,可解决终端应用程序自动跳转导致浏览器数据统计准确率降低的技术问题。
一种浏览器跳转至应用程序的控制方法,包括:
检测浏览器中发起第一网页资源请求的操作,在检测到所述操作时,获取所述第一网页资源请求对应的第一URL;
读取本地应用程序列表,在所述本地应用程序列表中查找与所述第一URL对应的应用程序作为目标应用程序;
若查找到,则跳转至所述目标应用程序中与所述第一URL对应的应用界面;
获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL,根据所述第二URL生成行为记录;
在检测到与所述目标应用程序退出操作时,将所述行为记录发送至所述浏览器中进行存储,并将所述行为记录上报至服务器。
在其中一个实施例中,所述获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL还包括:
获取与所述第二URL对应的第二网页资源请求的发起时间戳;
所述根据所述第二URL生成行为记录还包括:
在所述行为记录中加入与所述第二URL对应的第二网页资源请求的发起时间戳。
在其中一个实施例中,所述根据所述第二URL生成行为记录之前还包括:
获取与所述在所述目标应用程序中发起的第二网页资源请求对应的搜索关键字;
获取与所述在所述目标应用程序中发起的第二网页资源请求对应的网页缩略图;
所述根据所述第二URL生成行为记录还包括:
在所述行为记录中加入所述搜索关键字和/或所述网页缩略图。
在其中一个实施例中,所述跳转至所述目标应用程序中与所述第一URL对应的应用界面之后还包括:
关闭所述浏览器。
在其中一个实施例中,所述跳转至所述目标应用程序中与所述第一URL对应的应用界面之前还包括:
判断所述目标应用程序是否属于所述预设的可跳转应用程序的白名单,若是,则执行所述跳转至所述目标应用程序中与所述第一URL对应的应用界面。
此外,还提出了一种浏览器跳转至应用程序的控制装置。
一种浏览器跳转至应用程序的控制装置,包括:
网页资源请求检测模块,用于检测浏览器中发起第一网页资源请求的操作,在检测到所述操作时,获取所述第一网页资源请求对应的第一URL;
目标应用程序确定模块,用于读取本地应用程序列表,在所述本地应用程序列表中查找与所述第一URL对应的应用程序作为目标应用程序;
应用程序跳转模块,用于在查找到与所述第一URL对应的应用程序时,跳转至所述目标应用程序中与所述第一URL对应的应用界面;
行为记录生成模块,用于获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL,根据所述第二URL生成行为记录;
行为记录上报模块,用于在检测到与所述目标应用程序退出操作时,将所述行为记录发送至所述浏览器中进行存储,并将所述行为记录上报至服务器。
在其中一个实施例中,所述行为记录生成模块还用于获取与所述第二URL对应的第二网页资源请求的发起时间戳;在所述行为记录中加入与所述第二URL对应的第二网页资源请求的发起时间戳。
在其中一个实施例中,所述行为记录生成模块还用于获取与所述在所述目标应用程序中发起的第二网页资源请求对应的搜索关键字;获取与所述在所述目标应用程序中发起的第二网页资源请求对应的网页缩略图;在所述行为记录中加入所述搜索关键字和/或所述网页缩略图。
在其中一个实施例中,所述应用程序跳转模块还用于关闭所述浏览器。
在其中一个实施例中,所述装置还包括白名单判断模块,用于判断所述目标应用程序是否属于所述预设的可跳转应用程序的白名单,若是,则调用所述应用程序跳转模块。
采用了上述浏览器跳转至应用程序的控制方法和装置之后,在用户在浏览器中进行网页浏览时,解析所访问的网页的地址信息,若该地址信息与终端中安装的应用程序是匹配的,则跳转至对应的应用程序中继续网页的浏览;并且,在应用程序中继续挖网页浏览的过程中,记录在该应用程序中进行网页浏览所产生的访问记录,并在结束访问时,将记录的访问记录发送至浏览器,以便浏览器在上报访问记录时一并将在应用程序中的访问记录上报。也就是说,虽然在浏览器中访问网页的过程中跳转至应用程序中进行网页浏览,但是因为统计服务器在统计用户的访问记录时,也统计了用户在应用程序上的访问记录,并没有因为跳转至应用服务器而导致无法统计完整的访问记录,即统计服务器统计的是用户完整的访问记录,提高了用户访问记录统计的准确性。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本实施例中,提出了一种浏览器跳转至应用程序的控制方法,该方法的实现可依赖于计算机程序,该计算机程序可运行于基于冯诺依曼体系的计算机系统之上,该计算机程序可以是终端上的应用程序的启动管理的应用程序或浏览器与其他应用的关联启动的管理应用程序。该计算机系统可以是运行上述计算机程序的例如智能手机、平板电脑、个人电脑等服务器或终端。
具体的,如图1所示,上述浏览器跳转至应用程序的控制方法包括如下步骤:
步骤S102:检测浏览器中发起第一网页资源请求的操作,在检测到所述操作时,获取所述第一网页资源请求对应的第一URL。
在进行网页访问的过程中,用户在地址栏中输入将要访问的网页地址,或者点击网站上包含的其他网站的网页地址,浏览器根据用户的操作以及对应的网页地址生成相应的HTTP请求,并发送给Web服务器,也就是说,用户在浏览器中发起第一网页资源请求,并且,该请求对应上述网页地址。
可以在浏览器中预先定义脚本语言,例如JavaScript等,检测网页资源请求的操作,例如超链接控件的点击事件、按钮控件的点击事件,从而获取网页资源请求对应的URL,即网络地址。
需要说明的是,在本实施例中,在检测到用户在浏览器中发起第一网络资源请求时,获取与该请求对应的网络地址,即获取与该请求对应的URL(Uniform ResourceLocator)。
步骤S104:读取本地应用程序列表,在所述本地应用程序列表中查找与所述第一URL对应的应用程序作为目标应用程序,若查找到,则执行步骤S1060:跳转至所述目标应用程序中与所述第一URL对应的应用界面;若未查找到,则执行步骤S1062:在所述浏览器中展示与第一URL对应的页面。
在进行网站访问时,浏览器从所获取的URL中提取关键字,并通过关键字与本地安装的应用程序信息进行比对,查找是否有与该网址信息对应的应用程序。例如,在终端访问淘宝网时,获取其网页地址为“https://www.taobao.com/”,终端提取出其中的关键字为“taobao”,终端在本地的应用程序列表中查询到注册信息包含有关键字“taobao”的应用程序,即判定网址信息与本地应用程序相对应,并将该本地应用程序标识为目标应用程序,该目标应用程序即为跳转的应用程序。
在本实施例中,若目标应用程序存在的情况下,为了保证用户在浏览页面时的良好的适用体验,跳转至目标应用程序中继续进行浏览和操作。具体的,浏览器在查找到本地应用程序列表中存在与网页地址相对应的应用程序时,即向应用程序管理软件发送指令来跳转至对应的应用程序;该指令的发送可以通过内置在浏览器中的应用程序管理的插件直接向应用程序管理软件发送指令。在另一个实施例中,也可以通过浏览器向终端控制中心发送指令,再由终端控制中心向应用程序管理软件发送指令,从而实现从浏览器向应用程序的跳转。
需要说明的是,在由浏览器跳转至目标应用程序时,还将上述检测到的在浏览器中发起的第一网页资源请求以及相应的第一URL也一并发送给目标应用程序,目标应用程序在启动之后,根据第一网页资源请求以及相应的第一URL展示与第一URL对应的应用界面,从而实现在浏览器中发起网页资源请求而在目标应用程序中展示用户发起的网页资源请求对应的界面。
因为浏览器或者应用程序的运行均需要占用终端的内存,因此,为了节约终端的内存资源,在跳转至目标应用程序之后,关闭原来的浏览器。具体的,在一个实施例中,上述跳转至所述目标应用程序中与所述第一URL对应的应用界面之后还包括:关闭所述浏览器。
可选的,在一个实施例中,并不是所有的在浏览器中的操作均跳转至对应的应用程序进行操作,例如,用户可以设置在需要跳转的应用为A应用时,不进行跳转,或者,还可以设置在需要跳转的应用为B应用时,进行跳转。进一步的,还可以设置可跳转应用的白名单以及不可跳转应用的黑名单。
具体的,在一个实施例中,上述跳转至所述目标应用程序中与所述第一URL对应的应用界面之前还包括:判断所述目标应用程序是否属于所述预设的可跳转应用程序的白名单,若是,则执行所述跳转至所述目标应用程序中与所述第一URL对应的应用界面。
也就是说,在浏览器或者终端中预设有可跳转应用程序白名单,即在检测到终端中的本地应用程序列表中包含的应用程序存在于该白名单中时,终端的应用程序管理软件允许该应用程序的启动。例如,在浏览器中设置的应用程序白名单中包含支付宝软件,当用户在访问网站时,所访问的网页链接中包含“alipay”关键字,浏览器检测其对应的应用程序为支付宝软件,并在终端的本地应用程序列表中查找到存在支付宝软件,并且,该支付宝软件属于上述可跳转应用的白名单上,则执行相应的跳转操作。
再例如,在浏览器中还设置有不可跳转应用的黑名单,在需要跳转的目标应用程序属于该黑名单时,无论在终端上是否已经安装有该应用程序,均不进行跳转操作。
步骤S108:获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL,根据所述第二URL生成行为记录。
步骤S110:在检测到与所述目标应用程序退出操作时,将所述行为记录发送至所述浏览器中进行存储,并将所述行为记录上报至服务器。
在跳转至目标应用程序之后,在目标应用程序中开启一个进程用来记录用户在目标应用程序中进行数据浏览的过程中产生的历史数据。例如,用户在目标应用程序中通过搜索操作、链接点击操作等操作产生的网页数据浏览的历史数据。具体的,上述进程在用户进行网页数据浏览的过程中,获取在目标应用程序中发起的所有的网页资源请求对应的网页地址(或URL),并根据获取到的所有的URL生成行为记录。该行为记录中包括了用户在使用目标应用数据浏览数据的过程中的所有的访问记录。
为了使得在浏览器中包含有用户的所有的访问记录,并且在上报给web服务器的访问记录时用户的完整的访问记录,因此,在用户在目标应用程序中完成数据的访问之后,将用户在目标应用程序中的访问记录发送给浏览器,以便浏览器获取完成的访问记录。
具体的,在退出目标应用程序时,将在目标应用程序中将相关的历史数据发送至浏览器,即将行为记录发送至浏览器。因此,在浏览器中不仅包括了用户在浏览器中相应的行为记录或访问记录,还包括了用户在目标应用程序中进行数据访问的行为记录或访问记录。从而使得浏览器在将行为记录或访问记录上报给web服务器时,上报的数据覆盖了用户完整的访问记录,提高了上报数据的完整性。
需要说明的是,在本实施例中,浏览器上报的行为记录为目标应用程序发送至浏览器的行为记录,还可以包括了浏览器根据在浏览器上进行的数据浏览的记录生成的行为记录。
可选的,在用户结束浏览之后,浏览器将用户的访问记录存储到浏览器缓存中。浏览器缓存,通常称为Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的键key/值value保存到某个目录下的文本文件内,下次请求同一网站时就发送该Cookie给服务器(前提是浏览器设置为启用Cookie)。Cookie名称和值可以由服务器端开发自己定义,对于JSP而言也可以直接写入jsessionid,这样服务器可以知道该用户是否是合法用户以及是否需要重新登录等,服务器可以设置或读取Cookies中包含信息,借此维护用户跟服务器会话中的状态。在用户在目标应用程序中进行数据访问之后,将相应的行为记录也一并存储在浏览器的Cookie中。
需要说明的是,在本实施例中,在生成行为记录的同时,不仅将网页地址或URL包含在该行为记录中,还在行为记录中存储有与每一项行为记录对应的时间戳,用来区分网页浏览的先后顺序。
具体的,所述获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL还包括:获取与所述第二URL对应的第二网页资源请求的发起时间戳;所述根据所述第二URL生成行为记录还包括:在所述行为记录中加入与所述第二URL对应的第二网页资源请求的发起时间戳。
进一步的,在行为记录中还可以包括有用户在进行网页搜索时输入的搜索关键字等搜索记录,该搜索记录可以用来确定用户的偏好信息;并且,在行为记录中还可以包括有用户在浏览网页时产生的网页缩略图等相关数据。
具体的,上述根据所述第二URL生成行为记录之前还包括:获取与所述在所述目标应用程序中发起的第二网页资源请求对应的搜索关键字;获取与所述在所述目标应用程序中发起的第二网页资源请求对应的网页缩略图;所述根据所述第二URL生成行为记录还包括:在所述行为记录中加入所述搜索关键字和/或所述网页缩略图。
也就是说,在用户通过目标应用程序访问网络时,不仅仅获取用户访问的网页所对应的网页地址或对应的URL,还需要获取用户在网页的浏览的过程中搜索网页所产生的搜索官建立等搜索历史,并且将上述搜索历史添加到行为记录中,以便web服务器再统计用户的偏好信息时根据搜索历史来确定用户的偏好信息。
此外,在一个实施例中,如图2所示,还提出了一种浏览器跳转至应用程序的控制装置,包括网页资源请求检测模块102、目标应用程序确定模块104、应用程序跳转模块106、行为记录生成模块108以及行为记录上报模块110,其中:
网页资源请求检测模块102,用于检测浏览器中发起第一网页资源请求的操作,在检测到所述操作时,获取所述第一网页资源请求对应的第一URL;
目标应用程序确定模块104,用于读取本地应用程序列表,在所述本地应用程序列表中查找与所述第一URL对应的应用程序作为目标应用程序;
应用程序跳转模块106,用于在查找到与所述第一URL对应的应用程序时,跳转至所述目标应用程序中与所述第一URL对应的应用界面;
行为记录生成模块108,用于获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL,根据所述第二URL生成行为记录;
行为记录上报模块110,用于在检测到与所述目标应用程序退出操作时,将所述行为记录发送至所述浏览器中进行存储,并将所述行为记录上报至服务器。
可选的,在一个实施例中,行为记录生成模块108还用于获取与所述第二URL对应的第二网页资源请求的发起时间戳;在所述行为记录中加入与所述第二URL对应的第二网页资源请求的发起时间戳。
可选的,在一个实施例中,行为记录生成模块108还用于获取与所述在所述目标应用程序中发起的第二网页资源请求对应的搜索关键字;获取与所述在所述目标应用程序中发起的第二网页资源请求对应的网页缩略图;在所述行为记录中加入所述搜索关键字和/或所述网页缩略图。
可选的,在一个实施例中,应用程序跳转模块106还用于关闭所述浏览器。
可选的,在一个实施例中,如图2所示,上述装置还包括白名单判断模块112,用于判断所述目标应用程序是否属于所述预设的可跳转应用程序的白名单,若是,则调用所述应用程序跳转模块106。
采用了上述浏览器跳转至应用程序的控制方法和装置之后,在用户在浏览器中进行网页浏览时,解析所访问的网页的地址信息,若该地址信息与终端中安装的应用程序是匹配的,则跳转至对应的应用程序中继续网页的浏览;并且,在应用程序中继续挖网页浏览的过程中,记录在该应用程序中进行网页浏览所产生的访问记录,并在结束访问时,将记录的访问记录发送至浏览器,以便浏览器在上报访问记录时一并将在应用程序中的访问记录上报。也就是说,虽然在浏览器中访问网页的过程中跳转至应用程序中进行网页浏览,但是因为统计服务器在统计用户的访问记录时,也统计了用户在应用程序上的访问记录,并没有因为跳转至应用服务器而导致无法统计完整的访问记录,即统计服务器统计的是用户完整的访问记录,提高了用户访问记录统计的准确性。
在一个实施例中,如图3所示,图3展示了一种运行上述浏览器跳转至应用程序的控制方法的基于冯诺依曼体系的计算机系统的终端。该计算机系统可以是智能手机、平板电脑、掌上电脑、笔记本电脑或个人电脑等终端设备。具体的,可包括通过系统总线连接的外部输入接口1001、处理器1002、存储器1003和输出接口1004。其中,外部输入接口1001可选的可至少包括网络接口10012。存储器1003可包括外存储器10032(例如硬盘、光盘或软盘等)和内存储器10034。输出接口1004可至少包括显示屏10042等设备。
在本实施例中,本方法的运行基于计算机程序,该计算机程序的程序文件存储于前述基于冯诺依曼体系的计算机系统的外存储器10032中,在运行时被加载到内存储器10034中,然后被编译为机器码之后传递至处理器1002中执行,从而使得基于冯诺依曼体系的计算机系统中形成逻辑上的网页资源请求检测模块102、目标应用程序确定模块104、应用程序跳转模块106、行为记录生成模块108、行为记录上报模块110以及白名单判断模块112。且在上述浏览器跳转至应用程序的控制方法执行过程中,输入的参数均通过外部输入接口1001接收,并传递至存储器1003中缓存,然后输入到处理器1002中进行处理,处理的结果数据或缓存于存储器1003中进行后续地处理,或被传递至输出接口1004进行输出。
具体的,在本实施例中,处理器1002用于检测浏览器中发起第一网页资源请求的操作,在检测到所述操作时,获取所述第一网页资源请求对应的第一URL;读取本地应用程序列表,在所述本地应用程序列表中查找与所述第一URL对应的应用程序作为目标应用程序;若查找到,则跳转至所述目标应用程序中与所述第一URL对应的应用界面;获取在所述目标应用程序中发起的第二网页资源请求对应的第二URL,根据所述第二URL生成行为记录;在检测到与所述目标应用程序退出操作时,将所述行为记录发送至所述浏览器中进行存储,并将所述行为记录上报至服务器。
在可选的实施例中,处理器1002还用于获取与所述第二URL对应的第二网页资源请求的发起时间戳;在所述行为记录中加入与所述第二URL对应的第二网页资源请求的发起时间戳。
在可选的实施例中,处理器1002根据所述第二URL生成行为记录之前,处理器1002还用于获取与所述在所述目标应用程序中发起的第二网页资源请求对应的搜索关键字;获取与所述在所述目标应用程序中发起的第二网页资源请求对应的网页缩略图;处理器1002还用于在所述行为记录中加入所述搜索关键字和/或所述网页缩略图。
在可选的实施例中,在处理器1002跳转至所述目标应用程序中与所述第一URL对应的应用界面之后,处理器1002还用于关闭所述浏览器。
在可选的实施例中,在处理器1002跳转至所述目标应用程序中与所述第一URL对应的应用界面之前,处理器1002还用于判断所述目标应用程序是否属于所述预设的可跳转应用程序的白名单,并在目标应用程序属于所述预设的可跳转应用程序的白名单时,跳转至所述目标应用程序中与所述第一URL对应的应用界面。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。