悬浮窗显示设置、控制方法和装置的制造方法

文档序号:8905410阅读:347来源:国知局
悬浮窗显示设置、控制方法和装置的制造方法
【专利说明】
【技术领域】
[0001]本发明涉及智能设备的广告拦截技术,具体而言,不仅涉及一种悬浮窗显示设置方法和装置;还涉及一种悬浮窗显示控制方法和装置。
【【背景技术】】
[0002]目前,手机上的应用程序得到指数级增长,应用程序的安装又丰富了智能手机的功能。但是有一些应用程序开发者为了广告推广费用,会在自己的应用程序中内置广告平台,当用户在智能终端中安装了内置有广告平台的应用程序后,广告平台会在系统后台自动运行,自动推送出一些广告页面,给用户造成干扰,更有甚者会侵犯用户的隐私,损害用户的利益。为了保障用户的利益,各安全软件公司开发了多种不同的广告过滤软件,主要包括有基于特征库分析的广告过滤软件、匹配程序特征码的广告过滤软件,用以对网页中的通知栏广告、游戏、购物网页等广告进行过滤。
[0003]但是随着安全软件公司加强对恶意通知栏广告的识别和拦截,一些广告软件另辟蹊径,开始使用智能终端操作系统的显示接口,在操作系统界面绘制一些悬浮的广告窗口,使得绘制的悬浮窗可以覆盖在任何应用程序之上,这样,能够避免广告过滤软件的过滤,并且用户无法知晓该悬浮窗是哪个应用程序显示的。例如,在智能终端的显示界面,利用操作系统显示接口显示的恶意悬浮窗中,通过要求用户注册或要求用户下载该恶意广告软件。弹出的悬浮窗广告,对用户造成了干扰和困惑,而且有可能在用户使用网银等应用程序软件时,被欺骗在恶意应用程序软件弹出的悬浮窗中输入敏感信息,导致不必要的物质损失以及隐私信息泄露,而对该类悬浮窗广告,现有技术还没有提出较好的拦截方法。

【发明内容】

[0004]本发明的首要目的在于克服上述的至少一个问题,而提供一种悬浮窗显示设置方法和装置。
[0005]本发明的另一目的在于克服上述的至少一个问题,而提供一种悬浮窗显示控制方法和装置。
[0006]为实现本发明的目的,本发明采取如下技术方案:
[0007]本发明提供了一种悬浮窗显示设置方法,包括以下步骤:
[0008]接收由注册到系统底层的后台服务进程监听而产生的显示于系统桌面的悬浮窗被添加的行为的事件通知;
[0009]显示指令接收界面以接收用户指令,将用户指令与该事件通知所提供的悬浮窗特征信息关联性存储以实施设置;
[0010]响应于表征禁止悬浮窗显示的用户指令,通知所述后台服务进程控制所述悬浮窗从系统桌面中消失。
[0011]具体的,通过识别用于显示悬浮窗的流程的函数或显示服务接口而实现所述对悬浮窗行为的监听。
[0012]根据本发明的一个实施例所揭示,所述悬浮窗特征信息依据绘制所述悬浮窗的属性值而获得。
[0013]根据本发明的另一实施例所揭示,所述悬浮窗特征信息依据监听到的所述悬浮窗被添加时处于系统最顶层的应用程序进程而确定该应用程序的包名和/或MD5签名作为所述的特征信息。
[0014]根据本发明的又一实施例所揭示,所述悬浮窗特征信息依据监听到的所述悬浮窗的添加函数的资源路径而确定悬浮窗所属应用程序的包名和/或MD5签名作为所述的特征信息。
[0015]具体的,所述悬浮窗的属性值是指窗口布局文件路径消息、窗口图片资源文件路径信息、窗口布局文件名称信息、窗口图片资源文件名称信息、窗口文本文字信息、窗口布局大小和位置信息中的一种或其任意组合。
[0016]具体的,所述用户指令包括所述表征禁止悬浮窗显示的用户指令,也包括表征允许悬浮窗显示的用户指令。
[0017]具体的,所述用户指令与相应的悬浮窗特征信息以其映射关系关联性存储于预设列表中,该预设列表存储于本地或远程服务器。
[0018]较佳的,所述后台服务进程产生移除指令使所述悬浮窗从系统桌面中消失,或通过设置所述悬浮窗的显示属性为不可见使所述悬浮窗从系统桌面中消失。
[0019]具体的,所述后台服务进程对添加所述悬浮窗的添加函数的运行入口点挂钩而监听悬浮窗的添加行为,从而形成所述的事件通知。所述后台服务进程挂钩的添加函数为WindowManager.addView()。
[0020]具体的,所述后台服务进程基于获取Root权限为前提而被添加到系统底层。具体的,通过调用SystemService.addService O函数而将所述后台服务进程添加到系统底层。
[0021]具体的,所述后台服务进程运行于系统的框架层,将所述事件通知发送到系统的应用层。
[0022]进一步的,在接收到表征禁止悬浮窗显示的用户指令后,所述方法还包括:对所述事件通知所提供的悬浮窗所属的应用程序进行安全扫描;和/或卸载该应用程序;和/或对该应用程序设置隐私访问权限。
[0023]进一步的,该方法还包括如下步骤:
[0024]响应于表征允许悬浮窗显示的用户指令,向后台服务进程返回空值。
[0025]进一步的,该方法包括如下步骤:
[0026]接收基于所述悬浮窗后续产生的所述的事件通知,依据所述已关联性存储的用户指令与悬浮窗特征信息的映射关系而确定相应的用户指令,依据所述的用户指令控制该悬浮窗的显示状态。
[0027]本发明提供了一种悬浮窗显示设置装置,包括:
[0028]通知接收模块,用于接收由注册到系统底层的后台服务进程监听而产生的显示于系统桌面的悬浮窗被添加的行为的事件通知;
[0029]指令接收模块,用于显示指令接收界面以接收用户指令,将用户指令与该事件通知所提供的悬浮窗特征信息关联性存储以实施设置;
[0030]处理模块,用于响应于表征禁止悬浮窗显示的用户指令,通知所述后台服务进程控制所述悬浮窗从系统桌面中消失。
[0031]进一步的,所述通知接收模块包括有通知接收模块,所述通知接收模块被配置为通过识别用于显示悬浮窗的流程的函数或显示服务接口而实现所述对悬浮窗行为的监听。
[0032]根据本发明中一个实施例所揭示,所述指令接收模块包括有预设单元,所述预设单元被配置为依据绘制所述悬浮窗的属性值而获得所述悬浮窗特征信息。
[0033]根据本发明中另一个实施例所揭示,所述预设单元还被配置为依据监听到的所述悬浮窗被添加时处于系统最顶层的应用程序进程而确定该应用程序的包名和/或MD5签名作为所述悬浮窗特征信息。
[0034]根据本发明中又一个实施例所揭示,所述预设单元还被配置为依据监听到的所述悬浮窗的添加函数的资源路径而确定悬浮窗所属应用程序的包名和/或MD5签名作为所述悬浮窗特征信息。
[0035]具体的,所述悬浮窗的属性值是指窗口布局文件路径消息、窗口图片资源文件路径信息、窗口布局文件名称信息、窗口图片资源文件名称信息、窗口文本文字信息、窗口布局大小和位置信息中的一种或其任意组合。
[0036]具体的,所述用户指令包括所述表征禁止悬浮窗显示的用户指令,也包括表征允许悬浮窗显示的用户指令。
[0037]具体的,所述用户指令与相应的悬浮窗特征信息以其映射关系关联性存储于预设列表中,所述指令接收模块被配置为将该预设列表存储于本地或远程服务器。
[0038]较佳的,所述处理模块被配置为通知所述后台服务进程产生移除指令使所述悬浮窗从系统桌面中消失,或通过设置所述悬浮窗的显示属性为不可见使所述悬浮窗从系统桌面中消失。
[0039]具体的,所述通知接收模块被配置为通知后台服务进程对添加所述悬浮窗的添加函数的运行入口点挂钩而监听悬浮窗的添加行为,从而形成所述的事件通知。所述后台服务进程挂钩的添加函数为WindowManager.addView ()。
[0040]具体的,所述后台服务进程基于获取Root权限为前提而被添加到系统底层。
[0041]具体的,所述通知接收模块通过调用SystemService.addService O函数而将所述后台服务进程添加到系统底层。
[0042]具体的,所述后台服务进程运行于系统的框架层,将所述事件通知发送到系统的应用层。
[0043]进一步的,在接收到表征禁止悬浮窗显示的用户指令后,所述处理模块还被配置为:对所述事件通知所提供的悬浮窗所属的应用程序进行安全扫描;和/或卸载该应用程序;和/或对该应用程序设置隐私访问权限。
[0044]进一步的,所述处理模块还被配置为:响应于表征允许悬浮窗显示的用户指令,向后台服务进程返回空值。
[0045]进一步的,所述通知接收模块还被配置为接收基于所述悬浮窗后续产生的所述的事件通知,所述指令接收模块依据所述已关联性存储的用户指令与悬浮窗特征信息的映射关系而确定相应的用户指令,所述处理模块依据所述的用户指令控制该悬浮窗的显示状
??τ O
[0046]本发明提供的一种悬浮窗显示控制方法,包括以下步骤:
[0047]接收由注册到系统底层的后台服务进程截获悬浮窗添加行为而产生的事件通知;
[0048]以所述事件通知所提供的悬浮窗特征信息查询预设列表以从中确定与之相对应的用户指令;
[0049]响应于其中表征允许或禁止悬浮窗显示的用户指令,通知后台服务进程放行或拦截该悬浮窗的显示行为。
[0050]具体的,所述的预设列表包含有预设置的所述悬浮窗特征信息与相应的用户指令之间的映射关系数据。
[0051]具体的,通过识别用于显示悬浮窗的流程的函数或显示服务接口而实现所述对悬浮窗行为的截获。
[0052]根据本发明中一个实施例所揭示,所述悬浮窗特征信息依据绘制所述悬浮窗的属性值而获得。
[0053]根据本发明中另一个实施例所揭示,所述悬浮窗特征信息依据监听到的所述悬浮窗被添加时处于系统最顶层的应用程序进程而确定该应用程序的包名和/或MD5签名作为所述的特征信息。
[0054]根据本发明中又一个实施例所揭示,所述悬浮窗特征信息依据监听到的所述悬浮窗的添加函数的资源路径而确定悬浮窗所属应用程序的包名和/或MD5签名作为所述的特征信息。
[0055]较佳的,所述预设列表存储于远程服务器中,通过发送包含所述特征信息的远程请求并接收相应的反馈数据而获得所述的用户指令。
[0056]具体的,响应于表征禁止悬浮窗的用户指令,所述后台服务进程产生移除指令,或通过设置所述悬浮窗的显示属性为不可见,或直接绕过添加所述悬浮窗的添加指令,实现对所述悬浮窗的显示拦截。
[0057]具体的,所述悬浮窗的属性值是指窗口布局文件路径消息、窗口图片资源文件路径信息、窗口布局文件名称信息、窗口图片资源文件名称信息、窗口文本文字信息、窗口布局大小和位置信息中的一种或其任意组合。
[0058]具体的,所述后台服务进程对添加所述悬浮窗的添加函数的运行入口点挂钩而监听悬浮窗的添加行为,从而形成所述的事件通知。所述后台服务进程挂钩的添加函数为WindowManager.addView()。
[0059]具体的,所述后台服务进程基于获取Root权限为前提而被添加到系统底层。通过调用SystemService.addService O函数而将所述后台服务进程添加到系统底层。
[0060]具体的,所述后台服务进程运行于系统的框架层,将所述事件通知发送到系统的应用层。
[0061]进一步的,响应于表征允许悬浮窗显示的用户指令,向后台服务进程返回空值以使该悬浮窗显示到系统桌面。
[0062]本发明提供的一种悬浮窗显示控制装置,包括:
[0063]通知接收模块,用于接收由注册到系统底层的后台服务进程截获悬浮窗添加行为而产生的事件通知;
[0064]查询模块,用于以所述事件通知所提供的悬浮窗特征信息查询预设列表以从中确定与之相对应的用户指令;
[0065]控制模块,用于响应于其中表征允许或禁止悬浮窗显示的用户指令,通知后台服务进程放行或拦截该悬浮窗的显示行为。
[0066]具体的,所述的预设列表包含有预设置的所述悬浮窗特征信息与相应的用户指令之间的映射关系数据。
[0067]较佳的,所述通知接收模块还被配置为通过识别用于显示悬浮窗的流程的函数或显示服务接口而实现所述对悬浮窗行为的截获。
[0068]根据本发明的一个实施例所揭示,所述查询模块还包括有设置单元,所述设置单元被配置为依据绘制所述悬浮窗的属性值而获得所述悬浮窗特征信息。
[0069]根据本发明的另一个实施例所揭示,所述设置单元还被配置为依据监听到的所述悬浮窗被添加时处于系统最顶层的应用程序进程而确定该应用程序的包名和/或MD5签名作为所述悬浮窗特征信息。
[0070]根据本发明的又一个实施例所揭示,所述设置单元还被配置为依据监听到的所述悬浮窗的添加函数的资源路径而确定悬浮窗所属应用程序的包名和/或MD5签名作为所述悬浮窗特征信息。
[0071]较佳的,所述预设列表存储于远程服务器中,所述查询模块被配置为通过发送包含所述特征信息的远程请求并接收相应的反馈数据而获得所述的用户指令。
[0072]具体的,响应于表征禁止悬浮窗的用户指令,所述控制模块被配置为通知后台服务进程产生移除指令,或通过设置所述悬浮窗的显示属性为不可见,或直接绕过添加所述悬浮窗的添加指令,实现对所述悬浮窗的显示拦截。
[0073]具体的,所述悬浮窗的属性值是指窗口布局文件路径消息、窗口图片资源文件路径信息、窗口布局文件名称信息、窗口图片资源文件名称信息、窗口文本文字信息、窗口布局大小和位置信息中的一种或其任意组合。
[0074]具体的,所述通知接收模块被配置为通知后台服务进程对添加所述悬浮窗的添加函数的运行入口点挂钩而监听悬浮窗的添加行为,从而形成所述的事件通知。所述后台服务进程挂钩的添加函数为WindowManager.addView ()。
[0075]具体的,所述后台服务进程基于获取Root权限为前提而被添加到系统底层。
[0076]具体的,所述通知接收模块被配置为通过调用SystemService.addService O函数而将所述后台服务进程添加到系统底层。
[0077]较佳的,所述后台服务进程运行于系统的框架层,将所述事件通知发送到系统的应用层。
[0078]进一步的,所述控制模块还被配置为响应于表征允许悬浮窗显示的用户指令,向后台服务进程返回空值以使该悬浮窗显示到系统桌面。
[0079]与现有技术相比,本发明具备如下优点:
[0080]1、本发明通过在系统底层注册后台服务进程来监听显示于系统桌面的悬浮窗被添加的行为,并显示指令接收界面以接收用户指令控制该悬浮窗的显示和消失;即一旦系统桌面中弹出悬浮窗,随即会显示指令接收界面来询问用户,便能根据用户的指令有效的控制该悬浮窗的显示行为。并将用户指令与该添加事件通知所提供的悬浮窗特征信息关联性存储为预设列表,当出现悬浮窗添加行为
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1