CN112787892B - 流量数据的统计方法及装置 - Google Patents
流量数据的统计方法及装置 Download PDFInfo
- Publication number
- CN112787892B CN112787892B CN202110150787.XA CN202110150787A CN112787892B CN 112787892 B CN112787892 B CN 112787892B CN 202110150787 A CN202110150787 A CN 202110150787A CN 112787892 B CN112787892 B CN 112787892B
- Authority
- CN
- China
- Prior art keywords
- page
- state
- current display
- jumped
- routing information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供流量数据的统计方法及装置,其中所述流量数据的统计方法包括:接收从当前显示页面跳转至待跳转页面的页面跳转指令,所述页面跳转指令包括待跳转页面的页面标识;基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,所述流量数据包括当前显示页面的第一路由信息和待跳转页面的第二路由信息。如此,在当前显示页面从当前显示页面跳转至待跳转页面时可以对此次跳转进行记录,并且通过第一路由信息和第二路由信息可以获取到此次跳转的流量数据,不需要将流量数据收集和页面的业务执行过程分离,降低了开发成本。并且,不需要额外添加埋点信息,操作比较简单,且降低了系统维护难度。
Description
技术领域
本申请涉及互联网技术领域,特别涉及一种流量数据的统计方法。本申请同时涉及一种流量数据的统计装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
统计页面的流量数据是改进页面服务的重要手段之一,通过获取用户在页面的操作,可以分析出页面中哪些内容比较受欢迎,以及多个页面中哪些页面之间的关联比较紧密,从而在后续可以有针对性地对页面的内容进行改进。
现有的统计页面流量的方法是额外埋点。例如,需要记录页面A跳转至页面B这一操作,需要在进行页面跳转之前添加from=A信息,跳转成功后在页面B中取出from=A并上报此次页面跳转事件,则相当于记录了一次流量数据。
但上述方法需要额外添加埋点信息,然后再收集上报至服务器,当页面过多时需要添加的埋点信息很多,操作比较繁琐且难以维护,另外,这种方式将流量数据收集和页面的业务执行过程分离,增加了开发成本。
发明内容
有鉴于此,本申请实施例提供了一种流量数据的统计方法。本申请同时涉及一种流量数据的统计装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的操作繁琐、难以维护且开发成本较高的问题。
根据本申请实施例的第一方面,提供了一种流量数据的统计方法,包括:
接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;
基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。
根据本申请实施例的第二方面,提供了一种流量数据的统计装置,包括:
接收模块,被配置为接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;
记录模块,被配置为基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述流量数据的统计方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述流量数据的统计方法的步骤。
本申请提供的流量数据的统计方法,接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息当前显示页面当前显示页面当前显示页面。如此,在当前显示页面从当前显示页面跳转至待跳转页面时可以对此次跳转进行记录,并且通过第一路由信息和第二路由信息可以获取到此次跳转的流量数据,不需要将流量数据收集和页面的业务执行过程分离,降低了开发成本。并且,不需要额外添加埋点信息,操作比较简单,且降低了系统维护难度。
附图说明
图1是本申请一实施例提供的一种流量数据的统计方法的流程图;
图2是本申请一实施例提供的一种包括多种页面跳转类型的页面跳转示意图;
图3是本申请一实施例提供的一种根父类和子类之间继承关系的示意图;
图4是本申请一实施例提供的一种应用于页面跳转的流量数据的统计方法的处理流程图;
图5是本申请一实施例提供的另一种应用于页面跳转的流量数据的统计方法的处理流程图;
图6是本申请一实施例提供的一种流量数据的统计装置的结构示意图;
图7是本申请一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本申请一个或多个实施例涉及的名词术语进行解释。
路由信息:可以认为是页面的地址或链接等等。
路由库(Route Lib):用于发起页面跳转、记录页面的路由信息的工具。
Activity:是一个应用程序组件,是Android(安卓)系统中的页面展示单位。在本方案中,Activity可以单独作为一个页面使用,或者Activity可以作为容器,用来展示Fragment。
Fragment:Android系统中比Activity更小的页面展示单位,必须通过Activity来展示。另外,多个Fragment之间可以进行组合,得到组合页面,或者,一个Fragment中也可以嵌套有子Fragment。
第一方式:在ViewPager(视图页面工具)中通过左右滑动跳转页面的方式。
第二方式:使用Fragment Manager(页面管理器)的show/hide(展示/隐藏)功能做页面跳转的方式。
视图页面工具:ViewPager,也可称为视图翻页工具,提供了多页面跳转的效果。
页面管理器:Fragment Manger,负责管理fragment,并将fragment的视图添加到Activity的视图层级结构中进行展示。
组合页面:内部有多个子页面,该多个子页面之间可以跳转展示。
在本申请中,提供了一种流量数据的统计方法,本申请同时涉及一种流量数据的统计装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例提供的一种流量数据的统计方法的流程图,具体可以包括以下步骤:
步骤102:接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识。
其中,页面标识可以用于唯一标识一个页面。例如,页面标识可以是创建页面时设置的页面名称、页面编号等等,本申请实施例对此不作限定。
作为一种示例,当前显示页面和待跳转页面均可以是Fragment,也可以是Activity。其中,Fragment可以是组合页面中的子页面或父页面。Activity可以独立作为一个页面,或者Activity可以作为容器用来展示页面。
实际应用中,在浏览页面的过程中,若用户不想浏览当前显示页面,想要浏览待跳转页面,则可以对当前显示页面进行滑动,或者点击待跳转页面,则计算设备可以检测到用户操作,且基于用户操作可以生成页面跳转指令,该页面跳转指令中可以包括待跳转页面的页面标识。
作为一种示例,若当前显示页面和待跳转页面是同一个组合页面中的子页面,在显示当前显示页面的过程中,用户可以通过左右滑动的方式切换页面,相应地,计算设备可以检测到用户的滑动操作,由于同一个组合页面的子页面之间的顺序是一定的,对于计算设备来说,可以确定当前显示页面的页面标识,根据检测到的滑动操作是左滑还是右滑,可以确定待跳转页面的页面标识,并且计算设备检测到该滑动操作后,可以基于待跳转页面的页面标识生成页面跳转指令。
示例性地,假设组合页面中包括页面1、页面2和页面3,当前显示页面是页面2,若检测到左滑操作,可以确定待跳转页面的页面标识是页面1,若检测到右滑操作,可以确定待跳转页面的页面标识是页面3。
本申请实施例中,接收到的页面跳转指令中包括待跳转页面的页面标识,则计算设备可以基于页面标识获取到待跳转页面的页面信息并展示,实现从当前显示页面跳转至待跳转页面的操作。
步骤104:基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。
其中,第一路由信息可以是当前显示页面的页面地址、页面链接等等。第二路由信息可以是待跳转页面的页面地址、页面链接等等。
在本申请实施例中,当前显示页面和待跳转页面可以是同一个容器中的页面,也可以是不同容器中的页面。在一些实施例中,响应于页面跳转指令,计算设备可以根据当前显示页面和待跳转页面的管理器确定当前显示页面和待跳转页面是否处于同一个容器中。
作为一种示例,对于计算设备来说,可以确定当前显示页面的页面标识,并基于该页面标识确定当前显示页面的管理器,若当前显示页面的管理器是视图页面工具ViewPager或者页面管理器Fragment Manager,则可以确定当前显示页面和待跳转页面是同一个容器中的页面;若当前显示页面的管理器是容器页面管理器(Activity Manager),则可以确定当前显示页面和待跳转页面是不同容器中的页面。或者,可以基于待跳转页面的页面标识确定待跳转页面的管理器,若待跳转页面的管理器是视图页面工具View Pager或者页面管理器Fragment Manager,则可以确定当前显示页面和待跳转页面是同一个容器中的页面;若待跳转页面的管理器是容器页面管理器(Activity Manager),则可以确定当前显示页面和待跳转页面是不同容器中的页面。
在本申请实施例中,若当前显示页面和待跳转页面是同一个容器中的页面,则无法根据路由库直接获取当前显示页面和待跳转页面的路由信息,若当前显示页面和待跳转页面是不同容器中的页面,则可以通过路由库获取当前显示页面和待跳转页面的路由信息。根据当前显示页面和待跳转页面是否处于同一个容器,本步骤可以包括如下两种实现方式。
第一种实现方式:
若所述当前显示页面和所述待跳转页面不是同一个容器中的页面,可以响应于所述页面跳转指令,获取当前显示页面的页面标识,基于所述当前显示页面的页面标识获取所述第一路由信息;基于所述待跳转页面的页面标识,获取所述第二路由信息;基于所述第二路由信息,从所述当前显示页面跳转至所述待跳转页面;记录所述页面跳转并基于所述第一路由信息和所述第二路由信息生成与此次跳转对应的流量数据。
实际应用中,若当前显示页面和待跳转页面不是同一个容器中的页面,则可以在接收到页面跳转指令时获取当前显示页面的页面标识和待跳转页面的页面标识。具体地,计算设备可以获取到当前显示页面的页面标识,并基于当前显示页面的页面标识可以获取到当前显示页面的路由信息,将第一路由信息存储至路由库中,另外,可以根据页面跳转指令中包括的待跳转页面的页面标识,获取待跳转页面的第二路由信息。将第一路由信息和第二路由信息均存储至路由库中,然后可以根据第二路由信息获取待跳转页面的页面信息,对待跳转页面的页面信息进行渲染得到待跳转页面并展示,完成从当前显示页面到待跳转页面的跳转,可以从路由库中获取第一路由信息和第二路由信息,对此次跳转进行记录,并将第一路由信息至第二路由信息确定为此次跳转对应的流量数据。
本申请实施例中,对于不是同一个容器中的页面,可以响应于页面跳转指令获取第一路由信息和第二路由信息,且将第一路由信息和第二路由信息记录在路由库中,在完成页面跳转后,记录此次跳转并通过路由库获取此次页面跳转的流量数据,无需增加额外埋点,减少了额外的开发成本。
作为一种示例,创建当前显示页面和待跳转页面时可以设置当前显示页面的第一路由信息和待跳转页面的第二路由信息,并且可以将第一路由信息作为当前显示页面的配置参数进行存储,且该配置参数与当前显示页面的页面标识存在对应关系,同理,将第二路由信息作为待跳转页面的配置参数进行存储,且该配置参数与待跳转页面的页面标识存在对应关系。
在一些实施例中,若当前显示页面是Activity页面或者组合页面中的父页面,则可以基于当前显示页面的页面标识从配置参数中获取当前显示页面的第一路由信息。
在另一些实施例中,若当前显示页面是组合页面中的子页面,基于所述当前显示页面的页面标识获取所述第一路由信息的具体实现可以包括:基于所述当前显示页面的页面标识,从所述当前显示页面所在的容器中获取所述第一路由信息。
实际应用中,若当前显示页面是组合页面中的子页面,从当前显示页面跳转至待跳转页面的过程中,可能会记录当前显示页面所在的容器的路由信息,并将该容器作为页面跳转的起始页面,这可能会导致产生错误的流量数据。因此,可以通过该当前显示页面对应的容器记录当前展示的当前显示页面的当前显示页面路由信息,且可以记录该第一路由信息与当前显示页面的页面标识之间的对应关系,如此,可以基于当前显示页面的页面标识,从当前显示页面对应的容器中获取当前显示页面的第一路由信息。
作为一种示例,类是模板,容器可以根据模板创建得到。基于同一模板可以创建出无数个容器,通常可以将公共能力配置在父类中,子类继承这个父类,也就继承父类的这些公共能力,则从这些子类创建的容器也可以具备这些公共能力。
在本申请实施例中,可以将容器对当前可见子页面的路由信息的记录能力称为路由信息记录能力,将该路由信息记录能力作为基类,通过该基类创建容器,则该路由信息记录能力可以被所有容器继承,进而所有容器具有记录当前可见子页面的路由信息的能力。如此,对于组合页面中的子页面,可以从其对应的容器中获取路由信息,进而得到流量数据,使得本方案中获取页面跳转的流量数据不局限于特定的页面,使得方案实现更加灵活。
实际应用中,可以将路由信息记录能力配置在子类中,则基于子类创建得到的所有容器可以继承该子类的路由信息记录能力,则所有容器可以具有管理容器的页面状态的状态管理器。示例性地,参见图3,原有的子类是直接继承根父类的公共能力,在本申请实施例中,可以在根父类和子类中间插入中间父类,在中间父类中配置路由信息记录能力,则子类可以继承中间父类的路由信息记录能力,进而基于子类创建的容器均可以具有路由信息记录能力。
在一些实施例中,可以基于待跳转页面的页面标识与待跳转页面的配置参数的对应关系,从配置参数中获取待跳转页面的第二路由信息。
在一些实施例中,可以将第一路由信息->第二路由信息确定为此次跳转对应的流量数据。
在该种实现方式中,当前显示页面和待跳转页面可以是各种类型的页面。第一种,当前显示页面和待跳转页面均是Activity页面;第二种,当前显示页面和待跳转页面均是Fragment页面。第三种,当前显示页面和待跳转页面中一个是Fragment页面,另一个是Activity页面。
作为一种示例,在当前显示页面和待跳转页面均是Fragment页面的情况下,可以包括当前显示页面是组合页面中的子页面,待跳转页面是组合页面的父页面。在当前显示页面和待跳转页面中一个是Fragment页面,另一个是Activity页面的情况下,可以包括当前显示页面是组合页面中的子页面,待跳转页面是Activity页面,以及当前显示页面是Activity页面,待跳转页面是组合页面的父页面。
例如,参见图2,图2中2A为当前显示页面和待跳转页面均是Activity页面,即在两个Activity页面之间进行页面跳转;2B为当前显示页面和待跳转页面均是Fragment页面,且当前显示页面是组合页面中的子页面,待跳转页面是组合页面的父页面,即在第一容器中的子页面和第二容器中的父页面之间进行页面跳转;2C为当前显示页面是Fragment页面,且当前显示页面是组合页面中的子页面,待跳转页面是Activity页面,即在第一容器中的子页面和容器页面之间进行页面跳转;2D为当前显示页面是Activity页面,待跳转页面是Fragment页面,且待跳转页面是组合页面的父页面,即在容器页面和第二容器中的父页面之间进行页面跳转。
第二种实现方式:
若所述当前显示页面和所述待跳转页面是同一个容器中的页面,可以响应于所述页面跳转指令,执行所述页面跳转的过程中,若确定所述当前显示页面和所述待跳转页面的显示状态发生改变,获取所述第一路由信息和所述第二路由信息;对所述页面跳转进行记录,并基于所述第一路由信息和所述第二路由信息生成与此次跳转对应的流量数据。
实际应用中,在接收到页面跳转指令后,可以执行该页面跳转指令,在该种实现方式中,页面跳转的过程是先隐藏当前显示页面,即将当前显示页面的显示状态由可见转换为不可见,然后显示待跳转页面,即将待跳转页面的显示状态由不可见转化为可见。由此可见,该种实现方式中当前显示页面跳转至待跳转页面并不是真正意义上的页面跳转,无法通过路由库获取路由信息,因此,可以在页面跳转的过程中,在确定当前显示页面和待跳转页面的显示状态发生变化的情况下,可以认为可能已经将当前显示页面隐藏或者将待跳转页面显示出来,因此可以获取第一路由信息和第二路由信息,并记录此次跳转,基于第一路由信息和第二路由信息生成此次跳转对应的流量数据。即第一路由信息->第二路由信息。如此,在执行页面跳转的过程中可以获取到第一路由信息和第二路由信息,并记录此次跳转,基于第一路由信息和第二路由信息生成流量数据,不需要额外添加埋点信息,不仅操作简单,而且降低了系统维护难度。
本申请实施例中,对于无法直接通过路由库记录流量数据的页面跳转,可以在执行页面跳转的过程中,在检测到当前显示页面和待跳转页面的显示状态发生变化时获取第一路由信息和第二路由信息,并且可以直接对跳转进行记录,基于第一路由信息和第二路由信息生成流量数据。如此,不需要额外添加埋点,操作简单,降低了开发成本和系统维护难度。
在实施中,若确定所述当前显示页面和所述待跳转页面的显示状态发生改变,获取所述第一路由信息和所述第二路由信息的具体实现可以包括:若确定所述当前显示页面处于不可见状态,获取所述第一路由信息;若确定所述待跳转页面处于可见状态,获取所述第二路由信息。
实际应用中,当前显示页面在进行页面跳转之前处于可见状态,响应于页面跳转指令,从当前显示页面跳转至当前显示页面需要先隐藏当前显示页面,且隐藏当前显示页面即是改变当前显示页面的显示状态,因此可以判断当前显示页面的显示状态,若当前显示页面处于不可见状态,说明当前显示页面的显示状态发生了改变,此时处于页面跳转的过程中,则可以获取第一路由信息。隐藏当前显示页面之后,则可以显示待跳转页面,即改变待跳转页面的显示状态,待跳转页面在页面跳转之前处于不可见状态,可以判断待跳转页面的显示状态,若待跳转页面处于可见状态,说明待跳转页面的显示状态发生了改变,可以认为页面跳转已经完成,则可以获取第二路由信息。
本申请实施例中,在确定当前显示页面处于不可见状态时获取第一路由信息,在确定待跳转页面处于可见状态时获取第二路由信息,均是在实现页面跳转的过程中根据页面的显示状态是否变化获取路由信息,如此,在无法通过路由库获取路由信息的情况下,也可以获取到路由信息,且不用额外添加埋点,操作简单,降低了开发成本和系统维护难度。
在一些实施例中,确定所述当前显示页面处于不可见状态的具体实现可以包括:获取所述当前显示页面的页面状态信息,并基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态。
其中,当前显示页面的页面状态信息用于表征当前显示页面是否为可见状态。
实际应用中,若当前显示页面和待跳转页面是同一个容器中的页面,则当前显示页面和待跳转页面之间的跳转无法直接采用路由库收集流量数据,而是需要根据当前显示页面和待跳转页面是否处于可见状态来记录流量数据。因此需要先确定当前显示页面和待跳转页面的显示状态。
示例性地,可以通过获取当前显示页面的页面状态信息,根据当前显示页面的页面状态信息确定当前显示页面是否处于不可见状态。
如此,对于无法直接通过路由库记录流量数据的页面跳转,也可以获取到路由信息,且不需要埋点,使得操作更加简单。
作为一种示例,所述获取所述当前显示页面的页面状态信息的具体实现可以包括:控制所述当前显示页面的状态管理器获取所述当前显示页面的页面状态信息,其中,所述状态管理器用于管理所述当前显示页面的页面状态。
其中,状态管理器可以是显/隐管理器。
作为一种示例,类是模板,页面是根据模板创建得到的。基于同一模板可以创建出无数个相同的页面,通常可以将公共能力配置在父类中,子类继承这个父类,也就继承父类的这些公共能力,则从这些子类创建的页面也可以具备这些公共能力。
实际应用中,可以将显/隐管理能力配置在子类中,则基于子类创建得到的所有当前显示页面可以继承该子类的显/隐管理能力,且将该显/隐管理能力封装在显/隐管理器中,则所有当前显示页面可以具有管理当前显示页面的页面状态的状态管理器。如此,可以控制当前显示页面的状态管理器获取当前显示页面的页面状态信息,则在任意当前显示页面中均能获取到页面状态信息,进而根据页面状态信息确定当前显示页面处于不可见状态,进而获取第一路由信息,使得本方案中获取路由信息不局限于特定的页面,获取路由信息的方式更加灵活。
示例性地,参见图3,原有的子类是直接继承根父类的公共能力,在本申请实施例中,则可以在根父类和子类中间插入中间父类,在中间父类中配置显/隐管理能力,则子类可以继承中间父类的显/隐管理能力,进而基于子类创建得到的所有页面可以具有显/隐管理能力。
需要说明的是,在本申请实施例中,若当前显示页面是Fragment,则当前显示页面可以通过上述方式获取到显/隐管理能力。
本申请实施例中,当前显示页面可以是组合页面中的父页面或者子页面,父页面是否处于不可见状态仅与自身的页面状态有关,而子页面是否处于不可见状态与其父页面的显示状态有关,由此可见,判断父页面处于不可见状态与判断子页面处于不可见状态的方式是不同的,因此,确定当前显示页面处于不可见状态可以包括当前显示页面是子页面和当前显示页面是父页面两种情况。另外,根据页面的跳转方式不同,在每种情况下,还可以根据跳转方式将确定当前显示页面处于不可见状态的实现划分为两种可能的实现方式。
第一种情况:当前显示页面和待跳转页面是同一个组合页面中的子页面。
在一种可能的实现方式中,若所述当前显示页面和所述待跳转页面是同一个组合页面中的子页面,且所述当前显示页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述当前显示页面的页面状态信息的具体实现可以包括:获取所述当前显示页面在生命周期内所处的第一状态;获取视图页面工具记录的所述当前显示页面的第二状态,其中,所述视图页面工具与所述第一方式对应;获取所述当前显示页面的父页面的显示状态;将所述第一状态、所述第二状态和所述父页面的显示状态确定为所述当前显示页面的页面状态信息。
其中,第一方式可以是在View Pager中通过左右滑动跳转页面的方式。
其中,视图页面工具可以是View Pager,也可称为视图翻页工具,提供了多页面跳转的效果。
其中,父页面的显示状态用于表征父页面是否处于可见状态。
示例性地,参见图2中的2E,2E是在同一个容器的组合页面中两个子页面之间进行页面切换的示意图。
实际应用中,对于单一页面来说,只要其在生命周期内处于可见状态,则可以认为该页面处于可见状态,但组合页面中包括多个子页面,且只要组合页面的父页面处于可见状态,则组合页面中每个子页面的生命周期均处于可见状态,因此,仅获取当前显示页面在生命周期内的第一状态是不够的,所以,在本申请实施例中,在同一个组合页面中的两个子页面之间进行页面跳转时,需要获取当前显示页面在三个方面的信息。第一个为当前显示页面在生命周期内的第一状态,若当前显示页面和待跳转页面之间通过视图页面工具实现页面切换,则第二个为视图页面工具记录的当前显示页面的第二状态,由于父页面是否可见对子页面是存在影响的,因此第三个为当前显示页面的父页面的显示状态,可以从父页面的页面显/隐管理器中获取父页面的显示状态,这三个方面的信息共同组成了当前显示页面的页面状态信息。
本申请实施例中,对于组合页面中两个子页面之间的切换,可以通过获取子页面各方面的信息得到子页面的页面状态信息,能够获得更加全面的子页面的页面状态信息,提高确定页面是否可见的准确性。
在一些实施例中,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态的具体实现可以包括:若所述第一状态、所述第二状态、或所述父页面的显示状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
其中,父页面的显示状态可以包括“可见”和“不可见”两种状态。
实际应用中,在当前显示页面和待跳转页面之间通过视图页面工具实现页面切换的情况下,如果第一状态不是on start状态,则无论第二状态和父页面处于何种状态,可以确定当前显示页面为不可见状态;如果第二状态是user visible false状态,则无论第一状态和父页面处于何种状态,可以确定当前显示页面处于不可见状态;如果父页面处于不可见状态,则无论第一状态和第二状态是何种状态,可以确定当前显示页面处于不可见状态。
举几个例子进行说明,若父页面处于不可见状态,第一状态是on start状态,第二状态是user visible true状态,则可以认为当前显示页面处于不可见状态。若第一状态不是on start状态,第二状态是user visible true状态,父页面是可见状态,则可以认为当前显示页面处于不可见状态。若第二状态是user visible false状态,第一状态是onstart状态,父页面是可见状态,可以认为当前显示页面处于不可见状态。若第一状态是onstart状态,父页面是可见状态,第二状态是user visible false状态,可以认为当前显示页面处于不可见状态。
本申请实施例中,若三个状态中有一个处于不可见状态,则认为当前显示页面处于不可见状态,如此能够准确地确定当前显示页面是否可见,提高了确定当前显示页面是否可见的准确率。
在另一种可能的实现方式中,若所述当前显示页面和所述待跳转页面为同一个组合页面中的子页面,且所述当前显示页面对应的组合页面中的子页面之间通过第二方式进行跳转,获取所述当前显示页面的页面状态信息的具体实现可以包括:获取所述当前显示页面在生命周期内所处的第一状态;获取页面管理器记录的所述当前显示页面的第三状态,其中,所述页面管理器与所述第二方式对应;获取所述当前显示页面的父页面的显示状态;将所述第一状态、所述第三状态和所述父页面的显示状态确定为所述当前显示页面的页面状态信息。
其中,第二方式为通过Fragment Manager的show/hide功能做页面跳转的方式。
其中,页面管理器Fragment Manger,负责管理Fragment,并将Fragment的视图添加到Activity的视图层级结构中进行展示。
实际应用中,对于单一页面来说,只要其在生命周期内处于可见状态,则可以认为该页面处于可见状态,但组合页面中包括多个子页面,且只要组合页面的父页面处于可见状态,则组合页面中每个子页面的生命周期均处于可见状态,因此,仅获取当前显示页面在生命周期内的第一状态是不够的,所以,在本申请实施例中,在同一个组合页面中的两个子页面之间进行页面跳转时,需要获取当前显示页面在三个方面的信息。第一个为当前显示页面在生命周期内的第一状态,若当前显示页面和待跳转页面之间通过页面管理器实现页面切换,第二个为页面管理器记录的当前显示页面的第三状态,由于父页面是否可见对子页面是存在影响的,因此第三个为当前显示页面的父页面的显示状态,这三个方面的信息共同组成了当前显示页面的页面状态信息。
本申请实施例中,对于组合页面中两个子页面之间的切换,可以通过获取子页面各方面的信息得到子页面的页面状态信息,能够获得更加全面的子页面的页面状态信息,提高确定页面是否可见的准确性。
在一些实施例中,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态的具体实现可以包括:若所述第一状态、所述第三状态、或所述父页面的显示状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
实际应用中,在当前显示页面和待跳转页面之间通过页面管理器实现页面切换的情况下,如果第一状态不是on start状态,则无论第三状态和父页面处于何种状态,可以确定当前显示页面为不可见状态;如果第三状态不是show状态,即处于hide状态,则无论第一状态和父页面处于何种状态,可以确定当前显示页面处于不可见状态;如果父页面处于不可见状态,则无论第一状态和第三状态为何种状态,可以确定当前显示页面处于不可见状态。
举几个例子进行说明,若父页面处于不可见状态,第一状态是on start状态,第二状态是hide状态,则可以认为当前显示页面处于不可见状态。若第一状态不是on start状态,第二状态是show状态,父页面是可见状态,则可以认为当前显示页面处于不可见状态。若第二状态是hide状态,第一状态是on start状态,父页面是可见状态,可以认为当前显示页面处于不可见状态。若第一状态是on start状态,父页面是可见状态,第二状态是hide状态,可以认为当前显示页面处于不可见状态。
本申请实施例中,若三个状态中有一个处于不可见状态,则认为当前显示页面处于不可见状态,能够准确地确定当前显示页面是否可见,提高了确定当前显示页面是否可见的准确率。
第二种情况:当前显示页面和待跳转页面是不同的组合页面中的父页面。
在一种可能的实现方式中,若所述当前显示页面和所述待跳转页面为不同的组合页面中的父页面,且所述当前显示页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述当前显示页面的页面状态信息,包括:获取所述当前显示页面在生命周期内所处的第一状态;获取视图页面工具记录的所述当前显示页面的第二状态,其中,所述视图页面工具与所述第一方式对应;将所述第一状态和所述第二状态确定为所述当前显示页面的页面状态信息。
示例性地,参见图2中的2F,2F是在同一个容器中两个不同组合页面的父页面之间进行页面切换的示意图。
实际应用中,若在两个组合页面的父页面之间进行页面跳转,需要获取当前显示页面在两个方面的信息。第一个为当前显示页面在生命周期内的第一状态,若当前显示页面和待跳转页面之间通过视图页面工具实现页面切换,则第二个为视图页面工具记录的当前显示页面的第二状态,这两个方面的信息共同组成了当前显示页面的页面状态信息。
本申请实施例中,对于两个组合页面的父页面之间的切换,可以通过获取父页面各方面的信息得到父页面的显示状态,能够获得更加全面的父页面的显示状态,提高确定页面是否可见的准确性。
在一些实施例中,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态的具体实现可以包括:若所述第一状态和所述第二状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
实际应用中,如果第一状态处于on start状态,且第二状态处于user visiblefalse状态;或者,如果第一状态不处于on start状态,且第二状态处于user visible true状态;或者,如果第一状态不处于on start状态,且第二状态处于user visible false状态,则可以认为当前显示页面处于不可见状态。
本申请实施例中,若两个状态中有一个处于不可见状态,则认为当前显示页面处于不可见状态,能够准确地确定当前显示页面是否可见,提高了确定当前显示页面是否可见的准确率。
在另一种可能的实现方式中,若所述当前显示页面和所述待跳转页面为不同的组合页面中的父页面,且所述当前显示页面对应的组合页面中的子页面之间通过第二方式进行跳转,获取所述当前显示页面的页面状态信息,包括:获取所述当前显示页面在生命周期内所处的第一状态;获取页面管理器记录的所述当前显示页面的第三状态,其中,所述页面管理器与所述第二方式对应;将所述第一状态和所述第三状态确定为所述当前显示页面的页面状态信息。
实际应用中,若在两个组合页面的父页面之间进行页面跳转,需要获取当前显示页面在两个方面的信息。第一个为当前显示页面在生命周期内的第一状态,若当前显示页面和待跳转页面之间通过页面管理器实现页面切换,则第二个为页面管理器记录的当前显示页面的第三状态,这两个方面的信息共同组成了当前显示页面的页面状态信息。
本申请实施例中,对于两个组合页面的父页面之间的切换,可以通过获取父页面各方面的信息得到父页面的显示状态,能够获得更加全面的父页面的显示状态,提高确定页面是否可见的准确性。
在一些实施例中,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态的具体实现可以包括:若所述第一状态和所述第三状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
实际应用中,如果第一状态处于on start状态,且第三状态处于hide状态;或者,如果第一状态不处于on start状态,且第三状态处于show状态;或者,如果第一状态不处于on start状态,且第三状态处于hide状态,则可以认为当前显示页面处于不可见状态。
本申请实施例中,若两个状态中有一个处于不可见状态,则认为当前显示页面处于不可见状态,能够准确地确定当前显示页面是否可见,提高了确定当前显示页面是否可见的准确率。
在一些实施例中,获取所述第一路由信息之前,还包括:通过路由库创建所述当前显示页面,并将所述第一路由信息作为所述当前显示页面的配置参数存储;相应地,获取所述第一路由信息,包括:从所述当前显示页面的配置参数中获取所述第一路由信息。
实际应用中,可以预先通过路由库创建当前显示页面,并为当前显示页面配置第一路由信息,将第一路由信息作为当前显示页面的配置参数存储,并且存储当前显示页面的页面标识与第一路由信息的对应关系,如此,在获取第一路由信息时,可以基于当前显示页面的页面标识,根据当前显示页面的页面标识和第一路由信息的对应关系,从当前显示页面的配置参数中获取第一路由信息。
本申请实施例中,虽然无法直接通过路由库收集流量数据,但可以在创建当前显示页面时为当前显示页面配置第一路由信息,并将第一路由信息与当前显示页面的页面标识对应存储,以便后续可以获取使用。解决了无法通过路由库收集流量数据的情况下无法获取路由信息的问题。
进一步地,获取所述第一路由信息之后,还包括:将所述第一路由信息存储至所述当前显示页面所在的容器中。
实际应用中,由于第一路由信息是在容器中显示的,从当前显示页面跳转至待跳转页面的过程中,现有技术的方法可能会记录当前显示页面所在的容器的路由信息,并将该容器作为页面跳转的起始页面,这可能会导致产生错误的流量数据。因此,可以在获取第一路由信息后,将该第一路由信息存储至当前显示页面对应的容器中,且该容器还可以记录该第一路由信息与当前显示页面的页面标识之间的对应关系,如此,在获取第一路由信息时,可以获取到的该容器当前展示的当前显示页面的第一路由信息,而不是容器的路由信息,即将当前显示页面作为起始页面跳转至待跳转页面,可以避免产生错误的流量数据。
在该种情况下,基于第一路由信息和第二路由信息生成此次跳转的流量数据的具体实现可以包括:从容器中获取第一路由信息,将第一路由信息->第二路由信息确定为此次跳转的流量数据。
作为一种示例,在当前显示页面和待跳转页面均是父页面的情况下,若确定父页面处于不可见状态,则子页面一定处于不可见状态,在该种情况下可以确定父页面和子页面的状态均发生了变化,则需要获取父页面和子页面的路由信息,如果先获取父页面的第一路由信息,后获取子页面的第一路由信息,则容器中先存储的父页面的第一路由信息会被子页面的第一路由信息覆盖掉,则后续生成的流量数据可能是子页面的第一路由信息->第二路由信息,这是错误的。因此,在确定父页面处于不可见状态的情况下,可以先获取子页面的第一路由信息,然后获取父页面的第一路由信息,如此,容器中在生成流量数据之前存储的是父页面的第一路由信息,则后续生成的流量数据是父页面的第一路由信息->第二路由信息,可以得到正确的流量数据。
例如,参见图2中的2F,2F中包括父页面1、子页面11、子页面12、父页面2、子页面21和子页面22,假设当前显示页面是父页面1,待跳转页面是父页面2,确定父页面1处于不可见状态时,可以先获取子页面11的路由信息11存储至容器中,然后获取子页面12的路由信息12覆盖掉路由信息11,再获取父页面1的路由信息1存储至容器中,覆盖掉路由信息11,则此时容器中存储的是父页面1的路由信息1。若后续确定父页面2处于可见状态,可以获取父页面2的路由信息2,则可以从容器中取出父页面1的路由信息1,将路由信息1->路由信息2作为此次跳转的流量数据。
在一些实施例中,确定所述待跳转页面处于可见状态的具体实现可以包括:获取所述待跳转页面的页面状态信息,并基于所述待跳转页面的页面状态信息确定所述待跳转页面处于可见状态。
其中,待跳转页面的页面状态信息用于表征待跳转页面是否为可见状态。
实际应用中,若当前显示页面和待跳转页面是同一个容器中的页面,则当前显示页面和待跳转页面之间的跳转无法直接采用路由库收集流量数据,而是需要根据当前显示页面和待跳转页面是否处于可见状态来记录流量数据。因此需要先确定当前显示页面和待跳转页面的显示状态。
示例性地,可以通过获取待跳转页面的页面状态信息,根据待跳转页面的页面状态信息确定待跳转页面是否处于不可见状态。
如此,对于无法直接通过路由库记录流量数据的页面跳转,也可以获取到路由信息,且不需要埋点,使得操作更加简单。
作为一种示例,所述获取所述待跳转页面的页面状态信息的具体实现可以包括:控制所述待跳转页面的状态管理器获取所述待跳转页面的页面状态信息,其中,所述状态管理器用于管理所述待跳转页面的页面状态。
其中,状态管理器可以是显/隐管理器。
作为一种示例,类是模板,页面是根据模板创建得到的。基于同一模板可以创建出无数个页面,通常可以将公共能力配置在父类中,子类继承这个父类,也就继承父类的这些公共能力,则从这些子类创建的页面也可以具备这些公共能力。
实际应用中,可以将显/隐管理能力配置在子类中,则基于子类创建得到的所有待跳转页面可以继承该子类的显/隐管理能力,且将该显/隐管理能力封装在显/隐管理器中,则所有待跳转页面可以具有管理待跳转页面的页面状态的状态管理器。如此,可以控制待跳转页面的状态管理器获取待跳转页面的页面状态信息,则在任意待跳转页面中均能获取到页面状态信息,进而根据页面状态信息确定待跳转页面处于不可见状态,进而获取第二路由信息,使得本方案中获取路由信息不局限于特定的页面,获取路由信息的方式更加灵活。
示例性地,参见图3,原有的子类是直接继承根父类的公共能力,在本申请实施例中,可以在根父类和子类中间插入中间父类,在中间父类中配置显/隐管理能力,则子类可以继承中间父类的显/隐管理能力,进而基于子类创建的待跳转页面均可以具有显/隐管理能力。
需要说明的是,在本申请实施例中,若待跳转页面是Fragment,则待跳转页面可以通过上述方式获取到显/隐管理能力。
本申请实施例中,待跳转页面可以是组合页面中的父页面或者子页面,父页面是否处于不可见状态仅与自身的页面状态有关,而子页面是否处于不可见状态与其父页面的显示状态有关,由此可见,判断父页面处于不可见状态与判断子页面处于不可见状态的方式是不同的,因此,确定待跳转页面处于不可见状态可以包括待跳转页面是子页面和待跳转页面是父页面两种情况。另外,根据页面的跳转方式不同,在每种情况下,还可以根据跳转方式将确定待跳转页面处于不可见状态的实现划分为两种可能的实现方式。
第一种情况:当前显示页面和待跳转页面是同一个组合中的子页面。
在一种可能的实现方式中,若所述当前显示页面和待跳转页面为同一个组合页面中的子页面,且所述待跳转页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述待跳转页面的页面状态信息的具体实现可以包括:获取所述待跳转页面在生命周期内所处的第四状态;获取视图页面工具记录的所述待跳转页面的第五状态,其中,所述视图页面工具与所述第一方式对应;获取所述待跳转页面的父页面的显示状态;将所述第四状态、所述第五状态和所述父页面的显示状态确定为所述待跳转页面的页面状态信息。
实际应用中,对于单一页面来说,只要其在生命周期内处于可见状态,则可以认为该页面处于可见状态,但组合页面中包括多个子页面,且只要组合页面的父页面处于可见状态,则组合页面中每个子页面的生命周期均处于可见状态,因此,仅获取待跳转页面在生命周期内的第一状态是不够的,所以,在本申请实施例中,在同一个组合页面中的两个子页面之间进行页面跳转时,需要获取待跳转页面在三个方面的信息。第一个为待跳转页面在生命周期内的第四状态,若当前显示页面和待跳转页面之间通过视图页面工具实现页面切换,则第二个为视图页面工具记录的待跳转页面的第五状态,由于父页面是否可见对子页面是存在影响的,因此第三个为待跳转页面的父页面的显示状态,可以从父页面的页面显/隐管理器中获取父页面的显示状态,这三个方面的信息共同组成了待跳转页面的页面状态信息。
本申请实施例中,对于组合页面中两个子页面之间的切换,可以通过获取子页面各方面的信息得到子页面的页面状态信息,能够获得更加全面的子页面的页面状态信息,提高确定页面是否可见的准确性。
在一些实施例中,基于所述待跳转页面的页面状态信息确定所述待跳转页面处于可见状态的具体实现可以包括:若所述第四状态、所述第五状态、以及所述父页面的显示状态均为可见状态,确定所述待跳转页面处于可见状态。
实际应用中,在当前显示页面和待跳转页面之间通过视图页面工具实现页面切换的情况下,如果第四状态是on start状态,第五状态是user visible false状态,且父页面处于可见状态,则可以确定待跳转页面处于可见状态。
本申请实施例中,若三个状态均处于可见状态,则可以认为待跳转页面处于可见状态,如此能够准确地确定待跳转页面是否可见,提高了确定待跳转页面的显示状态的准确率。
在另一种可能的实现方式中,若所述当前显示页面和所述待跳转页面为同一个组合页面中的子页面,且所述待跳转页面对应的组合页面中的子页面之间通过第二方式进行跳转,获取所述待跳转页面的页面状态信息的具体实现可以包括:获取所述待跳转页面在生命周期内所处的第四状态;获取页面管理器记录的所述待跳转页面的第六状态,其中,所述页面管理器与所述第二方式对应;获取所述待跳转页面的父页面的显示状态;将所述第四状态、所述第六状态和所述父页面的显示状态确定为所述待跳转页面的页面状态信息。
在一些实施例中,基于所述待跳转页面的页面状态信息确定所述待跳转页面处于不可见状态的具体实现可以包括:若所述第四状态、所述第六状态和所述父页面的显示状态均是可见状态,确定所述待跳转页面处于可见状态。
需要说明的是,该种可能的实现方式中,上述两个步骤的具体实现与上一种可能的实现方式雷同,仅将第五状态改为第六状态即可,其具体实现可以参见上一种可能的实现方式的相关描述,本实施例在此不再赘述。
第二种情况:当前显示页面和待跳转页面是不同的组合页面中的父页面。
在一种可能的实现方式中,若所述当前显示页面和所述待跳转页面为不同的组合页面中的父页面,且所述待跳转页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述待跳转页面的页面状态信息,包括:获取所述待跳转页面在生命周期内所处的第四状态;获取视图页面工具记录的所述待跳转页面的第五状态,其中,所述视图页面工具与所述第一方式对应;将所述第四状态和所述第五状态确定为所述待跳转页面的页面状态信息。
在一些实施例中,基于所述待跳转页面的页面状态信息确定所述待跳转页面处于不可见状态的具体实现可以包括:若所述第四状态和所述第五状态中均是可见状态,确定所述待跳转页面处于可见状态。
在另一种可能的实现方式中,若所述当前显示页面和所述待跳转页面为不同的组合页面中的父页面,且所述待跳转页面对应的组合页面中的子页面之间通过第二方式进行跳转,获取所述待跳转页面的页面状态信息,包括:获取所述待跳转页面在生命周期内所处的第四状态;获取页面管理器记录的所述待跳转页面的第六状态,其中,所述页面管理器与所述第二方式对应;将所述第四状态和所述第六状态确定为所述待跳转页面的页面状态信息。
在一些实施例中,基于所述待跳转页面的页面状态信息确定所述当前显示页面处于不可见状态的具体实现可以包括:若所述第四状态和所述第六状态均是可见状态,确定所述待跳转页面处于可见状态。
需要说明的是,上述第二种情况下的两种实现方式与确定当前显示页面处于不可见状态时第二种情况下的两种实现方式类似,仅需要将当前显示页面替换为待跳转页面,将第一状态替换为第四状态,将第二状态替换为第五状态,将第三状态替换为第六状态即可,具体可以参见确定当前显示页面处于不可见状态时第二种情况下的两种实现方式的相关描述,本实施例在此不再赘述。
进一步地,所述获取所述第二路由信息之前,还包括:通过路由库创建所述待跳转页面,并将所述第二路由信息作为所述待跳转页面的配置参数存储;相应地,获取所述第二路由信息,包括:从所述待跳转页面的配置参数中获取所述第二路由信息。
实际应用中,可以预先通过路由库创建待跳转页面,并为待跳转页面配置第二路由信息,将第二路由信息作为待跳转页面的配置参数存储,并且存储待跳转页面的页面标识与第二路由信息的对应关系,如此,在获取第二路由信息时,可以基于待跳转页面的页面标识,根据待跳转页面的页面标识和第二路由信息的对应关系,从待跳转页面的配置参数中获取第二路由信息。
本申请实施例中,虽然无法直接通过路由库收集流量数据,但可以在创建待跳转页面时为待跳转页面配置第二路由信息,并将第二路由信息与待跳转页面的页面标识对应存储,以便后续可以获取使用。解决了无法通过路由库收集流量数据的情况下无法获取路由信息的问题。
本申请提供的流量数据的统计方法,接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。如此,在从当前显示页面跳转至待跳转页面时可以对此次跳转进行记录,并且通过第一路由信息和第二路由信息可以获取到此次跳转的流量数据,不需要将流量数据收集和页面的业务执行过程分离,降低了开发成本。并且,不需要额外添加埋点信息,操作比较简单,且降低了系统维护难度。
下述结合附图4,图4是本申请一实施例提供的一种应用于页面跳转的流量数据的统计方法,具体可以包括如下步骤:
步骤402,接收从当前显示页面跳转至待跳转页面的页面跳转指令,该页面跳转指令中包括待跳转页面的页面标识。
例如,在浏览页面的过程中,若用户不想浏览当前显示页面,想要浏览待跳转页面,则可以点击待跳转页面,则计算设备可以检测到用户操作,且基于用户操作可以生成页面跳转指令,该页面跳转指令中可以包括待跳转页面的页面标识,以便于获取待跳转页面并显示。
需要说明的是,步骤402是步骤102的下位描述,实现方式与步骤102相同,其具体实现可以参见步骤102的相关描述,本实施例对此不再赘述。
步骤404,响应于页面跳转指令,获取当前显示页面的页面标识。
进一步地,计算设备可以基于待跳转页面的页面标识确定待跳转页面的管理器是容器页面管理器(Activity Manager),则可以确定当前显示页面和待跳转页面是不同容器中的页面,即此次页面跳转实际是从一个容器跳转至另一个容器。
在本实施例中,以当前显示页面是子页面1,待跳转页面是容器页面2,从子页面1跳转至容器页面2为例对流量数据的统计方法进行说明。
例如,参见图2中的2C,则2C是在组合页面的子页面1中打开容器页面2,其本质上还是从一个容器跳转至另一个容器。对于计算设备来说,可以获取到子页面1的页面标识,假设页面标识是F1,则可以将F1作为当前显示页面的页面标识。
步骤406,基于当前显示页面的页面标识,从当前显示页面所在的容器中获取第一路由信息。
本申请实施例中,容器可以具有记录当前显示页面的路由信息的能力。
作为一种示例,不同于现有技术将子页面1所在的容器作为起始页面跳转至新页面,本申请实施例中,可以在子页面1所在的容器中记录当前显示页面的路由信息,并且随着当前显示页面的显示状态的变化而变化。也即是,子页面1所在的容器具有记录当前显示页面的路由信息的能力,由于子页面1当前处于可见状态,即子页面是当前显示页面,则子页面1所在的容器可以记录子页面1的路由信息1,且路由信息1与F1对应,基于F1可以获取到路由信息1,并且可以将路由信息1作为当前显示页面的第一路由信息。
步骤408,基于待跳转页面的页面标识,获取第二路由信息。
继续上述举例,可以在创建容器页面2时,为容器页面2配置第二路由信息,并且预先将容器页面2的页面标识与容器页面的第二路由信息对应存储,则可以基于容器页面2的页面标识获取第二路由信息。
步骤410,基于第二路由信息,从当前显示页面跳转至待跳转页面。
继续上述举例,根据第二路由信息可以获取到容器页面2的页面信息,对容器页面2的页面信息进行渲染,可以得到容器页面2并展示,实现从子页面1至容器页面2的跳转。
步骤412,记录该页面跳转并基于第一路由信息和第二路由信息生成与此次跳转对应的流量数据。
继续上述举例,可以将子页面1的第一路由信息->容器页面2的第二路由信息记录为从当前页面跳转至待跳转页面的流量数据。
需要说明的是,步骤404-步骤412是步骤104中第一种实现方式的下位描述,实现方式与步骤104相同,其具体实现可以参见步骤104第一种实现方式的相关描述,本实施例对此不再赘述。
本申请提供的流量数据的统计方法,接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。如此,在从当前显示页面跳转至待跳转页面时可以对此次跳转进行记录,并且通过第一路由信息和第二路由信息可以获取到此次跳转的流量数据,不需要将流量数据收集和页面的业务执行过程分离,降低了开发成本。并且,不需要额外添加埋点信息,操作比较简单,且降低了系统维护难度当前显示页面当前显示页面当前显示页面当前显示页面当前显示页面。
下述结合附图5,图5是本申请一实施例提供的另一种应用于页面跳转的流量数据的统计方法,具体可以包括如下步骤:
步骤502,通过路由库创建当前显示页面,并将第一路由信息作为当前显示页面的配置参数存储。
步骤504,通过路由库创建待跳转页面,并将第二路由信息作为待跳转页面的配置参数存储。
需要说明的是步骤502和步骤504之间没有严格的先后执行顺序。
步骤506,接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,页面跳转指令包括待跳转页面的页面标识。
例如,在浏览页面的过程中,若用户不想浏览当前显示页面,想要浏览待跳转页面,则可以对当前显示页面进行滑动,则计算设备可以检测到用户操作,且基于用户操作可以生成页面跳转指令,该页面跳转指令中可以包括待跳转页面的页面标识,以便于获取待跳转页面并显示。
需要说明的是,步骤506是步骤102的下位描述,实现方式与步骤102相同,其具体实现可以参见步骤102的相关描述,本实施例对此不再赘述。
步骤508,响应于页面跳转指令,在执行页面跳转的过程中,获取当前显示页面在生命周期内所处的第一状态。
进一步地,计算设备可以基于待跳转页面的页面标识确定待跳转页面的管理器是视图页面工具,则可以确定当前显示页面和待跳转页面是同一个容器中的页面,即此次页面跳转实际是同一个容器中页面之间的切换。
在本实施例中,以当前显示页面是子页面1,待跳转页面是子页面2,从子页面1跳转至子页面2为例对流量数据的统计方法进行说明。例如,参见图2中的2E,2E是同一个容器内组合页面中子页面之间的页面跳转,从子页面1跳转至子页面2。
例如,可以获取子页面1在生命周期内所处的第一状态。
步骤510,获取视图页面工具记录的当前显示页面的第二状态。
继续上述举例,可以获取视图页面工具记录的子页面1的第二状态。
需要说明的是,在本申请实施例中,仅以当前显示页面和待跳转页面之间通过视图页面工具实现页面切换为例,在实际应用中,当前显示页面和待跳转页面之间还可能通过页面管理器实现页面跳转,在该种情况下,可以获取页面管理器记录的当前显示页面的状态,其具体实现可以参见上述图1对应的实施例中的相关描述,本实施例在此不再赘述。
步骤512,获取当前显示页面的父页面的显示状态。
继续上述举例,可以获取子页面1的父页面的显示状态。
步骤514,若第一状态、第二状态和父页面的显示状态中存在一个是不可见状态,则确定当前显示页面是不可见状态。
例如,若第一状态是on start状态、第二状态是user visible false状态、父页面是可见状态,则可以确定当前显示页面是不可见状态。
步骤516,从当前显示页面的配置参数中获取当前显示页面的第一路由信息并存储至当前显示页面所在的容器中。
其中,该容器是当前显示页面和待跳转页面所处的组合页面所在的容器。
继续上述举例,可以从子页面1的配置参数中获取子页面1的第一路由信息作为待跳转页面的第一路由信息,并将该第一路由信息存储至子页面1所在的容器中。
步骤518,获取待跳转页面在生命周期内所处的第四状态。
继续上述举例,可以获取子页面2在生命周期内所处的第四状态。
步骤520,获取视图页面工具记录的待跳转页面的第五状态。
继续上述举例,可以获取视图页面工具记录的子页面2的第五状态。
步骤522,获取待跳转页面的父页面的显示状态。
继续上述举例,可以获取子页面2的父页面的显示状态。
步骤524,若第四状态、第五状态和父页面的显示状态均是可见状态可以确定待跳转页面是可见状态。
例如,若第四状态是on start状态、第五状态是user visible true状态、父页面是可见状态,则可以确定待跳转页面是可见状态。
步骤526,从待跳转页面的配置参数中获取待跳转页面的第二路由信息。
继续上述举例,可以从子页面2的配置参数中获取子页面2的第二路由信息作为待跳转页面的第二路由信息,并将该第二路由信息存储至子页面2所在的容器中。
步骤528,记录从当前显示页面到待跳转页面的本次跳转,并将当前显示页面的第一路由信息至待跳转页面的第二路由信息确定为与此次跳转对应的流量数据。
例如,将子页面1的第一路由信息->子页面2的第二路由信息记录为从待显示页面跳转至待跳转页面的流量数据。
需要说明的是,步骤508-步骤528是对步骤104中第二种实现方式的下位描述,实现方式与步骤104相同,其具体实现可以参见步骤104第二种实现方式的相关描述,本实施例对此不再赘述。
本申请提供的流量数据的统计方法,接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。如此,在从当前显示页面跳转至待跳转页面时可以对此次跳转进行记录,并且通过第一路由信息和第二路由信息可以获取到此次跳转的流量数据,不需要将流量数据收集和页面的业务执行过程分离,降低了开发成本。并且,不需要额外添加埋点信息,操作比较简单,且降低了系统维护难度。
与上述方法实施例相对应,本申请还提供了流量数据的统计装置实施例,图6示出了本申请一实施例提供的一种流量数据的统计装置的结构示意图。如图6所示,该装置包括:
接收模块602,被配置为接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;
记录模块604,被配置为基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。
可选地,记录模块604,被配置为:
若所述当前显示页面和所述待跳转页面不是同一个容器中的页面,响应于所述页面跳转指令,获取当前显示页面的页面标识,基于所述当前显示页面的页面标识获取所述第一路由信息;
基于所述待跳转页面的页面标识,获取所述第二路由信息;
基于所述第二路由信息,从所述当前显示页面跳转至所述待跳转页面;
记录所述页面跳转并基于所述第一路由信息和所述第二路由信息生成与此次跳转对应的流量数据。
可选地,记录模块604,被配置为:
若所述当前显示页面和所述待跳转页面是同一个容器中的页面,响应于所述页面跳转指令,执行所述页面跳转的过程中,若确定所述当前显示页面和所述待跳转页面的显示状态发生改变,获取所述第一路由信息和所述第二路由信息;
对所述页面跳转进行记录,并基于所述第一路由信息和所述第二路由信息生成与此次跳转对应的流量数据。
可选地,记录模块604,被配置为:
若确定所述当前显示页面处于不可见状态,获取所述第一路由信息;
若确定所述待跳转页面处于可见状态,获取所述第二路由信息。
可选地,记录模块604还被配置为:
通过路由库创建所述当前显示页面,并将所述第一路由信息作为所述当前显示页面的配置参数存储;
从所述当前显示页面的配置参数中获取所述第一路由信息。
可选地,记录模块604还被配置为:
通过路由库创建所述待跳转页面,并将所述第二路由信息作为所述待跳转页面的配置参数存储;
从所述待跳转页面的配置参数中获取所述第二路由信息。
可选地,记录模块604还被配置为:
将所述第一路由信息存储至所述当前显示页面所在的容器中。
可选地,记录模块604,被配置为:
获取所述当前显示页面的页面状态信息,并基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态。
可选地,记录模块604,被配置为:
若所述当前显示页面和所述待跳转页面是同一个组合页面中的子页面,且所述当前显示页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述当前显示页面在生命周期内所处的第一状态;
获取视图页面工具记录的所述当前显示页面的第二状态,其中,所述视图页面工具与所述第一方式对应;
获取所述当前显示页面的父页面的显示状态;
将所述第一状态、所述第二状态和所述父页面的显示状态确定为所述当前显示页面的页面状态信息。
可选地,记录模块604,被配置为:
若所述第一状态、所述第二状态、或所述父页面的显示状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
可选地,记录模块604,被配置为:
若所述当前显示页面和所述待跳转页面为同一个组合页面中的子页面,且所述当前显示页面对应的组合页面中的子页面之间通过第二方式进行跳转,获取所述当前显示页面在生命周期内所处的第一状态;
获取页面管理器记录的所述当前显示页面的第三状态,其中,所述页面管理器与所述第二方式对应;
获取所述当前显示页面的父页面的显示状态;
将所述第一状态、所述第三状态和所述父页面的显示状态确定为所述当前显示页面的页面状态信息。
可选地,记录模块604,被配置为:
若所述第一状态、所述第三状态、或所述父页面的显示状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
可选地,记录模块604,被配置为:
若所述当前显示页面和所述待跳转页面为不同的组合页面中的父页面,且所述当前显示页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述当前显示页面在生命周期内所处的第一状态;
获取视图页面工具记录的所述当前显示页面的第二状态,其中,所述视图页面工具与所述第一方式对应;
将所述第一状态和所述第二状态确定为所述当前显示页面的页面状态信息。
可选地,记录模块604,被配置为:
若所述第一状态和所述第二状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
可选地,记录模块604,被配置为:
获取所述待跳转页面的页面状态信息,并基于所述待跳转页面的页面状态信息确定所述待跳转页面处于可见状态。
可选地,记录模块604,被配置为:
若所述当前显示页面和待跳转页面为同一个组合页面中的子页面,且所述待跳转页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述待跳转页面在生命周期内所处的第四状态;
获取视图页面工具记录的所述待跳转页面的第五状态,其中,所述视图页面工具与所述第一方式对应;
获取所述待跳转页面的父页面的显示状态;
将所述第四状态、所述第五状态和所述父页面的显示状态确定为所述待跳转页面的页面状态信息。
可选地,记录模块604,被配置为:
若所述第四状态、所述第五状态、以及所述父页面的显示状态均为可见状态,确定所述待跳转页面处于可见状态。
可选地,记录模块604,被配置为:
控制所述当前显示页面的状态管理器获取所述当前显示页面的页面状态信息,其中,所述状态管理器用于管理所述当前显示页面的页面状态。
可选地,记录模块604,被配置为:
控制所述待跳转页面的状态管理器获取所述待跳转页面的页面状态信息,其中,所述状态管理器用于管理所述待跳转页面的页面状态。
可选地,记录模块604,被配置为:
若所述当前显示页面是组合页面中的子页面,基于所述当前显示页面的页面标识,从所述当前显示页面所在的容器中获取所述第一路由信息。
本申请提供的流量数据的统计方法,接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。如此,在从当前显示页面跳转至待跳转页面时可以对此次跳转进行记录,并且通过第一路由信息和第二路由信息可以获取到此次跳转的流量数据,不需要将流量数据收集和页面的业务执行过程分离,降低了开发成本。并且,不需要额外添加埋点信息,操作比较简单,且降低了系统维护难度。
上述为本实施例的一种流量数据的统计装置的示意性方案。需要说明的是,该流量数据的统计装置的技术方案与上述的流量数据的统计方法的技术方案属于同一构思,流量数据的统计装置的技术方案未详细描述的细节内容,均可以参见上述流量数据的统计方法的技术方案的描述。
图7示出了根据本申请一实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备770可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
其中,处理器720执行所述指令时实现上述所述的流量数据的统计方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的流量数据的统计方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述流量数据的统计方法的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述流量数据的统计方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的流量数据的统计方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述流量数据的统计方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (23)
1.一种流量数据的统计方法,其特征在于,所述方法包括:
接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;
根据所述当前显示页面和所述待跳转页面是否是同一个容器中的页面,基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。
2.如权利要求1所述的流量数据的统计方法,其特征在于,若所述当前显示页面和所述待跳转页面不是同一个容器中的页面,基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,包括:
响应于所述页面跳转指令,获取当前显示页面的页面标识,基于所述当前显示页面的页面标识获取所述第一路由信息;
基于所述待跳转页面的页面标识,获取所述第二路由信息;
基于所述第二路由信息,从所述当前显示页面跳转至所述待跳转页面;
记录所述页面跳转并基于所述第一路由信息和所述第二路由信息生成与此次跳转对应的流量数据。
3.如权利要求1所述的流量数据的统计方法,其特征在于,若所述当前显示页面和所述待跳转页面是同一个容器中的页面,基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,包括:
响应于所述页面跳转指令,执行所述页面跳转的过程中,若确定所述当前显示页面和所述待跳转页面的显示状态发生改变,获取所述第一路由信息和所述第二路由信息;
对所述页面跳转进行记录,并基于所述第一路由信息和所述第二路由信息生成与此次跳转对应的流量数据。
4.如权利要求3所述的流量数据的统计方法,其特征在于,若确定所述当前显示页面和所述待跳转页面的显示状态发生改变,获取所述第一路由信息和所述第二路由信息,包括:
若确定所述当前显示页面处于不可见状态,获取所述第一路由信息;
若确定所述待跳转页面处于可见状态,获取所述第二路由信息。
5.如权利要求4所述的流量数据的统计方法,其特征在于,获取所述第一路由信息之前,还包括:
通过路由库创建所述当前显示页面,并将所述第一路由信息作为所述当前显示页面的配置参数存储;
相应地,获取所述第一路由信息,包括:
从所述当前显示页面的配置参数中获取所述第一路由信息。
6.如权利要求4所述的流量数据的统计方法,其特征在于,所述获取所述第二路由信息之前,还包括:
通过路由库创建所述待跳转页面,并将所述第二路由信息作为所述待跳转页面的配置参数存储;
相应地,获取所述第二路由信息,包括:
从所述待跳转页面的配置参数中获取所述第二路由信息。
7.如权利要求4或5所述的流量数据的统计方法,其特征在于,所述获取所述第一路由信息之后,还包括:
将所述第一路由信息存储至所述当前显示页面所在的容器中。
8.如权利要求4所述的流量数据的统计方法,其特征在于,确定所述当前显示页面处于不可见状态,包括:
获取所述当前显示页面的页面状态信息,并基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态。
9.如权利要求8所述的流量数据的统计方法,其特征在于,若所述当前显示页面和所述待跳转页面是同一个组合页面中的子页面,且所述当前显示页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述当前显示页面的页面状态信息,包括:
获取所述当前显示页面在生命周期内所处的第一状态;
获取视图页面工具记录的所述当前显示页面的第二状态,其中,所述视图页面工具与所述第一方式对应;
获取所述当前显示页面的父页面的显示状态;
将所述第一状态、所述第二状态和所述父页面的显示状态确定为所述当前显示页面的页面状态信息。
10.如权利要求9所述的流量数据的统计方法,其特征在于,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态,包括:
若所述第一状态、所述第二状态、或所述父页面的显示状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
11.如权利要求8所述的流量数据的统计方法,其特征在于,若所述当前显示页面和所述待跳转页面为同一个组合页面中的子页面,且所述当前显示页面对应的组合页面中的子页面之间通过第二方式进行跳转,获取所述当前显示页面的页面状态信息,包括:
获取所述当前显示页面在生命周期内所处的第一状态;
获取页面管理器记录的所述当前显示页面的第三状态,其中,所述页面管理器与所述第二方式对应;
获取所述当前显示页面的父页面的显示状态;
将所述第一状态、所述第三状态和所述父页面的显示状态确定为所述当前显示页面的页面状态信息。
12.如权利要求11所述的流量数据的统计方法,其特征在于,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态,包括:
若所述第一状态、所述第三状态、或所述父页面的显示状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
13.如权利要求8所述的流量数据的统计方法,其特征在于,若所述当前显示页面和所述待跳转页面为不同的组合页面中的父页面,且所述当前显示页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述当前显示页面的页面状态信息,包括:
获取所述当前显示页面在生命周期内所处的第一状态;
获取视图页面工具记录的所述当前显示页面的第二状态,其中,所述视图页面工具与所述第一方式对应;
将所述第一状态和所述第二状态确定为所述当前显示页面的页面状态信息。
14.如权利要求13所述的流量数据的统计方法,其特征在于,基于所述当前显示页面的页面状态信息确定所述当前显示页面处于不可见状态,包括:
若所述第一状态和所述第二状态中存在至少一个为不可见状态,确定所述当前显示页面处于不可见状态。
15.如权利要求4所述的流量数据的统计方法,其特征在于,确定所述待跳转页面处于可见状态,包括:
获取所述待跳转页面的页面状态信息,并基于所述待跳转页面的页面状态信息确定所述待跳转页面处于可见状态。
16.如权利要求15所述的流量数据的统计方法,其特征在于,若所述当前显示页面和待跳转页面为同一个组合页面中的子页面,且所述待跳转页面对应的组合页面中的子页面之间通过第一方式进行跳转,获取所述待跳转页面的页面状态信息,包括:
获取所述待跳转页面在生命周期内所处的第四状态;
获取视图页面工具记录的所述待跳转页面的第五状态,其中,所述视图页面工具与所述第一方式对应;
获取所述待跳转页面的父页面的显示状态;
将所述第四状态、所述第五状态和所述父页面的显示状态确定为所述待跳转页面的页面状态信息。
17.如权利要求16所述的流量数据的统计方法,其特征在于,基于所述待跳转页面的页面状态信息确定所述待跳转页面处于可见状态,包括:
若所述第四状态、所述第五状态、以及所述父页面的显示状态均为可见状态,确定所述待跳转页面处于可见状态。
18.如权利要求8所述的流量数据的统计方法,其特征在于,所述获取所述当前显示页面的页面状态信息,包括:
控制所述当前显示页面的状态管理器获取所述当前显示页面的页面状态信息,其中,所述状态管理器用于管理所述当前显示页面的页面状态。
19.如权利要求15所述的流量数据的统计方法,其特征在于,所述获取所述待跳转页面的页面状态信息,包括:
控制所述待跳转页面的状态管理器获取所述待跳转页面的页面状态信息,其中,所述状态管理器用于管理所述待跳转页面的页面状态。
20.如权利要求2所述的流量数据的统计方法,其特征在于,若所述当前显示页面是组合页面中的子页面,基于所述当前显示页面的页面标识获取所述第一路由信息,包括:
基于所述当前显示页面的页面标识,从所述当前显示页面所在的容器中获取所述第一路由信息。
21.一种流量数据的统计装置,其特征在于,所述装置包括:
接收模块,被配置为接收从当前显示页面跳转至待跳转页面的页面跳转指令,其中,所述页面跳转指令包括所述待跳转页面的页面标识;
记录模块,被配置为根据所述当前显示页面和所述待跳转页面是否是同一个容器中的页面,基于所述页面跳转指令执行页面跳转并对所述页面跳转进行记录获得与此次跳转对应的流量数据,其中,所述流量数据包括所述当前显示页面的第一路由信息和所述待跳转页面的第二路由信息。
22.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-20任意一项所述方法的步骤。
23.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-20任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110150787.XA CN112787892B (zh) | 2021-02-03 | 2021-02-03 | 流量数据的统计方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110150787.XA CN112787892B (zh) | 2021-02-03 | 2021-02-03 | 流量数据的统计方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112787892A CN112787892A (zh) | 2021-05-11 |
CN112787892B true CN112787892B (zh) | 2022-03-25 |
Family
ID=75760822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110150787.XA Active CN112787892B (zh) | 2021-02-03 | 2021-02-03 | 流量数据的统计方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112787892B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105160027A (zh) * | 2015-09-30 | 2015-12-16 | 百度在线网络技术(北京)有限公司 | 广告数据处理方法及装置 |
CN108134812A (zh) * | 2017-11-10 | 2018-06-08 | 人人行科技股份有限公司 | 数据处理方法和装置 |
CN109739717A (zh) * | 2018-04-12 | 2019-05-10 | 京东方科技集团股份有限公司 | 一种页面数据采集的方法及装置、服务器 |
CN111241432A (zh) * | 2020-01-08 | 2020-06-05 | 随锐科技集团股份有限公司 | 用户行为分析方法及装置、计算机可读存储介质 |
-
2021
- 2021-02-03 CN CN202110150787.XA patent/CN112787892B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105160027A (zh) * | 2015-09-30 | 2015-12-16 | 百度在线网络技术(北京)有限公司 | 广告数据处理方法及装置 |
WO2017054319A1 (zh) * | 2015-09-30 | 2017-04-06 | 百度在线网络技术(北京)有限公司 | 投放数据处理方法、装置及存储介质 |
CN108134812A (zh) * | 2017-11-10 | 2018-06-08 | 人人行科技股份有限公司 | 数据处理方法和装置 |
CN109739717A (zh) * | 2018-04-12 | 2019-05-10 | 京东方科技集团股份有限公司 | 一种页面数据采集的方法及装置、服务器 |
CN111241432A (zh) * | 2020-01-08 | 2020-06-05 | 随锐科技集团股份有限公司 | 用户行为分析方法及装置、计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
一种基于页面价值和跳转偏爱度挖掘频繁访问路径的模型;李爱飞等;《计算机系统应用》;20130315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112787892A (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3605323A1 (en) | Method for generating network slice template and for applying network slice template, and apparatus | |
US20210333984A1 (en) | Method and apparatus for generating customized visualization component | |
CN105335132B (zh) | 一种自定义应用程序功能的方法、装置以及系统 | |
CN113296856B (zh) | 页面跳转与路由配置方法、设备、系统及存储介质 | |
CN110119294A (zh) | 菜单页面的生成方法、装置及系统 | |
CN113268243B (zh) | 内存预测方法及装置、存储介质、电子设备 | |
CN104820683A (zh) | 一种终端 | |
CN107733710A (zh) | 链路调用关系的构建方法、装置、计算机设备及存储介质 | |
CN114116054B (zh) | 一种页面控件管理方法、装置、计算机设备和存储介质 | |
CN106681767B (zh) | 一种轻应用添加方法及装置 | |
CN111857803A (zh) | 页面更新方法、装置、服务器及存储介质 | |
CN111338625A (zh) | 一种数据处理方法、系统、终端设备以及存储介质 | |
CN112799656B (zh) | 自动化操作的脚本文件配置方法、装置、设备和存储介质 | |
CN112787892B (zh) | 流量数据的统计方法及装置 | |
US7991880B2 (en) | Bionets architecture for building services capable of self-evolution | |
CN112463518A (zh) | 基于Flutter的页面全生命周期监控方法、装置、设备及存储介质 | |
CN111291281A (zh) | 充电设备推荐方法及装置 | |
CN113590124B (zh) | 目标对象处理方法及装置 | |
CN115103392A (zh) | eSIM终端测试方法、仪表、门户服务器、装置及系统 | |
CN111556482B (zh) | 虚拟sim卡的切换方法、装置、存储介质及终端 | |
CN114663139A (zh) | 资源位的处理方法、装置、存储介质和处理器 | |
CN114489402A (zh) | 弹窗管理方法及装置 | |
CN112732243A (zh) | 一种用于生成功能组件的数据处理方法及装置 | |
CN104267960A (zh) | 一种用户界面窗体的生成方法和设备 | |
CN115904572B (zh) | 一种模板创建方法、调用方法、程序产品、系统及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |