统计应用程序使用频率的方法及装置制造方法及图纸

技术编号:11061740 阅读:129 留言:0更新日期:2015-02-19 08:48
本发明专利技术公开了一种统计应用程序使用频率的方法及装置,其中的方法包括:创建视图,在所述视图中监控系统中所有的触屏事件;收到触屏事件后,查询顶层的活动组件,得到顶层活动组件链表;分析所述链表,确定用户主动点击而启动的活动组件,并计算出用户在所述主动点击的活动组件对应的应用程序上的停留时间,和/或,确定用户启动应用程序的次数;根据用户启动应用程序的次数和/或在应用程序上的停留时间,统计应用程序的使用频率。依据本发明专利技术方案,可实现不过多消耗CPU资源并且可以明确判断应用程序是否为用户主动启动。

【技术实现步骤摘要】
统计应用程序使用频率的方法及装置
本专利技术涉及网络安全
,具体涉及一种统计应用程序使用频率的方法及装置。
技术介绍
为了最大化利用有限的手机存储,提示用户卸载不常用的手机应用程序(软件)是一种有效的方法。为了得到不常用的应用程序列表,需要统计手机应用程序的使用频率。由于Android(安卓)沙箱机制和严格的权限控制,很多系统事件,如activity (活动)的启动、退出并没有相应回调机制来通知应用程序。一种统计手机应用程序的使用频率的常规方式是,通过轮询来获取顶层的activity。这种方式有两个缺点:一是为了保证准确度,过于频繁的轮询消耗CPU资源的同时也导致电量的消耗,二是这种方法不能判断某个应用程序是用户点击桌面图标主动启动的,还是被其他应用程序启动或开机自启动的。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的统计应用程序使用频率的方法及装置。 依据本专利技术的一个方面,提供一种统计应用程序使用频率的方法,包括:创建视图,在所述视图中监控系统中所有的触屏事件;收到触屏事件后,查询顶层的活动组件,得到顶层活动组件链表;分析所述链表,确定用户主动点击而启动的活动组件,并计算出用户在所述主动点击的活动组件对应的应用程序上的停留时间,和/或,确定用户启动所述应用程序的次数;根据用户启动应用程序的次数和/或在所述应用程序上的停留时间,统计应用程序的使用频率。 优选的,所述创建视图包括:创建视图实例,并设置视图实例的窗口类型标识、窗口标识位和窗口大小参数。 优选的,设置视图实例的窗口类型标识,使得该窗口位于一般窗口之上;设置视图实例的窗口标识位,使得该窗口没有获得焦点时也允许任何指针事件发送给此窗口底下的窗口、或者使得该窗口不会获取焦点、或者允许该窗口收到位于此窗口之外的点击事件;设置窗口大小参数,使得窗口不可见。 优选的,通过调用系统接口,实现对系统中所有触屏事件的监控。 优选的,所监控的触屏事件是指除了当前窗口之外的事件。 优选的,所述确定用户主动点击而启动的活动组件包括:获取当前活动组件以及当前活动组件的前一个活动组件;根据前一个活动组件的类型判断是否属于桌面应用程序,如果是,则确定当前活动组件是用户主动启动的。 优选的,所述计算出用户在所述主动点击的活动组件对应的应用程序上的停留时间包括:根据记录的每次触屏事件发生时的顶层活动组件,确定所述应用程序的所有活动组件;通过所述应用程序的连续的活动组件之间的时间差,计算出用户在所述应用程序上的停留时间。 优选的,还包括:根据所统计出的应用程序的使用频率,确定是否向用户展示有关所述应用程序预定操作的提示或确定是否执行有关所述应用程序的操作。 优选的,所述根据所统计出的应用程序的使用频率,向用户展示有关所述应用程序预定操作的提示包括:对于使用频率低的应用程序,向用户展示卸载所述应用程序的提示;或者,对于使用频率高的应用程序,向用户展示对所述应用程序进行升级的提示。 优选的,所述根据所统计出的应用程序的使用频率,执行有关所述应用程序的操作包括:对于使用频率低的应用程序,阻止向所述应用程序推送广告或通知消息;或者,对于使用频率高的应用程序,向所述应用程序推送广告或通知消息。 依据本专利技术的另一个方面,提供一种统计应用程序使用频率的装置,包括:视图创建单元,用于创建视图;监控单元,用于在所述视图中监控系统中所有的触屏事件;链表获取单元,用于收到触屏事件后,查询顶层的活动组件,得到顶层活动组件链表;链表分析单元,用于分析所述链表,确定用户主动点击而启动的活动组件,并计算出用户在所述主动点击的活动组件对应的应用程序上的停留时间,和/或,确定用户启动应用程序的次数;频率统计单元,用于根据用户启动应用程序的次数和/或在应用程序上的停留时间,统计应用程序的使用频率。 优选的,所述视图创建单元具体用于:创建视图实例,并设置视图实例的窗口类型标识、窗口标识位和窗口大小参数。 优选的,所述视图创建单元具体用于:设置视图实例的窗口类型标识,使得该窗口位于一般窗口之上;设置视图实例的窗口标识位,使得该窗口没有获得焦点时也允许任何指针事件发送给此窗口底下的窗口、或者使得该窗口不会获取焦点、或者允许该窗口收到位于此窗口之外的点击事件;以及,设置窗口大小参数,使得窗口不可见。 优选的,所述监控单元用于通过调用系统接口,实现对系统中所有触屏事件的监控。 优选的,所述监控单元所监控的触屏事件是指除了当前窗口之外的事件。 优选的,所述链表分析单元具体用于:获取当前活动组件以及当前活动组件的前一个活动组件;根据前一个活动组件的类型判断是否属于桌面应用程序,如果是,则确定当前活动组件是用户主动启动的。 优选的,所述链表分析单元具体用于:根据记录的每次触屏事件发生时的顶层活动组件,确定所述应用程序的所有活动组件;通过所述应用程序的连续的活动组件之间的时间差,计算出用户在所述应用程序上的停留时间。 优选的,还包括:提示操作单元,用于根据所统计出的应用程序的使用频率,确定是否向用户展示有关所述应用程序预定操作的提示或确定是否执行有关所述应用程序的操作。 优选的,所述提示操作单元具体用于:对于使用频率低的应用程序,向用户展示卸载所述应用程序的提示;或者,对于使用频率高的应用程序,向用户展示对所述应用程序进行升级的提示。 优选的,所述提示操作单元具体用于:对于使用频率低的应用程序,阻止向所述应用程序推送广告或通知消息;或者,对于使用频率高的应用程序,向所述应用程序推送广告或通知消息。 可见,本专利技术实施例是通过实现一个隐形view (视图),在这个view中监控系统中所有的touch事件,收到touch事件后再去查询顶层的Activity,这样就可以得到一个顶层Activity的链表;分析这个链表就可以得到哪些activity是用户主动点击启动的并计算出用户在应用程序上的停留时间,从而最终统计出应用程序的使用频率。 上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的【具体实施方式】。 【附图说明】 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中: 图1示出了根据本专利技术一个实施例的统计应用程序使用频率的方法流程图;以及 图2示出了根据本专利技术一个实施例的统计应用程序使用频率的装置结构示意图。 【具体实施方式】 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。 如前所述的,现有技术虽然可以通过轮询来获取顶层的activity从而统计应用程序的使用频率,然而这种方案存在大量消本文档来自技高网...

【技术保护点】
一种统计应用程序使用频率的方法,其特征在于,包括:创建视图,在所述视图中监控系统中所有的触屏事件;收到触屏事件后,查询顶层的活动组件,得到顶层活动组件链表;分析所述链表,确定用户主动点击而启动的活动组件,并计算出用户在所述主动点击的活动组件对应的应用程序上的停留时间,和/或,确定用户启动所述应用程序的次数;根据用户启动应用程序的次数和/或在所述应用程序上的停留时间,统计应用程序的使用频率。

【技术特征摘要】
1.一种统计应用程序使用频率的方法,其特征在于,包括: 创建视图,在所述视图中监控系统中所有的触屏事件; 收到触屏事件后,查询顶层的活动组件,得到顶层活动组件链表; 分析所述链表,确定用户主动点击而启动的活动组件,并计算出用户在所述主动点击的活动组件对应的应用程序上的停留时间,和/或,确定用户启动所述应用程序的次数; 根据用户启动应用程序的次数和/或在所述应用程序上的停留时间,统计应用程序的使用频率。2.如权利要求1所述的方法,其特征在于,所述创建视图包括: 创建视图实例,并设置视图实例的窗口类型标识、窗口标识位和窗口大小参数。3.如权利要求2所述的方法,其特征在于, 设置视图实例的窗口类型标识,使得该窗口位于一般窗口之上; 设置视图实例的窗口标识位,使得该窗口没有获得焦点时也允许任何指针事件发送给此窗口底下的窗口、或者使得该窗口不会获取焦点、或者允许该窗口收到位于此窗口之外的点击事件; 设置窗口大小参数,使得窗口不可见。4.如权利要求1所述的方法,其特征在于,通过调用系统接口,实现对系统中所有触屏事件的监控。5.如权利要求1所述的方法,其特征在于,所监控的触屏事件是指除了当前窗口之外的事件。6.如权利要求1所述的方法,其特征在于,所述确定用户主动点击而启动的活动组件包括: 获取当前活动组件以及当前活动组件的前一个活动组件; 根据前一个活动组件的类型判断是否属于桌面应用程序,如果是,则确定当...

【专利技术属性】
技术研发人员:龚广申迪
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:北京;11

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

1