具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1为本发明实施例提供的用户终端10与服务器20进行交互的示意图,所述服务器20通过网络30与一个或多个用户终端10进行通信连接,以进行数据通信或交互。所述服务器20可以是网络服务器、数据库服务器等。所述用户终端10可以是个人电脑(personalcomputer,PC)、平板电脑、智能手机、个人数字助理(personal digital assistant,PDA)、可穿戴设备等终端。
于本发明实施例中,用户终端10优选为移动终端设备,例如可以包括智能手机、平板电脑、电子书阅读器、膝上型便携计算机、车载电脑、穿戴式移动终端等等。
图2示出了一种可应用于本发明实施例中的用户终端10的结构框图。如图2所示,用户终端10包括存储器101、存储控制器102,一个或多个(图中仅示出一个)处理器103、外设接口104、射频模块105、音频模块106、触控屏幕107等。这些组件通过一条或多条通讯总线/信号线108相互通讯。
存储器101可用于存储软件程序以及模块,如本发明实施例中的用户行为追踪方法以及装置对应的程序指令/模块,处理器103通过运行存储在存储器101内的软件程序以及模块,从而执行各种功能应用以及数据处理,如本发明实施例提供的用户行为追踪方法。
存储器101可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器103以及其他可能的组件对存储器101的访问可在存储控制器102的控制下进行。
外设接口104将各种输入/输入装置耦合至处理器103以及存储器101。在一些实施例中,外设接口104,处理器103以及存储控制器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
射频模块105用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。
音频模块106向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。
触控屏幕107在用户终端10与用户之间同时提供一个输出及输入界面。具体地,触控屏幕107向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频及其任意组合。
可以理解,图2所示的结构仅为示意,用户终端10还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。
图3示出了一种可应用于本发明实施例中的服务器的结构框图。如图3所示,服务器20包括:存储器201、处理器202以及网络模块203。
存储器201可用于存储软件程序以及模块,如本发明实施例中的用户行为追踪方法及装置对应的程序指令/模块,处理器202通过运行存储在存储器201内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现本发明实施例中的用户行为追踪方法。存储器201可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。进一步地,上述存储器201内的软件程序以及模块还可包括:操作系统221以及服务模块222。其中操作系统221,例如可为LINUX、UNIX、WINDOWS,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通讯,从而提供其他软件组件的运行环境。服务模块222运行在操作系统221的基础上,并通过操作系统221的网络服务监听来自网络的请求,根据请求完成相应的数据处理,并返回处理结果给客户端。也就是说,服务模块222用于向客户端提供网络服务。
网络模块203用于接收以及发送网络信号。上述网络信号可包括无线信号或者有线信号。
可以理解,图3所示的结构仅为示意,服务器20还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。
于本发明实施例中,用户终端10中安装有客户端,该客户端可以是浏览器也可以是第三方应用软件,与服务器(Server)端相对应,为用户提供服务,例如电子书阅读服务,用于播放本地文档或者电子书。
本发明实施例提供的用户行为追踪方法及装置,主要是基于安卓页面展开和点击行为的生命周期事件展开,具有较高的准确性和实时性。
请参照图4,图4为本发明实施例提供的一种用户行为追踪方法的流程图,该方法应用于用户终端,主要描述的是用户终端中客户端的处理流程,所述方法具体包括如下步骤:
步骤S110:响应作用于第一页面的预设操作,所述预设操作用于打开第二页面,将与所述第一页面对应的第一页面标识记入第二页面的页面路径信息中;
具体的,所述预设操作可以是用户通过点击用户终端上的实体按键或是通过点击触控屏幕内的虚拟按键或是以遥控的方式对客户端下达的打开第二页面的指令。客户端响应所述预设操作后,即可以将第一页面的页面标识记入第二页面的页面路径信息中。
其中,页面路径信息可以是每个页面对应的数据信息,其可以存储于用户终端的存储器中,可以理解的是,第一页面和第二页面都分别具有与其对应的页面路径信息,即第一页面的页面路径信息和第二页面的页面路径信息。可以理解的是,当页面从第一页面(上一个页面)向第二页面(当前页面)跳转时,前一个页面的页面标识自动记入即将打开的当前页面的页面路径信息中。
作为一种方式,客户端在首次安装到用户终端中时,可以预先分配页面标识给每个页面。被分配页面标识的页面可以是客户端内的操作页面,也可以是用户终端内安装的其他应用的操作页面,还可以是用户终端的系统操作页面。可以理解的是,被分配页面标识的页面数量可以是客户端内的所有页面,也可以是部分重要页面,例如设计者预先通过其他途径调查或对已知的用户行为进行分析获知的可能的用户操作或停留频率高的关键页面。
特别的,当客户端经历一次更新,在新的客户端中可以重新对所有的页面标识进行重置。例如设计者可以对前一次发布的客户端获取的用户行为进行分析,并对产品做出具有针对性的优化更新,此时设计者认为的客户端内的关键页面或是值得分配页面标识的页面相较上一个版本发生了变化,即可给更新后的客户端内的页面重新分配页面标识,便于更准确的追踪用户行为。
其中,页面标识可以理解为给每个页面设定名称,该名称可以是于交互界面上可见的,也可以是在后台约定的。对于每一个分配有页面标识的页面,其具有页面标识可以是唯一的,即每个页面对应一个唯一的页面标识,每个页面与每个页面标识一一对应;相同的页面标识所对应的页面也可以不止一个,即多个页面对应一个唯一的页面标识,同一页面标识对应于多个页面。可以理解的是,对于客户端内具有相同或类似功能的页面,设计者可以给这些页面分配相同的页面标识,例如客户端内的A页面为运动服商品页面,B页面为运动鞋商品页面,C页面为体育新闻页面,用户无论浏览了客户端的A页面或是浏览了B页面或是浏览了C页面,都可以对用户的喜好分类为“运动类”,在这种用户喜好分类标准的前提下,A页面、B页面、C页面对于用户行为分析提供的作用是相同的,可以认为是属于同一类别的页面,客户端设计者可选择给A页面、B页面及C页面分配相同且唯一的页面标识,即给属于同一类别的页面分配相同且唯一的标识。
进一步的,设计者可以对客户端内每个页面进行一对一的页面标识分配,在分配页面标识的同时,按照预设标准对每个页面进行分类,所述预设标准即页面的分类标准,可以将通过预先调查分析确定的具有相同或类似功能的页面归为同一类别的页面,给这些属于同一类别的页面额外设定区别于页面标识的相同且唯一的类别标识。需要说明的是,客户端在将页面标识记入页面路径信息的同时,记入该页面的类别标识。此时,从页面路径信息中能够获取的用户操作路径即可分为两条,一条为以页面标识为依据的用户页面操作路径,另一条为以类别标识为依据的用户类别操作路径,两条路径相比较,以页面标识为依据的用户页面操作路径能够精确表示用户具体对哪个页面进行过操作,用于细致分析用户的操作行为;而以类别标识为依据的用户类别操作路径主要表示用户对哪些类别的页面进行过操作,用于大致了解并快速确认用户的习惯与喜好。
步骤S120:打开所述第二页面,并将与所述第二页面对应的第二页面标识记入所述第二页面的页面路径信息中;
客户端响应用户在第一页面(上一个页面)上打开第二页面的操作,在打开第二页面的同时,将第二页面(当前页面)对应的第二页面标识记入当前页面的页面路径信息中。不难理解,当第二页面创建完毕之后,第二页面(当前页面)的页面路径信息中包含了按先后顺序排列的第一页面(上一个页面)的页面标识和第二页面(当前页面)的页面标识,即形成了一条用户从第一页面向第二页面跳转的路径。
步骤S130:将所述第二页面的页面路径信息发送至服务器。
客户端将记有第一页面(上一个页面)的页面标识和第二页面(当前页面)的页面标识的第二页面的页面路径信息通过网络上传至服务器。
其中,第二页面的页面路径信息可以包含第一页面(上一个页面)的创建时间以及第二页面(当前页面)的创建时间,由此可以反映第一页面到第二页面的时间顺序,即反映用户是从第一页面向第二页面切换,而并非是从第二页面向第一页面切换。
作为一种方式,在将页面标识记入当前页面的页面路径信息时,具体的,例如客户端有A、B两个页面,页面A的页面标识记为“a”,页面B的页面标识记为“b”,当页面A被点击,而进入新的页面B时,记下当前页面A的页面标识“a”传给新的页面B,并记下页面A的名称prePage(上一个页面)=“a”;页面B创建时,记下页面B的名称curPage(当前页面)=“b”,与此同时,页面B拥有A、B前后两个页面的页面信息prePage和curPage;在页面B创建完毕后,页面B会将拥有prePage(上一个页面的信息)和curPage(当前页面的信息)的页面路径信息上传给服务器。
需要说明的是,本实施例中页面的页面标识,可以仅作为后台数据进行记录,也可以同时显示在用户终端的交互界面上,例如在每个页面的交互界面上显示该页面对应的页面标识,该页面标识可以通过阿拉伯数字“1”、“2”、“3”,或是英文字母“a”、“b”、“c”,或是中文汉字“第一页”、“第二页”、“第三页”等形式显示出来。
请参照图5,图5为本发明实施例提供的另一种用户行为追踪方法的流程图,本方法是在前述方法(图4所示)的基础上,提供一种生成表示用户操作路径的链表的具体实施方式,由于本方法需要前述方法中经步骤S130发送的页面路径信息,因此本方法步骤可以于图4所示方法的步骤之后进行。本方法应用于服务器,主要描述的是服务器的处理流程,本方法具体包括如下步骤:
步骤S210:接收用户终端发送的第二页面的页面路径信息,所述第二页面的页面路径信息包含第一页面对应的第一页面标识和第二页面对应的第二页面标识,所述第二页面为所述用户终端的用户在所述第一页面上进行预设操作后打开的页面;
服务器接收到用户终端发送的第二页面的页面路径信息。需要说明的是,在用户从第一页面向第二页面切换(此时第一页面为上一个页面,第二页面为当前页面)之前,即用户由其他页面向第一页面切换时,其他页面作为上一个页面,第一页面作为当前页面,此时第一页面的页面路径信息中即包含了在切换为第一页面之前的那个页面的页面标识以及第一页面的页面标识。
可以理解的是,在用户终端向服务器发送第二页面的页面路径信息之前,服务器就已经获取了用户终端发送的第一页面的页面路径信息。
步骤S220:将所述第二页面的页面路径信息和所述第一页面的页面路径信息按时间顺序生成链表。
服务器在获取第一页面的页面路径信息之后,紧接着获取了用户终端发送的第二页面的页面路径信息。可以理解的是,用户的操作顺序为,在第一页面之前的那个页面上打开了第一页面,然后在第一页面上打开了第二页面。此时,第一页面的上一页面、第一页面、第二页面之间即可按照时间顺序进行首尾相连,得到一个反应用户从第一页面的上一页面到第一页面、又从第一页面到第二页面操作路径的链表。
作为一种方式,假设服务器依次获取了由同一用户终端连续发送的三个页面路径信息(日志),其中,最先获取的第一个页面路径信息为prePage=“a”,curPage=“b”;紧接着获取的第二个页面路径信息为prePage=“b”,curPage=“c”;最后获取的第三个页面路径信息为prePage=“c”,curPage=“d”。将每个页面路径信息视为一个节点,每个节点包含了前后两个页面对应的页面标识,将这些节点根据时间顺序进行首尾连接,即可获取一个链表,则上述由同一用户终端连续发送的三个页面路径信息生成的链表为:
a→b→c→d
该链表即可代表用户的一条操作路径,可解释为从页面“a”进入页面“b”,再由页面“b”进入页面“c”,页面“c”再继续跳转至页面“d”,而到达页面“d”后,若服务器不再接收到新的页面路径信息或是连贯的页面路径信息(prePage=“d”的页面路径信息),即可表示用户到达页面“d”后就退出了客户端。以此类推,链表的长度可以是任意的,其取决于服务器获取的连续的页面路径信息的数量。
通过获取不同用户终端发送的页面路径信息并生成与之对应的链表,即可获知不同用户的操作路径,进而计算出绝大部分用户的常用路径,该常用路径代表着该应用客户端的必经路径,或者反映出该用户感兴趣的路径。
通过上述方法追踪用户经常停留的页面、用户喜欢的操作路径以及客户端中的必经路径,可以方便设计者准确找到其应用客户端中最有价值的页面及路径,为客户端运营和商业化提供优化的数据依据,可有效提高客户端的运营效率,提升产品的质量及用户体验的满意度,从而提升从设计到收益的转化率,最终提升产品的价值。
请参照图6,图6为本发明实施例提供的一种用户行为追踪装置300的结构框图,该用户行为追踪装置300可运行于用户终端,用于实现图4所示的用户行为追踪方法。所述用户行为追踪装置300包括路径创建模块310、路径统计模块320及路径发送模块330。
路径创建模块310,用于响应作用于第一页面的预设操作,所述预设操作用于打开第二页面,将与所述第一页面对应的第一页面标识记入第二页面的页面路径信息中;
路径统计模块320,用于打开所述第二页面,并将与所述第二页面对应的第二页面标识记入所述第二页面的页面路径信息中;
路径发送模块330,用于将所述第二页面的页面路径信息发送至服务器。
图6所示的用户行为追踪装置300中,各模块可以是由软件代码实现,此时,上述的各模块可存储于用户终端10的存储器101内。以上各模块同样可以由硬件例如集成电路芯片实现。
请参照图7,图7为本发明实施例提供的一种用户行为追踪装置400的结构框图,该用户行为追踪装置400可运行于服务器,用于实现图5所示的用户行为追踪方法。所述用户行为追踪装置400包括路径接收模块410、和链表生成模块420。
路径接收模块410,用于接收用户终端发送的第二页面的页面路径信息,所述第二页面的页面路径信息包含第一页面对应的第一页面标识和第二页面对应的第二页面标识,所述第二页面为所述用户终端的用户在所述第一页面上进行预设操作后打开的页面;
链表生成模块420,用于将所述第二页面的页面路径信息和所述第一页面的页面路径信息按时间顺序生成链表。
图7所示的用户行为追踪装置400中,各模块同样可以是由软件代码实现,此时,上述的各模块可存储于服务器20的存储器201内。以上各模块同样可以由硬件例如集成电路芯片实现。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
本发明实施例提供的用户行为追踪方法、装置、用户终端及服务器,可在用户有切换页面行为时,记下前后两个页面的标识,并通过用户终端向服务器提供拥有上一个页面和当前页面标识的页面路径信息,再由服务器根据用户终端发送的多个页面路径信息生成一条完整的链表以反映用户的操作路径。该方法基于安卓页面展开和点击行为的生命周期事件展开,通过对获得的页面路径信息进行大数据层面的分析,可得到用户喜欢的操作路径及行为习惯,为应用开发者提供了快速了解用户需求,并在用户关键路径上进行产品优化的通道和方向,从而提升用户体验,吸引用户对产品进行消费,大幅提高产品的商业化能力。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。