检测用户使用应用程序的方法和装置制造方法及图纸

技术编号:15437117 阅读:57 留言:0更新日期:2017-05-25 19:18
本发明专利技术涉及一种检测用户使用应用程序的方法和装置。所述方法包括:通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;判断本次检测的应用程序与相邻上一次检测的应用程序是否相同;若所述本次检测的应用程序与相邻上一次检测的应用程序不同,则获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻获取所述相邻上一次检测的应用程序的使用时长;获取用户标识,统计预设时间内所述用户标识对应的各应用程序的累计使用时长。上述检测用户使用应用程序的方法,检测得到的应用程序的使用时长准确性高,在预设时间内统计得到的应用程序的累计使用时长准确性也高。

Method and device for detecting user using application program

The invention relates to a method and a device for detecting a user using an application program. The method includes: through the application of hook function monitoring and management to run the application stack in; determine the application and adjacent the detection of a detection application is the same; if the application of the application of the detection and the adjacent a different test, obtaining the first the last time detected records and the detection of second times, according to the first time and the second time for the adjacent last application detection time; obtaining user identification, statistics of each application in the presupposition of the user identification corresponding to the cumulative use long. The detection user uses the application method, and the detected application is long in use and high in accuracy, and the accumulated application time and the accuracy of the application obtained in the preset time are high.

【技术实现步骤摘要】
检测用户使用应用程序的方法和装置
本专利技术涉及应用程序管理领域,特别是涉及一种检测用户使用应用程序的方法和装置。
技术介绍
随着计算机和网络技术的发展,越来越多的用户通过电子产品上安装应用程序进行网络交流。用户根据自身需求会安装对应的应用程序,不同的用户安装和使用的应用程序可能不同。为了统计用户对所安装的应用程序的使用时间,传统的方式是通过检测到用户启动应用程序,记录该应用程序的开始时间,检测该应用程序被关闭后,记录结束时间,根据开始时间和结束时间得到该应用程序的使用时间,通过该方式计算得到的应用程序使用时间准确性低。
技术实现思路
基于此,有必要针对传统计算应用程序的使用时间的准确性低的问题,提供一种检测用户使用应用程序的方法和装置,能提高检测用户使用应用程序的使用时间的准确性。一种检测用户使用应用程序的方法,包括:通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;判断本次检测的应用程序与相邻上一次检测的应用程序是否相同;若所述本次检测的应用程序与相邻上一次检测的应用程序不同,则获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻获取所述相邻上一次检测的应用程序的使用时长;获取用户标识,统计预设时间内所述用户标识对应的各应用程序的累计使用时长。一种检测用户使用应用程序的方法,包括:接收用户终端上传的用户标识、所述用户标识对应的应用程序、各应用程序对应的每次使用时长,其中,所述各应用程序对应的每次使用时长是通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序,并判断本次检测的应用程序与相邻上一次检测的应用程序是否相同,若所述本次检测的应用程序与相邻上一次检测的应用程序不同,获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻所获取的所述相邻上一次检测的应用程序的使用时长;统计预设时间内所述用户标识对应的各应用程序的累计使用时长。一种检测用户使用应用程序的装置,包括:监测模块,用于通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;第一判断模块,用于判断本次检测的应用程序与相邻上一次检测的应用程序是否相同;第一单次时长获取模块,用于若所述本次检测的应用程序与相邻上一次检测的应用程序不同,则获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻获取所述相邻上一次检测的应用程序的使用时长;统计模块,用于获取用户标识,统计预设时间内所述用户标识对应的各应用程序的累计使用时长。一种检测用户使用应用程序的装置,包括:数据接收模块,用于接收用户终端上传的用户标识、所述用户标识对应的应用程序、各应用程序对应的每次使用时长,其中,所述各应用程序对应的每次使用时长是所述用户终端通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序,并判断本次检测的应用程序与相邻上一次检测的应用程序是否相同,若所述本次检测的应用程序与相邻上一次检测的应用程序不同,获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻所获取的所述相邻上一次检测的应用程序的使用时长;累计模块,用于统计预设时间内所述用户标识对应的各应用程序的累计使用时长。上述检测用户使用应用程序的方法和装置,通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序,当本次检测的应用程序与相邻上一次检测的应用程序不同时,获取到上一次检测不同时所记录的第一时刻和本次检测的第二时刻,可以得到相邻上一次检测的应用程序的使用时长,通过检测栈顶中应用程序的变化得到的应用程序的使用时长,因栈顶中的应用程序时用户当前正在使用的应用程序,如此检测得到的应用程序的使用时长准确性高,在预设时间内统计得到的应用程序的累计使用时长准确性也高。附图说明图1为一个实施例中检测用户使用应用程序的方法的应用环境示意图;图2A为一个实施例中用户终端的内部结构示意图;图2B为一个实施例中服务器的内部结构示意图;图3为一个实施例中在用户终端的桌面上启动一个应用程序的时序图;图4为一个实施例中检测用户使用应用程序的方法的流程图;图5为另一个实施例中检测用户使用应用程序的方法的流程图;图6为另一个实施例中检测用户使用应用程序的方法的流程图;图7为另一个实施例中检测用户使用应用程序的方法的流程图;图8为用户终端上展示的用户常用应用程序的示意图;图9为一个实施例中检测用户使用应用程序的装置的结构框图;图10为另一个实施例中检测用户使用应用程序的装置的结构框图;图11为另一个实施例中检测用户使用应用程序的装置的结构框图;图12为另一个实施例中检测用户使用应用程序的装置的结构框图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。图1为一个实施例中检测用户使用应用程序的方法的应用环境示意图。如图1所示,该应用环境包括用户终端110和服务器120。用户终端110上安装有应用程序管理客户端,服务器120上安装有应用程序管理服务端,用户终端110和服务器120进行数据通信。用户终端110通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序,通过比较本次检测的应用程序与相邻上一次检测的应用程序是否相同,若不同,则获取上一次检测不同时所记录的第一时刻和本次检测的第二时刻,根据第一时刻和第二时刻获取相邻上一次检测的应用程序的使用时长,将该上一次检测的应用程序及对应的使用时长、用户标识上传到服务器120进行存储。图2A为一个实施例中用户终端(或电子设备等)的内部结构示意图。如图2A所示,该用户终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,终端的非易失性存储介质存储有操作系统,还包括一种检测用户使用应用程序的装置,该检测用户使用应用程序的装置用于实现一种检测用户使用应用程序的方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。用户终端中的内存储器为非易失性存储介质中的检测用户使用应用程序的装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种检测用户使用应用程序的方法。网络接口用于与服务器进行网络通信,如上传应用程序及对应的使用时长至服务器,接收服务器推送的应用程序信息等。用户终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该用户终端可以是手机、平板电脑或者个人数字助理或穿戴式设备等。本领域技术人员可以理解,图2A中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。图2B为一个实施例中服务器(或云端等)的内部结构示意图。如图2B所示,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,该服务器的非易失性存储介质存储有操作系统、数据库和检测用户使用应用程序的装置,数据库本文档来自技高网...
检测用户使用应用程序的方法和装置

【技术保护点】
一种检测用户使用应用程序的方法,包括:通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;判断本次检测的应用程序与相邻上一次检测的应用程序是否相同;若所述本次检测的应用程序与相邻上一次检测的应用程序不同,则获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻获取所述相邻上一次检测的应用程序的使用时长;获取用户标识,统计预设时间内所述用户标识对应的各应用程序的累计使用时长。

【技术特征摘要】
1.一种检测用户使用应用程序的方法,包括:通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;判断本次检测的应用程序与相邻上一次检测的应用程序是否相同;若所述本次检测的应用程序与相邻上一次检测的应用程序不同,则获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻获取所述相邻上一次检测的应用程序的使用时长;获取用户标识,统计预设时间内所述用户标识对应的各应用程序的累计使用时长。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:按照所述累计使用时长从高到低筛选出预定数量的应用程序或所述累计使用时长超过时长阈值的应用程序作为与所述用户标识对应的常用应用程序。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:当通过挂钩函数挂钩所述管理运行应用程序堆栈的接口失败时,记录所述栈顶中应用程序的开始使用时刻;按照指定间隔时间对所述栈顶发起轮询,获取所述栈顶中的应用程序;判断本次轮询的应用程序与相邻上一次轮询的应用程序是否相同;若本次轮询的应用程序与相邻上一次轮询的应用程序不同,则记录本次轮询的时刻,根据所述上一次轮询的应用程序的开始使用时刻与本次轮询的时刻获取所述上一次轮询的应用程序的使用时长,并将所述本次轮询的时刻作为所述本次轮询的应用程序的开始使用时刻;若本次轮询的应用程序与相邻上一次轮询的应用程序相同,则继续按照指定间隔时间对所述栈顶发起轮询,获取所述栈顶中的应用程序。4.根据权利要求1或2所述的方法,其特征在于,所述判断本次检测的应用程序与相邻上一次检测的应用程序是否相同,包括:获取本次检测的应用程序标识和相邻上一次检测的应用程序标识;判断本次检测的应用程序标识和相邻上一次检测的应用程序标识是否相同。5.根据权利要求3所述的方法,其特征在于,在通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序之前,所述方法还包括:检测是否具有超级管理权限;若具有超级管理权限,则通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;若不具有超级管理权限,则执行所述记录所述栈顶中应用程序的开始使用时刻,按照指定间隔时间对所述栈顶发起轮询,获取所述栈顶中的应用程序的步骤。6.根据权利要求3所述的方法,其特征在于,在通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序之前,所述方法还包括:检测是否具有超级管理权限;若具有超级管理权限,则执行所述通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序的步骤;若不具有超级管理权限,则检测用户终端是否具有临时的超级管理权限;若具有临时的超级管理权限,则执行所述通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序的步骤;若不具有临时的超级管理权限,则向服务器发起获取临时的超级管理权限策略的请求,接收所述服务器返回的临时的超级管理权限策略;若根据所述临时的超级管理权限策略获取临时的超级管理权限成功,则执行所述通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序的步骤;若根据所述临时的超级管理权限策略获取临时的超级管理权限失败,则所述记录所述栈顶中应用程序的开始使用时刻,按照指定间隔时间对所述栈顶发起轮询,获取所述栈顶中的应用程序的步骤。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述用户标识、所述用户标识对应的应用程序标识,以及各应用程序标识对应的应用程序每次使用时长上传到服务器;接收所述服务器推送的累计使用时长超过预设时长的应用程序的同类的应用程序信息,和/或,接收所述服务器推送的与用户标识对应的常用应用程序同类的应用程序信息,所述常用应用程序是指按照累计使用时长从高到低选取的预定数量的应用程序或累计使用时长超过时长阈值的应用程序。8.一种检测用户使用应用程序的方法,包括:接收用户终端上传的用户标识、所述用户标识对应的应用程序、各应用程序对应的每次使用时长,其中,所述各应用程序对应的每次使用时长是通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序,并判断本次检测的应用程序与相邻上一次检测的应用程序是否相同,若所述本次检测的应用程序与相邻上一次检测的应用程序不同,获取上一次检测不同时所记录的第一时刻以及本次检测的第二时刻,根据所述第一时刻和第二时刻所获取的所述相邻上一次检测的应用程序的使用时长;统计预设时间内所述用户标识对应的各应用程序的累计使用时长。9.根据权利要求8所述的方法,其特征在于,所述方法还包括:按照所述累计使用时长从高到低筛选出预定数量的应用程序或所述累计使用时长超过时长阈值的应用程序作为与所述用户标识对应的常用应用程序。10.根据权利要求9所述的方法,其特征在于,所述方法还包括:接收包含用户标识的应用程序恢复请求;根据所述应用程序恢复请求中的用户标识查找到与所述用户标识对应的常用应用程序;将所述常用应用程序返回给所述发起应用程序恢复请求的用户标识所在的用户终端。11.根据权利要求9所述的方法,其特征在于,所述方法还包括:接收包含用户标识的应用程序恢复请求;根据所述应用程序恢复请求中的用户标识查找到与所述用户标识对应的常用应用程序,以及获取所述用户标识预选的应用程序;将所述常用应用程序及所述用户标识预选的应用程序返回给所述发起应用程序恢复请求的用户标识所在的用户终端。12.根据权利要求8、10或11所述的方法,其特征在于,所述方法还包括:根据所述用户标识对应的各应用程序的累计使用时长筛选出累计使用时长超过预设时长的应用程序;获取与所述累计使用时长超过预设时长的应用程序同类的应用程序信息,并将所述同类的应用程序信息推送给所述用户标识所在的用户终端,和/或,获取用户标识对应的常用应用程序同类的应用程序信息,将所述用户标识对应的常用应用程序同类的应用程序信息推送给所述用户标识所在的用户终端,所述常用应用程序是指按照累计使用时长从高到低选取的预定数量的应用程序或累计使用时长超过时长阈值的应用程序。13.一种检测用户使用应用程序的装置,其特征在于,包括:监测模块,用于通过挂钩函数监测管理运行应用程序堆栈的栈顶中的应用程序;第一判断模块,用于判断本次检测的应用程序与相邻上一次检测的应用程序是否相同;第一单次时长获取模块,用于若所述本次检测的应用程序与相邻上一次检测的应用程序不同,则获取上一次检测不同时所...

【专利技术属性】
技术研发人员:邓雨星黄浩鑫
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1