一种基于用户行为的个性化页面预加载方法及系统与流程

文档序号:17988495发布日期:2019-06-22 00:35阅读:126来源:国知局
一种基于用户行为的个性化页面预加载方法及系统与流程

本申请涉及计算机领域,尤其涉及一种基于用户行为的个性化页面预加载方法及系统



背景技术:

现有技术中使用reactnative技术开发跨平台移动应用时,页面加载方案分为整包加载、分包临时加载、分包预加载三种方式。其中,整包加载的过程是:所有的rn页面均打包在一个js包中,当某个页面需要被展示时,需要将整个js包载入系统,然后才可以展示所需页面;分包临时加载是指:不同的rn页面打包在不同的js包中,当需要展示某个页面时,将该页面所在的js包载入系统,然后展示所需页面。分包预加载是指,将一部分js包提前载入到系统中,如果打开的是已加载的js包中的页面,可以提升加载速度。这三种方式都有其缺陷:

1)整包加载的问题在于,所有页面都打包在了一个js包中。js包体积较大,载入系统的时间较长。另一方面,js包中包含了所有的rn页面,为了展示一个页面,将所有页面都载入系统,造成了资源浪费。

2)分包加载对比整包加载,展示一个rn页面时,所需要载入系统的资源有所减少。但每个rn页面打开时,都需要临时先将js包载入,之后才能展示相应页面。增大了每个页面的打开时间。对用户体验有较大影响。

3)分包预加载方式,当前都是按照经验固定预加载一些js包,打开页面时,如果是在已经加载的js包中,则加载效率会有提升。但是对于不同用户,使用习惯和流程都有区别,按照经验预加载的一些js包经常与用户打开的页面不一致,导致预加载并没有起到作用,反而浪费了系统资源。



技术实现要素:

鉴于上述问题提出了本说明书以便提供一种克服上述问题或者至少部分地解决上述问题的基于用户行为的个性化页面预加载方法及系统。

第一方面,本申请提供一种基于用户行为的个性化页面预加载方法,包括:分析群体用户行为数据得到群体推荐浏览数据;获取用户终端上报的用户个性化行为数据;基于群体推荐浏览数据及用户个性化行为数据生成个性化预加载包;将所述个性化预加载包下发到所述用户终端进行预加载。

其中,所述群体用户行为数据包括从各用户终端上报的用户页面浏览记录。

其中,所述分析群体用户行为数据得到群体用户推荐浏览数据,进一步包括:分析所述群体用户行为数据得到各个用户页面浏览路径;统计所述各个用户页面浏览路径中浏览量占比高的内容页面;依据所述内容页面得到群体推荐浏览数据。

其中,基于群体推荐浏览数据生成基础预加载包;将所述基础预加载包下发到新注册应用的用户终端进行预加载。

其中,所述用户个性化行为数据通过对所述用户终端记录的用户历史浏览数据进行分析生成。

其中,所述用户个性化行为数据通过对所述用户终端记录的用户历史浏览数据进行分析生成,进一步包括:基于所述用户历史浏览数据分析所述用户的使用习惯;根据所述用户的使用习惯生成用户个性化行为数据。

其中,所述基于群体推荐浏览数据及用户个性化行为数据生成个性化预加载包,进一步包括:将所述群体推荐浏览数据与所述用户个性化行为数据做加权计算,确定符合该用户的个性化预加载方案;依据该用户的个性化预加载方案生成个性化预加载包。

其中,所述方法还包括:获取各个用户终端上传的各用户的个性化预加载方案,结合群体推荐浏览数据更新通用预加载方案。

其中,所述将所述个性化预加载包下发到所述用户终端进行预加载,进一步包括:根据用户终端进行预加载后的用户行为数据,确定所述个性化预加载方案的反馈信息;所述反馈信息调整所述用户终端的个性化预加载方案。

第二方面,本申请提供一种基于用户行为的个性化页面预加载系统,包括:群体行为分析单元,用于分析群体用户行为数据得到群体推荐浏览数据;个性化行为单元,用于获取用户终端上报的用户个性化行为数据;预加载包生成单元,用于根据群体推荐浏览数据及用户个性化行为数据生成个性化预加载包;下发单元,用于将所述个性化预加载包下发到所述用户终端进行预加载。

其中,所述群体用户行为数据包括从各用户终端上报的用户页面浏览记录。

其中,所述群体行为分析单元,还用于,分析所述群体用户行为数据得到各个用户页面浏览路径;统计所述各个用户页面浏览路径中浏览量占比高的内容页面;依据所述内容页面得到群体推荐浏览数据。

其中,所述预加载包生成单元,还用于,根据群体推荐浏览数据生成基础预加载包;将所述基础预加载包下发到新注册应用的用户终端进行预加载。

其中,所述用户个性化行为数据通过对所述用户终端记录的用户历史浏览数据进行分析生成。

其中,所述用户个性化行为数据进一步基于所述用户历史浏览数据分析得到所述用户的使用习惯,再根据所述用户的使用习惯生成。

其中,预加载包生成单元,还用于,将所述群体推荐浏览数据与所述用户个性化行为数据做加权计算,确定符合该用户的个性化预加载方案;依据该用户的个性化预加载方案生成个性化预加载包。

其中,还包括:通用预加载方案单元,用于获取各个用户终端上传的各用户的个性化预加载方案,结合群体推荐浏览数据更新通用预加载方案。

其中,所述下发单元,还用于,根据用户终端进行预加载后的用户行为数据,确定所述个性化预加载方案的反馈信息;所述反馈信息调整所述用户终端的个性化预加载方案。

第三方面,本申请提供一种服务器,包括处理器和存储器:所述存储器用于存储执行上述方法的程序;所述处理器被配置为用于执行所述存储器中存储的程序。

第四方面,本申请提供一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现上述方法的步骤。

根据本申请的上述方案,通过分析群体用户行为数据得到群体推荐浏览数据;获取用户终端上报的用户个性化行为数据;基于群体推荐浏览数据及用户个性化行为数据生成个性化预加载包;将所述个性化预加载包下发到所述用户终端进行预加载。从而对于用户不断的使用过程中,系统会根据用户的使用行为,不断计算分析出最符合该用户的预加载方案。使得用户在打开应用页面时,对应的js包有最大的可能被预先加载,用户打开页面的速度会有最大化的提升。另外对于应用新用户,可以使用到由大数据分析得到的通用预加载方案,可以提升打开页面速度。同时,页面加载效率提高,大大降低了系统资源占用,因此对用户的整体体验也有较大提升。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。

附图说明

构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了根据本申请一实施例的基于用户行为的个性化页面预加载方法的流程图。

图2示出了根据本申请一实施例的基于用户行为的个性化页面预加载系统的结构示意图。

图3示出了根据本申请一实施例在应用于页面预加载场景的框图。

具体实施方式

下面通过附图以及具体实施例对本说明书技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

实施例

请参考图1,本申请基于用户行为的个性化页面预加载方法的一个实施例,包括:

步骤s110,分析群体用户行为数据得到群体推荐浏览数据;

其中,所述群体用户行为数据包括从各用户终端上报的用户页面浏览记录。通过用户终端与服务器进行数据传输的方式,周期或实时性的上报各个终端用户使用应用时页面浏览的记录和/或路径轨迹。基于此,在服务器就能通过各个用户终端上报,汇总得到群体用户行为数据。

在一个实施方式中,分析所述群体用户行为数据得到各个用户页面浏览路径,统计所述各个用户页面浏览路径中浏览量占比高的内容页面。也即是说,对于某些内容页面的被浏览量会非常高,说明对于很大一部分的用户都具有吸引力或阅读价值,则此页面作为推荐浏览数据,获得未浏览过此页面的用户的使用感受大概率是较优。统计各个页面的浏览量,由高到低排序,选取最高的一部分内容页面,依据这些内容页面即可得到群体推荐浏览数据。

进一步地,基于上述群体推荐浏览数据,可以直接生成一个基础预加载包,将所述基础预加载包下发到新注册应用的用户终端进行预加载,这样在不存在新用户的用户习惯或行为数据时,利用此基础预加载包推荐给新用户其他大部分用户浏览量较高的页面,也能大大提高新用户的使用感受和留存率,以此也提高了新用户的终端使用效率,降低系统资源占用。这里的基础预加载包可以js包,即javascript包,尤其是reactnative(rn)技术开发跨平台移动应用时所用的页面加载js包。

作为一个实施方式,新用户在使用应用app的过程中,使用服务器下发的基础预加载包,比如“100.jsbundle包,需要预加载”。在用户打开app时,预加载100.jsbundle,这样用户打开100.jsbundle中的页面时,就可以直接打开,而不需要再从服务器端下载页面,浏览需要等待的时间比较长,但是如果这个用户打开的页面,不是基础预加载包100.jsbundle的,而是101.jsbundle中的页面时,则需要先加载101.jsbundle到内存,再展示页面,就会比没有预加载的100.jsbundle速度慢很多。

步骤s120,获取用户终端上报的用户个性化行为数据;

其中,所述用户个性化行为数据通过对所述用户终端记录的用户历史浏览数据进行分析生成。用户终端记录用户历史浏览数据后,可以上报给服务器,也可以先对对用户历史浏览数据进行分析后,生成用户个性化行为数据后再上报给服务器。

进一步地,基于所述用户历史浏览数据分析所述用户的使用习惯,所述用户即为此用户终端的用户,当然同一个用户终端还可以有多个不同用户登录不同账号,则区分账号的形式记录用户历史浏览数据,并分析出对应不同账号的用户使用习惯,从而根据所述各个用户的使用习惯生成各个用户个性化行为数据。

作为一个实施方式,如果某一个用户,90%以上的操作都是打开

101.jsbundle中的页面,而从100.jsbundle中打开的页面频率较少,这就是这个用户的使用习惯。

获取到这个用户的习惯后,对下发下来的“100.jsbundle包,需要预加载”这条信息,进行修改,修改为“101.jsbundle,需要预加载”。

步骤s130,基于群体推荐浏览数据及用户个性化行为数据生成个性化预加载包;

其中,将所述群体推荐浏览数据与所述用户个性化行为数据做加权计算,确定符合该用户的个性化预加载方案;依据该用户的个性化预加载方案生成个性化预加载包。

进一步地,所述方法还包括:获取各个用户终端上传的各用户的个性化预加载方案,结合群体推荐浏览数据更新通用预加载方案。

作为一种实施方式,上述用户将“101.jsbundle,需要预加载”这条个性化数据,上传给服务器。服务器获取到个性化数据后,再结合群体推荐浏览数据,即其他用户的数据,通过加权计算,可以得出不同用户群所适用的预加载方案,从而不断完善通用预加载方案。

步骤s140,将所述个性化预加载包下发到所述用户终端进行预加载。

进一步地,再根据用户终端进行预加载后的用户行为数据,确定所述个性化预加载方案的反馈信息;所述反馈信息调整所述用户终端的个性化预加载方案。

作为一种实施方式,如果某一个用户,90%以上的操作都是打开101.jsbundle中的页面,而从100.jsbundle中打开的页面频率较少,这就是这个用户的使用习惯。获取到这个用户的习惯后,对下发下来的“100.jsbundle包,需要预加载”这条信息,进行修改,修改为“101.jsbundle,需要预加载”作为反馈信息,进而动态调整所述用户终端的个性化预加载方案。

请参考图2,本申请通过基于用户行为的个性化页面预加载系统,包括:群体行为分析单元210,用于分析群体用户行为数据得到群体推荐浏览数据;个性化行为单元220,用于获取用户终端上报的用户个性化行为数据;预加载包生成单元230,用于根据群体推荐浏览数据及用户个性化行为数据生成个性化预加载包;下发单元240,用于将所述个性化预加载包下发到所述用户终端进行预加载。

其中,所述群体用户行为数据包括从各用户终端上报的用户页面浏览记录。通过用户终端与服务器进行数据传输的方式,周期或实时性的上报各个终端用户使用应用时页面浏览的记录和/或路径轨迹。基于此,在服务器就能通过各个用户终端上报,汇总得到群体用户行为数据。

具体地,所述群体行为分析单元210,还用于,分析所述群体用户行为数据得到各个用户页面浏览路径;统计所述各个用户页面浏览路径中浏览量占比高的内容页面;依据所述内容页面得到群体推荐浏览数据。也即是说,对于某些内容页面的被浏览量会非常高,说明对于很大一部分的用户都具有吸引力或阅读价值,则此页面作为推荐浏览数据,获得未浏览过此页面的用户的使用感受大概率是较优。统计各个页面的浏览量,由高到低排序,选取最高的一部分内容页面,依据这些内容页面即可得到群体推荐浏览数据。

进一步地,所述预加载包生成单元230,还用于,根据群体推荐浏览数据生成基础预加载包;将所述基础预加载包下发到新注册应用的用户终端进行预加载。这样在不存在新用户的用户习惯或行为数据时,利用此基础预加载包推荐给新用户其他大部分用户浏览量较高的页面,也能大大提高新用户的使用感受和留存率,以此也提高了新用户的终端使用效率,降低系统资源占用。这里的基础预加载包可以js包,即javascript包,尤其是reactnative(rn)技术开发跨平台移动应用时所用的页面加载js包。

作为一个实施方式,新用户在使用应用app的过程中,使用服务器下发的基础预加载包,比如“100.jsbundle包,需要预加载”。在用户打开app时,预加载100.jsbundle,这样用户打开100.jsbundle中的页面时,就可以直接打开,而不需要再从服务器端下载页面,浏览需要等待的时间比较长,但是如果这个用户打开的页面,不是基础预加载包100.jsbundle的,而是101.jsbundle中的页面时,则需要先加载101.jsbundle到内存,再展示页面,就会比没有预加载的100.jsbundle速度慢很多。

进一步地,所述用户个性化行为数据通过对所述用户终端记录的用户历史浏览数据进行分析生成。用户终端记录用户历史浏览数据后,可以上报给服务器,也可以先对对用户历史浏览数据进行分析后,生成用户个性化行为数据后再上报给服务器。

再进一步地,基于所述用户历史浏览数据分析所述用户的使用习惯,所述用户即为此用户终端的用户,当然同一个用户终端还可以有多个不同用户登录不同账号,则区分账号的形式记录用户历史浏览数据,并分析出对应不同账号的用户使用习惯,从而根据所述各个用户的使用习惯生成各个用户个性化行为数据。

具体地,所述预加载包生成单元230,还用于,将所述群体推荐浏览数据与所述用户个性化行为数据做加权计算,确定符合该用户的个性化预加载方案;依据该用户的个性化预加载方案生成个性化预加载包。

作为一种实施方式,所述系统,还包括:通用预加载方案单元,用于获取各个用户终端上传的各用户的个性化预加载方案,结合群体推荐浏览数据更新通用预加载方案。

进一步地,所述方法还包括:获取各个用户终端上传的各用户的个性化预加载方案,结合群体推荐浏览数据更新通用预加载方案。

其中,上述用户将“101.jsbundle,需要预加载”这条个性化数据,上传给服务器。服务器获取到个性化数据后,再结合群体推荐浏览数据,即其他用户的数据,通过加权计算,可以得出不同用户群所适用的预加载方案,从而不断完善通用预加载方案。

具体地,所述下发单元240,还用于,根据用户终端进行预加载后的用户行为数据,确定所述个性化预加载方案的反馈信息;所述反馈信息调整所述用户终端的个性化预加载方案。

作为一种实施方式,如果某一个用户,90%以上的操作都是打开101.jsbundle中的页面,而从100.jsbundle中打开的页面频率较少,这就是这个用户的使用习惯。获取到这个用户的习惯后,对下发下来的“100.jsbundle包,需要预加载”这条信息,进行修改,修改为“101.jsbundle,需要预加载”作为反馈信息,进而动态调整所述用户终端的个性化预加载方案。

请参考图3,根据本申请一实施例应用在页面预加载场景中的流程图,对本申请的方法和系统做进一步说明。

用户终端301和302为新注册使用的用户终端,用户终端303、304、305、……、用户终端n都为使用中的用户终端,服务器310与上述各个用户终端的进行数据传输,收集各个用户终端上报的用户页面浏览记录,比如周期或实时性的收集,所述用户页面浏览记录是通过各个终端用户使用应用时产生的页面浏览记录和/或路径轨迹,从而,在服务器就能收集各个用户终端的上报信息,汇总得到群体用户行为数据,由于用户终端301和302为新用户终端,在此还没有用户页面浏览记录,因此其群体用户行为数据由用户终端303、304、305……用户终端n汇总得到。

分析用户终端303、304、305……用户终端n汇总得到的所述群体用户行为数据,进一步得到对应303、304、305……n的用户页面浏览路径,统计其中浏览量占比高的内容页面,由高到低排序,选取最高的一部分内容页面,依据这些内容页面即可得到群体推荐浏览数据。

基于上述群体推荐浏览数据,可以直接生成一个基础预加载包,比如100.jsbundle,将所述基础预加载包下发到新注册应用的用户终端301和302进行预加载,即推荐给新用户301和302的是其他用户303……上报的浏览量较高的页面。

进一步地,新用户终端301在使用应用app的过程中,使用服务器下发的基础预加载包,比如“100.jsbundle包,需要预加载”。在用户打开app时,预加载100.jsbundle,这样用户终端301打开100.jsbundle中的页面时,就可以直接打开,而不需要再从服务器端下载页面,浏览需要等待的时间比较长,如果用户终端302打开的页面,不是基础预加载包100.jsbundle的,而是101.jsbundle中的页面时,则需要先加载101.jsbundle到内存,再展示页面,就会比没有预加载的100.jsbundle速度慢很多。

作为一种实施方式,服务器310除了获取用户终端303、用户终端304、……、用户终端n上报的用户个性化行为数据,还获取用户终端301和302上报的用户个性化行为数据;其中,所述用户个性化行为数据通过对所述用户终端记录的用户历史浏览数据进行分析生成。进一步地,基于所述用户历史浏览数据分析所述用户的使用习惯。其中,发现用户终端302在90%以上的操作都是打开101.jsbundle中的页面,而从100.jsbundle中打开的页面频率较少,这就是这个用户的使用习惯。用户终端302获取到这个用户的习惯后,对下发下来的“100.jsbundle包,需要预加载”这条信息,进行修改,修改为“101.jsbundle,需要预加载”。

用户终端302将”101.jsbundle,需要预加载”这条个性化数据,上传给服务器。服务器获取到个性化数据后,再结合其他用户的数据,通过分析计算,可以得出不同用户群所适用的预加载方案,从而不断完善通用预加载方案。

基于这样的理解,与本申请实现上述方法的一实施例相关的服务器,其包括处理器和存储器,存储器配置为存储了上述方法的一实施例的各步骤的处理程序,处理器则配置用来执行该存储器中存储的程序。

基于这样的理解,本申请实现上述方法的一实施例中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本说明书范围的所有变更和修改。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1