CN110245046B - 一种针对Android App无埋点的数据统计方法及装置 - Google Patents

一种针对Android App无埋点的数据统计方法及装置 Download PDF

Info

Publication number
CN110245046B
CN110245046B CN201910455751.5A CN201910455751A CN110245046B CN 110245046 B CN110245046 B CN 110245046B CN 201910455751 A CN201910455751 A CN 201910455751A CN 110245046 B CN110245046 B CN 110245046B
Authority
CN
China
Prior art keywords
page
preset
data
switch
unit
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
Application number
CN201910455751.5A
Other languages
English (en)
Other versions
CN110245046A (zh
Inventor
张继文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiqi Chengdu Technology Co ltd
Original Assignee
Jiqi Chengdu Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jiqi Chengdu Technology Co ltd filed Critical Jiqi Chengdu Technology Co ltd
Priority to CN201910455751.5A priority Critical patent/CN110245046B/zh
Publication of CN110245046A publication Critical patent/CN110245046A/zh
Application granted granted Critical
Publication of CN110245046B publication Critical patent/CN110245046B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种针对Android App无埋点的数据统计方法及装置,该方法响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入预设的第一统计开关,以在页面执行打开操作时开启预设的第一统计开关,如果预设的第一统计开关没有开启,终止对数据的统计,如果预设的第一统计开关已经开启,记录当前页面的标题、类名以及页面ID,将当前页面的标题、类名以及页面ID存储至本地数据库;本发明可实现无侵入式数据统计,统计用户行为数据不用担心新老版本兼容问题,并且不会破坏程序完整性;并且,本发明的方案适合App中各种复杂场景,接入简单、成本低;此外,该方案统计数据准确性较高,更好满足对统计数据的需求。

Description

一种针对Android App无埋点的数据统计方法及装置
技术领域
本发明涉及网络技术领域,尤其涉及一种针对Android App无埋点的数据统计方法及装置。
背景技术
随着移动互联网技术的飞速发展,各类Android App层出不穷。目前,Android App的功能越来越丰富,为了对Android App进行改善以不断地提升用户的体验,厂商需要需要统计用户对Android App功能的使用情况,再根据这些使用情况绘制用户画像,方便有针对性地提供更加受用户喜爱的功能。
传统统计用户使用情况一般通过在Android App需要统计的地方添加特定的运行代码来处理,这样会破坏Android App原有代码的结构,并且版本间也会有无法兼容的问题,因此,有必要提出一种针对Android App无埋点的数据统计方法及装置,以解决上述问题。
发明内容
本发明提供一种针对Android App无埋点的数据统计方法及装置,以解决传统统计用户使用情况在Android App需要统计的地方添加特定的运行代码来处理,会破坏Android App原有代码的结构,并且版本间也会有无法兼容的问题。
第一方面,本发明提供一种针对Android App无埋点的数据统计方法,所述方法包括如下步骤:
响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入所述预设的第一统计开关,以在页面执行打开操作时开启所述预设的第一统计开关;
如果所述预设的第一统计开关没有开启,终止对数据的统计;
如果所述预设的第一统计开关已经开启,记录当前页面的标题、类名以及页面ID;
将所述当前页面的标题、类名以及页面ID存储至本地数据库。
结合第一方面,在第一方面的第一种可实现方式中,所述方法还包括:
响应于关闭Android App页面的操作,判断预设的第二统计开关是否已经开启,其中,预先在Android App中插入所述预设的第二统计开关,以在页面执行关闭操作时开启所述预设的第二统计开关;
如果所述预设的第二统计开关没有开启,终止对数据的统计;
如果所述预设的第二统计开关已经开启,比较当前页面的页面ID与前一个页面的页面ID是否一致;
如果当前页面的页面ID与前一个页面的页面ID不一致,终止对数据的统计;
如果当前页面的页面ID与前一个页面的页面ID一致,将所述当前页面的数据存储至本地数据库。
结合第一方面的第一种可实现方式,在第一方面的第二种可实现方式中,所述方法还包括:
响应于点击Android App系统控件的操作,判断预设的第三统计开关是否开启,其中,预先在Android App中插入所述预设的第三统计开关,以在页面发生点击Android App系统控件的操作时,开启所述预设的第三统计开关;
如果所述预设的第三统计开关没有开启,终止对数据的统计;
如果所述预设的第三统计开关已经开启,匹配所述系统控件所在的页面;
生成并记录所述系统控件的信息;
将所述系统控件所在的页面的数据,以及所述系统控件的信息存储至本地数据库。
结合第一方面的第二种可实现方式,在第一方面的第三种可实现方式中,所述方法还包括:
读取所述本地数据库中的数据;
将所述数据使用protobuf格式进行处理,再进行gzip压缩;
响应于启动Android App的操作,将压缩后的数据进行第一次上报;
在所述第一次上报成功或者失败后,等待20秒后再次对所述数据进行第二次上报;
在所述第二次上报成功或者失败后,等待40秒后再次对所述数据进行第三次上报;
判断是否存在已经开启的配置开关,所述配置开关包括预设的第一统计开关、预设的第二统计开关,以及预设的第三统计开关;
如果存在已经开启的配置开关,识别是否存在待上报的新数据;
如果存在待上报的新数据,对所述待上报的新数据进行上报;
对所述待上报的新数据上报成功后,清除上报成功的数据;
记录上报次数并对所述上报次数累加1次。
结合第一方面的第三种可实现方式,在第一方面的第四种可实现方式中,所述方法还包括:
判断所述上报次数是否大于4次;
如果所述上报次数大于4次,检测定时器是否启动;
如果所述定时器没有启动,启动所述定时器;
如果所述定时器已经启动,在定时的2分钟内判断是否存在已经开启的配置开关;
如果在定时的2分钟内预设的配置开关为关闭,终止对数据的上报。
第二方面,本发明提供一种针对Android App无埋点的数据统计装置,所述装置包括:
判断单元,用于响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入所述预设的第一统计开关,以在页面执行打开操作时开启所述预设的第一统计开关;
终止单元,用于在所述预设的第一统计开关没有开启时,终止对数据的统计;
记录单元,用于在所述预设的第一统计开关已经开启时,记录当前页面的标题、类名以及页面ID;
存储单元,用于将所述当前页面的标题、类名以及页面ID存储至本地数据库。
结合第二方面,在第二方面的第一种可实现方式中,所述装置中:
所述判断单元,还用于响应于关闭Android App页面的操作,判断预设的第二统计开关是否已经开启,其中,预先在Android App中插入所述预设的第二统计开关,以在页面执行关闭操作时开启所述预设的第二统计开关;
所述终止单元,还用于在所述预设的第二统计开关没有开启时,终止对数据的统计;
还包括比较单元,用于在所述预设的第二统计开关已经开启时,比较当前页面的页面ID与前一个页面的页面ID是否一致;
所述终止单元,还用于在当前页面的页面ID与前一个页面的页面ID不一致时,终止对数据的统计;
所述存储单元,还用于在当前页面的页面ID与前一个页面的页面ID一致时,将所述当前页面的数据存储至本地数据库。
结合第二方面的第一种可实现方式,在第二方面的第二种可实现方式中,所述装置中:
所述判断单元,还用于响应于点击Android App系统控件的操作,判断预设的第三统计开关是否开启,其中,预先在Android App中插入所述预设的第三统计开关,以在页面发生点击Android App系统控件的操作时,开启所述预设的第三统计开关;
所述终止单元,还用于在所述预设的第三统计开关没有开启时,终止对数据的统计;
还包括匹配单元,用于在所述预设的第三统计开关已经开启时,匹配所述系统控件所在的页面;
生成单元,用于生成并记录所述系统控件的信息;
所述存储单元,还用于将所述系统控件所在的页面的数据,以及所述系统控件的信息存储至本地数据库。
结合第二方面的第二种可实现方式,在第二方面的第三种可实现方式中,所述装置还包括:
读取单元,用于读取所述本地数据库中的数据;
处理单元,用于将所述数据使用protobuf格式进行处理,再进行gzip压缩;
上报单元,用于响应于启动Android App的操作,将压缩后的数据进行第一次上报;
所述上报单元,还用于在所述第一次上报成功或者失败后,等待20秒后再次对所述数据进行第二次上报;
所述上报单元,还用于在所述第二次上报成功或者失败后,等待40秒后再次对所述数据进行第三次上报;
所述判断单元,还用于判断是否存在已经开启的配置开关,所述配置开关包括预设的第一统计开关、预设的第二统计开关,以及预设的第三统计开关;
识别单元,用于在存在已经开启的配置开关时,识别是否存在待上报的新数据;
所述上报单元,还用于在存在待上报的新数据时,对所述待上报的新数据进行上报;
清除单元,用于对所述待上报的新数据上报成功后,清除上报成功的数据;
所述记录单元,还用于记录上报次数并对所述上报次数累加1次。
结合第二方面的第三种可实现方式,在第二方面的第四种可实现方式中,所述装置中:
所述判断单元,还用于判断所述上报次数是否大于4次;
还包括检测单元,用于在所述上报次数大于4次时,检测定时器是否启动;
启动单元,用于在所述定时器没有启动时,启动所述定时器;
所述判断单元,还用于在所述定时器已经启动时,在定时的2分钟内判断是否存在已经开启的配置开关;
所述终止单元,还用于在定时的2分钟内预设的配置开关为关闭时,终止对数据的上报。
本发明的技术方案具有如下有益效果:本发明提供的一种针对Android App无埋点的数据统计方法及装置,无侵入式数据统计,统计用户行为数据不用担心新老版本兼容问题,并且不会破坏程序完整性;并且,本发明的方案适合App中各种复杂场景,接入简单、成本低;此外,该方案统计数据准确性较高,更好满足对统计数据的需求。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种针对Android App无埋点的数据统计方法一实施例的流程图。
图2为本发明提供的一种针对Android App无埋点的数据统计方法一可选实施方式的流程图。
图3为本发明提供的一种针对Android App无埋点的数据统计方法一可选实施方式的流程图。
图4为本发明提供的一种针对Android App无埋点的数据统计方法一可选实施方式的流程图。
图5为本发明提供的一种针对Android App无埋点的数据统计方法一可选实施方式的流程图。
图6为本发明提供的一种针对Android App无埋点的数据统计装置的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。以下结合附图,详细说明本发明各实施例提供的技术方案。
本发明的无埋点数据统计的基本原则在于充分利用Android页面生命周期回调方法以及view点击事件回调方法的优势,将统计分为页面和控件两大类。全局监听页面的生命周期回调方法,其回调方法中的onActivityResumed方法是页面打开必须执行的回调方法,可以用于判断页面打开动作。onActivityPaused方法是页面关闭必须执行的回调方法,可以用于判断页面关闭动作。故本发明用这两个回调方法分别作为页面的打开和关闭的标记,并在对应方法中添加自己的数据统计方法。在页面打开或关闭的方法插入后,在用户点击或者关闭页面时,插入的方法就会收到页面中各种属性信息,这时可对数据进行一些策略处理,以上报高质量的数据。策略分两种情况,一种是页面打开的情况,一种是页面关闭的情况。
请参阅图1,为本发明提供的一种针对Android App无埋点的数据统计方法,具体为页面打开的情况的方法,该方法执行主体可以是Android App本身,所述方法包括如下步骤:
步骤S101,响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入所述预设的第一统计开关,以在页面执行打开操作时开启所述预设的第一统计开关。
如果所述预设的第一统计开关没有开启,则执行步骤S104,终止对数据的统计。
步骤S102,如果所述预设的第一统计开关已经开启,记录当前页面的标题、类名以及页面ID。
步骤S103,将所述当前页面的标题、类名以及页面ID存储至本地数据库。
请参阅图2,为本发明提供的一种针对Android App无埋点的数据统计方法的另一可实施方式,在上述实施例的基础上,还可以包括页面关闭的情况,所述方法具体还包括以下步骤:
步骤S201,响应于关闭Android App页面的操作,判断预设的第二统计开关是否已经开启,其中,预先在Android App中插入所述预设的第二统计开关,以在页面执行关闭操作时开启所述预设的第二统计开关。
如果所述预设的第二统计开关没有开启,则执行步骤S204,终止对数据的统计。
如果所述预设的第二统计开关已经开启,则执行步骤S202,比较当前页面的页面ID与前一个页面的页面ID是否一致。
具体地,所述页面ID是指对当前Activity页面的一种标识,Android App每打开一个新页面,都会生成一个页面ID,可用于判断统计事件是否为同一页面行为。在AndroidApp中,从一个Activity页面打开一新的Activity页面时,之前页面的onActivityPaused方法会在新页面的onActivityResumed方法后调用,故需要判断当前页面和之前页面的ID是否一致,若不一致,则上一个页面统计的周期结束。
如果当前页面的页面ID与前一个页面的页面ID不一致,则执行步骤S204,终止对数据的统计。如果当前页面的页面ID与前一个页面的页面ID一致,则执行步骤S203,将所述当前页面的数据存储至本地数据库。
在Android App中,系统控件都继承自View这个基类,故控件都可以视为一个view,如TextView、Button等等。系统控件的点击处理都需要设置一个点击事件的监听器,在其回调方法中进行逻辑处理。所以本发明通过运行时字节码插桩的方式,全局地在点击事件监听回调方法中加入统一方法,达到无埋点控件点击统计的目的。
请参阅图3,在本发明的一种可实现方式中,在前两个实施例的基础上,所述方法还可以包括以下步骤:
步骤S301,响应于点击Android App系统控件的操作,判断预设的第三统计开关是否开启,其中,预先在Android App中插入所述预设的第三统计开关,以在页面发生点击Android App系统控件的操作时,开启所述预设的第三统计开关。
如果所述预设的第三统计开关没有开启,执行步骤S305,终止对数据的统计。
如果所述预设的第三统计开关已经开启,执行步骤S302,匹配所述系统控件所在的页面。
步骤S303,生成并记录所述系统控件的信息。
步骤S304,将所述系统控件所在的页面的数据,以及所述系统控件的信息存储至本地数据库。
请参阅图4,在本发明的另一可选实施方式中,所述方法还可以包括如下的数据统计上报策略相关步骤:
步骤S401,读取所述本地数据库中的数据。
步骤S402,将所述数据使用protobuf格式进行处理,再进行gzip压缩。
步骤S403,响应于启动Android App的操作,将压缩后的数据进行第一次上报。
步骤S404,在所述第一次上报成功或者失败后,等待20秒后再次对所述数据进行第二次上报。
步骤S405,在所述第二次上报成功或者失败后,等待40秒后再次对所述数据进行第三次上报。
步骤S406,判断是否存在已经开启的配置开关,所述配置开关包括预设的第一统计开关、预设的第二统计开关,以及预设的第三统计开关。
步骤S407,如果存在已经开启的配置开关,识别是否存在待上报的新数据。
步骤S408,如果存在待上报的新数据,对所述待上报的新数据进行上报。
步骤S409,对所述待上报的新数据上报成功后,清除上报成功的数据。
步骤S410,记录上报次数并对所述上报次数累加1次。
请参阅图5,在图4的数据统计上报策略的基础上,所述方法还可以包括:
步骤S501,判断所述上报次数是否大于4次。
步骤S502,如果所述上报次数大于4次,检测定时器是否启动。
步骤S503,如果所述定时器没有启动,启动所述定时器。
步骤S504,如果所述定时器已经启动,在定时的2分钟内判断是否存在已经开启的配置开关。如果存在已经开启的配置开关,则可以执行步骤S407,以识别是否存在待上报的新数据。
步骤S505,如果在定时的2分钟内预设的配置开关为关闭,终止对数据的上报。
请参阅图6,为本发明提供的一种针对Android App无埋点的数据统计装置的示意图,所述装置包括:
判断单元601,用于响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入所述预设的第一统计开关,以在页面执行打开操作时开启所述预设的第一统计开关。
终止单元604,用于在所述预设的第一统计开关没有开启时,终止对数据的统计。
记录单元602,用于在所述预设的第一统计开关已经开启时,记录当前页面的标题、类名以及页面ID。
存储单元603,用于将所述当前页面的标题、类名以及页面ID存储至本地数据库。
作为一种可选的实施方式,在本发明提供的一种针对Android App无埋点的数据统计装置中:所述判断单元,还用于响应于关闭Android App页面的操作,判断预设的第二统计开关是否已经开启,其中,预先在Android App中插入所述预设的第二统计开关,以在页面执行关闭操作时开启所述预设的第二统计开关。所述终止单元,还用于在所述预设的第二统计开关没有开启时,终止对数据的统计。还包括比较单元,用于在所述预设的第二统计开关已经开启时,比较当前页面的页面ID与前一个页面的页面ID是否一致。所述终止单元,还用于在当前页面的页面ID与前一个页面的页面ID不一致时,终止对数据的统计。所述存储单元,还用于在当前页面的页面ID与前一个页面的页面ID一致时,将所述当前页面的数据存储至本地数据库。
作为一种可选的实施方式,在本发明提供的一种针对Android App无埋点的数据统计装置中:所述判断单元,还用于响应于点击Android App系统控件的操作,判断预设的第三统计开关是否开启,其中,预先在Android App中插入所述预设的第三统计开关,以在页面发生点击Android App系统控件的操作时,开启所述预设的第三统计开关。所述终止单元,还用于在所述预设的第三统计开关没有开启时,终止对数据的统计;还包括匹配单元,用于在所述预设的第三统计开关已经开启时,匹配所述系统控件所在的页面。生成单元,用于生成并记录所述系统控件的信息。所述存储单元,还用于将所述系统控件所在的页面的数据,以及所述系统控件的信息存储至本地数据库。
作为一种可选的实施方式,在本发明提供的一种针对Android App无埋点的数据统计装置中:读取单元,用于读取所述本地数据库中的数据。处理单元,用于将所述数据使用protobuf格式进行处理,再进行gzip压缩。上报单元,用于响应于启动Android App的操作,将压缩后的数据进行第一次上报。所述上报单元,还用于在所述第一次上报成功或者失败后,等待20秒后再次对所述数据进行第二次上报。所述上报单元,还用于在所述第二次上报成功或者失败后,等待40秒后再次对所述数据进行第三次上报。所述判断单元,还用于判断是否存在已经开启的配置开关,所述配置开关包括预设的第一统计开关、预设的第二统计开关,以及预设的第三统计开关。识别单元,用于在存在已经开启的配置开关时,识别是否存在待上报的新数据。所述上报单元,还用于在存在待上报的新数据时,对所述待上报的新数据进行上报。清除单元,用于对所述待上报的新数据上报成功后,清除上报成功的数据。所述记录单元,还用于记录上报次数并对所述上报次数累加1次。
作为一种可选的实施方式,在本发明提供的一种针对Android App无埋点的数据统计装置中:所述判断单元,还用于判断所述上报次数是否大于4次。还包括检测单元,用于在所述上报次数大于4次时,检测定时器是否启动。启动单元,用于在所述定时器没有启动时,启动所述定时器。所述判断单元,还用于在所述定时器已经启动时,在定时的2分钟内判断是否存在已经开启的配置开关。所述终止单元,还用于在定时的2分钟内预设的配置开关为关闭时,终止对数据的上报。
本发明实施例还提供一种存储介质,本发明实施例还提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现本发明提供的针对Android App无埋点的数据统计方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:Read-OnlyMemory,简称:ROM)或随机存储记忆体(英文:RandomAccessMemory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于针对Android App无埋点的数据统计装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。

Claims (8)

1.一种针对Android App无埋点的数据统计方法,其特征在于,所述方法包括如下步骤:
响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入所述预设的第一统计开关,以在页面执行打开操作时开启所述预设的第一统计开关;
如果所述预设的第一统计开关没有开启,终止对数据的统计;
如果所述预设的第一统计开关已经开启,记录当前页面的标题、类名以及页面ID;
将所述当前页面的标题、类名以及页面ID存储至本地数据库;
所述方法还包括:
响应于关闭Android App页面的操作,判断预设的第二统计开关是否已经开启,其中,预先在Android App中插入所述预设的第二统计开关,以在页面执行关闭操作时开启所述预设的第二统计开关;
如果所述预设的第二统计开关没有开启,终止对数据的统计;
如果所述预设的第二统计开关已经开启,比较当前页面的页面ID与前一个页面的页面ID是否一致;
如果当前页面的页面ID与前一个页面的页面ID不一致,终止对数据的统计;
如果当前页面的页面ID与前一个页面的页面ID一致,将所述当前页面的数据存储至本地数据库。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
响应于点击Android App系统控件的操作,判断预设的第三统计开关是否开启,其中,预先在Android App中插入所述预设的第三统计开关,以在页面发生点击Android App系统控件的操作时,开启所述预设的第三统计开关;
如果所述预设的第三统计开关没有开启,终止对数据的统计;
如果所述预设的第三统计开关已经开启,匹配所述系统控件所在的页面;
生成并记录所述系统控件的信息;
将所述系统控件所在的页面的数据,以及所述系统控件的信息存储至本地数据库。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
读取所述本地数据库中的数据;
将所述数据使用protobuf格式进行处理,再进行gzip压缩;
响应于启动Android App的操作,将压缩后的数据进行第一次上报;
在所述第一次上报成功或者失败后,等待20秒后再次对所述数据进行第二次上报;
在所述第二次上报成功或者失败后,等待40秒后再次对所述数据进行第三次上报;
判断是否存在已经开启的配置开关,所述配置开关包括预设的第一统计开关、预设的第二统计开关,以及预设的第三统计开关;
如果存在已经开启的配置开关,识别是否存在待上报的新数据;
如果存在待上报的新数据,对所述待上报的新数据进行上报;
对所述待上报的新数据上报成功后,清除上报成功的数据;
记录上报次数并对所述上报次数累加1次。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
判断所述上报次数是否大于4次;
如果所述上报次数大于4次,检测定时器是否启动;
如果所述定时器没有启动,启动所述定时器;
如果所述定时器已经启动,在定时的2分钟内判断是否存在已经开启的配置开关;
如果在定时的2分钟内预设的配置开关为关闭,终止对数据的上报。
5.一种针对Android App无埋点的数据统计装置,其特征在于,所述装置包括:
判断单元,用于响应于打开Android App页面的操作,判断预设的第一统计开关是否已经开启,其中,预先在Android App中插入所述预设的第一统计开关,以在页面执行打开操作时开启所述预设的第一统计开关;
终止单元,用于在所述预设的第一统计开关没有开启时,终止对数据的统计;
记录单元,用于在所述预设的第一统计开关已经开启时,记录当前页面的标题、类名以及页面ID;
存储单元,用于将所述当前页面的标题、类名以及页面ID存储至本地数据库;
所述装置中:
所述判断单元,还用于响应于关闭Android App页面的操作,判断预设的第二统计开关是否已经开启,其中,预先在Android App中插入所述预设的第二统计开关,以在页面执行关闭操作时开启所述预设的第二统计开关;
所述终止单元,还用于在所述预设的第二统计开关没有开启时,终止对数据的统计;
还包括比较单元,用于在所述预设的第二统计开关已经开启时,比较当前页面的页面ID与前一个页面的页面ID是否一致;
所述终止单元,还用于在当前页面的页面ID与前一个页面的页面ID不一致时,终止对数据的统计;
所述存储单元,还用于在当前页面的页面ID与前一个页面的页面ID一致时,将所述当前页面的数据存储至本地数据库。
6.如权利要求5所述的装置,其特征在于,所述装置中:
所述判断单元,还用于响应于点击Android App系统控件的操作,判断预设的第三统计开关是否开启,其中,预先在Android App中插入所述预设的第三统计开关,以在页面发生点击Android App系统控件的操作时,开启所述预设的第三统计开关;
所述终止单元,还用于在所述预设的第三统计开关没有开启时,终止对数据的统计;
还包括匹配单元,用于在所述预设的第三统计开关已经开启时,匹配所述系统控件所在的页面;
生成单元,用于生成并记录所述系统控件的信息;
所述存储单元,还用于将所述系统控件所在的页面的数据,以及所述系统控件的信息存储至本地数据库。
7.如权利要求6所述的装置,其特征在于,所述装置还包括:
读取单元,用于读取所述本地数据库中的数据;
处理单元,用于将所述数据使用protobuf格式进行处理,再进行gzip压缩;
上报单元,用于响应于启动Android App的操作,将压缩后的数据进行第一次上报;
所述上报单元,还用于在所述第一次上报成功或者失败后,等待20秒后再次对所述数据进行第二次上报;
所述上报单元,还用于在所述第二次上报成功或者失败后,等待40秒后再次对所述数据进行第三次上报;
所述判断单元,还用于判断是否存在已经开启的配置开关,所述配置开关包括预设的第一统计开关、预设的第二统计开关,以及预设的第三统计开关;
识别单元,用于在存在已经开启的配置开关时,识别是否存在待上报的新数据;
所述上报单元,还用于在存在待上报的新数据时,对所述待上报的新数据进行上报;
清除单元,用于对所述待上报的新数据上报成功后,清除上报成功的数据;
所述记录单元,还用于记录上报次数并对所述上报次数累加1次。
8.如权利要求7所述的装置,其特征在于,所述装置中:
所述判断单元,还用于判断所述上报次数是否大于4次;
还包括检测单元,用于在所述上报次数大于4次时,检测定时器是否启动;
启动单元,用于在所述定时器没有启动时,启动所述定时器;
所述判断单元,还用于在所述定时器已经启动时,在定时的2分钟内判断是否存在已经开启的配置开关;
所述终止单元,还用于在定时的2分钟内预设的配置开关为关闭时,终止对数据的上报。
CN201910455751.5A 2019-05-29 2019-05-29 一种针对Android App无埋点的数据统计方法及装置 Active CN110245046B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910455751.5A CN110245046B (zh) 2019-05-29 2019-05-29 一种针对Android App无埋点的数据统计方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910455751.5A CN110245046B (zh) 2019-05-29 2019-05-29 一种针对Android App无埋点的数据统计方法及装置

Publications (2)

Publication Number Publication Date
CN110245046A CN110245046A (zh) 2019-09-17
CN110245046B true CN110245046B (zh) 2023-05-02

Family

ID=67885389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910455751.5A Active CN110245046B (zh) 2019-05-29 2019-05-29 一种针对Android App无埋点的数据统计方法及装置

Country Status (1)

Country Link
CN (1) CN110245046B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674048B (zh) * 2019-09-27 2023-09-22 北京新氧科技有限公司 一种埋点测试特征获取方法及相关装置
CN113778976A (zh) * 2020-09-04 2021-12-10 北京沃东天骏信息技术有限公司 数据处理方法及装置、电子设备、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562426A (zh) * 2017-09-04 2018-01-09 清华大学 无埋点式云端收集分析浏览器Trace的方法及系统
CN108038045A (zh) * 2017-12-29 2018-05-15 上海新炬网络技术有限公司 基于无埋点的Android用户行为数据采集方法
CN108280022A (zh) * 2018-02-08 2018-07-13 无线生活(杭州)信息科技有限公司 性能监测方法及装置
CN108596603A (zh) * 2018-04-24 2018-09-28 吉旗(成都)科技有限公司 一种基于公众号服务与蓝牙读卡器为etc卡圈存充值的方法
CN109739717A (zh) * 2018-04-12 2019-05-10 京东方科技集团股份有限公司 一种页面数据采集的方法及装置、服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562426A (zh) * 2017-09-04 2018-01-09 清华大学 无埋点式云端收集分析浏览器Trace的方法及系统
CN108038045A (zh) * 2017-12-29 2018-05-15 上海新炬网络技术有限公司 基于无埋点的Android用户行为数据采集方法
CN108280022A (zh) * 2018-02-08 2018-07-13 无线生活(杭州)信息科技有限公司 性能监测方法及装置
CN109739717A (zh) * 2018-04-12 2019-05-10 京东方科技集团股份有限公司 一种页面数据采集的方法及装置、服务器
CN108596603A (zh) * 2018-04-24 2018-09-28 吉旗(成都)科技有限公司 一种基于公众号服务与蓝牙读卡器为etc卡圈存充值的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于Android平台的校园助手研究与实现;彭成等;《湖南工业大学学报》;20181105;第32卷(第5期);44-49 *
大数据背景下的用户行为深度追踪研究与应用;谢名丞;《科技广场》;20181225(第3期);48-53 *

Also Published As

Publication number Publication date
CN110245046A (zh) 2019-09-17

Similar Documents

Publication Publication Date Title
US8713680B2 (en) Method and apparatus for modeling computer program behaviour for behavioural detection of malicious program
KR100765254B1 (ko) 데이터 전송 관리 시스템, 모바일 디바이스 및 이들에이용된 서버
CN110245046B (zh) 一种针对Android App无埋点的数据统计方法及装置
CN106201811A (zh) 应用程序的故障恢复方法和终端
CN108446224B (zh) 移动端上应用程序的性能分析方法、存储介质
CN107357731A (zh) 进程产生core dump问题的监控、分析和处理方法
CN106708616A (zh) 进程控制方法和进程控制装置
CN106326065B (zh) 一种终端使用时长管理方法和装置
KR101421136B1 (ko) 악성 프로그램을 검사하기 위하여 컴퓨터 프로그램의행동을 모델링하는 방법 및 장치
CN110308951A (zh) 一种启动界面卡顿的处理方法及装置、设备、存储介质
CN110427296A (zh) 一种基于硬件wdt进行监测的方法、设备及可读介质
CN111818097B (zh) 基于行为的流量监测方法及装置
WO2021068515A1 (zh) 存储系统中数据管理方法和装置
CN110109700B (zh) 一种针对iOS App无埋点的数据统计方法及装置
US11630714B2 (en) Automated crash recovery
CN109522188A (zh) 一种系统预警方法、装置和计算机可读存储介质
CN109597721A (zh) 一种音频数据采集方法、装置、设备及存储介质
CN109634782A (zh) 一种系统健壮性的检测方法、装置、存储介质及终端
CN110543452B (zh) 一种数据采集的方法及设备
CN110865937A (zh) 一种应用测试方法、装置和存储介质
CN111831206B (zh) 存储空间切换方法及后端监控系统
CN113409816B (zh) 音频卡顿检测方法、装置、计算机设备和存储介质
CN114153709B (zh) 一种服务器测试行为分析方法、装置及存储介质
CN103970803B (zh) 浏览器访问提示方法和系统
CN115422540A (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