CN105809027B - 应用程序的权限控制方法及装置 - Google Patents
应用程序的权限控制方法及装置 Download PDFInfo
- Publication number
- CN105809027B CN105809027B CN201410836768.2A CN201410836768A CN105809027B CN 105809027 B CN105809027 B CN 105809027B CN 201410836768 A CN201410836768 A CN 201410836768A CN 105809027 B CN105809027 B CN 105809027B
- Authority
- CN
- China
- Prior art keywords
- application
- application program
- external mobile
- mobile device
- connection state
- 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
Landscapes
- Stored Programmes (AREA)
- Telephone Function (AREA)
Abstract
本发明公开了一种应用程序的权限控制方法及装置,其中,所述方法包括:获取当前设备中第一应用程序集合;当检测到第二应用程序获取外部移动设备的连接状态时,确定所述第二应用程序是否属于所述第一应用程序集合;若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改;其中,所述第一应用程序集合包括预先指定的一个以上应用程序。本发明可以解决用户在将外部移动设备连接至个人计算机时各类应用程序同时自动弹窗、干扰用户正常使用的问题。
Description
技术领域
本发明涉及计算机技术,具体涉及一种应用程序的权限控制方法及装置。
背景技术
移动设备,也被称为行动装置(英语:Mobile device)、流动装置、手持设备(handheld device)、移动终端等,大多数为口袋大小的计算设备,通常有一个小的显示屏幕,触控输入,或是小型的键盘。因为通过它可以随时随地访问获得各种信息,这一类设备很快变得流行。移动设备和诸如手提电脑和智能手机之类的移动计算设备一起,代表了新的计算领域。
通常,用户为了同步和管理移动设备,会在个人计算机(Personal Computer,PC)端安装手机助手一类的应用程序。PC端的手机助手可以很方便在个人计算机上同步管理移动设备,例如,用户通过手机助手可以下载安装应用程序、搜索下载到所需资源——主题、壁纸、铃声、应用程序、音乐、游戏、实现手机资料管理——系统文件、短信、联系人的综合管理、备份还原手机里面的重要数据等等。
但是,一般用户的PC端中可能会安装有多个可以与移动设备相关的应用程序,这些应用程序可以是通过移动设备提供厂商自带的配套应用程序,也可以是用户自行安装的应用程序,甚至还可以是恶意应用程序经过捆绑、注入、悄悄下载等手段安装在用户PC端上的应用程序。在这种情况下,一旦用户使用如USB线的连接线将移动设备连接至个人计算机时,这些与移动设备相关的应用程序都有可能自动弹出窗口,提示用户如清理垃圾、应用程序更新、同步移动终端、下载新的应用程序的消息,甚至会进行广告推广、发布恶意捆绑链接引导用户在移动终端中安装恶意应用程序等等,使得用户界面上同时弹出多个应用程序的各类窗口,极大地干扰了用户对各类应用程序的正常使用。
现有技术中,由于此类与移动设备有关的应用程序通常在“连接移动设备时不自动弹窗”的选项处是默认不勾选的,因而用户只能逐一在应用程序中查找相应的设置选项来关闭该应用程序的自动弹窗。然而,现有的恶意应用程序和恶意应用程序甚至都不会给用户这一选项,使得在PC端的用户界面上的连接移动设备时的自动弹窗问题成为用户使用手机助手时的一类顽疾。
发明内容
针对现有技术中的缺陷,本发明提供了一种应用程序的权限控制方法及装置,可以解决用户在将外部移动设备连接至个人计算机时各类应用程序同时自动弹窗、干扰用户正常使用的问题。
第一方面,本发明提供一种应用程序的权限控制装置,包括:
获取单元,用于获取当前设备中第一应用程序集合;
确定单元,用于在检测到第二应用程序获取外部移动设备的连接状态时,将该应用程序与所述获取单元获取到的第一应用程序集合中应用程序的标识进行匹配;
处理单元,用于在所述第二应用程序不属于所述第一应用程序集合时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改;
其中,所述第一应用程序集合包括预先指定的一个以上应用程序。
可选地,该装置还包括:
屏蔽单元,用于在操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时,屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收。
可选地,所述屏蔽单元包括:
判断子单元,用于在屏蔽不属于所述第一应用程序集合的应用程序之前判断该应用程序是否与至少一个用户界面上的窗口对应;
屏蔽子单元,用于在所述判断子单元判定该应用程序没有与至少一个用户界面上的窗口对应时,屏蔽该应用程序对所述连接事件的接收;
和/或,
所述处理单元包括:
判断子单元,用于在对提供给所述第二应用程序的外部移动设备的连接状态进行修改之前,判断所述第二应用程序是否与至少一个用户界面上的窗口对应;
处理子单元,用于在所述判断子单元判定所述第二应用程序没有与至少一个用户界面上的窗口对应时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改。
可选地,所述处理单元具体用于:
在所述第二应用程序不属于所述第一应用程序集时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改,以防止所述第二应用程序执行下述操作中的任意一项或多项:
向用户显示关于该外部移动设备的提示信息;
访问该外部移动设备中的数据;
修改该外部移动设备中的数据;
向该外部移动设备添加外部数据。
可选地,所述处理单元具体用于:
在所述第二应用程序不属于所述第一应用程序集合时,获取在所述第二应用程序在调用所述系统设备的枚举指令后操作系统为所述第二应用程序分配的用于存放系统设备枚举结果的内存地址标识,并根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果。
第二方面,本发明提供一种应用程序的权限控制方法,其特征在于,包括:
获取当前设备中第一应用程序集合;
当检测到第二应用程序获取外部移动设备的连接状态时,确定所述第二应用程序是否属于所述第一应用程序集合;
若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改;
其中,所述第一应用程序集合包括预先指定的一个以上应用程序。
可选地,在所述获取当前设备中第一应用程序集合,还包括:
在操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时,屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收。
可选地,在屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收之前,还包括:
判断该应用程序是否与至少一个用户界面上的窗口对应,若否,则屏蔽该应用程序对所述连接事件的接收;
和/或,
在对提供给所述第二应用程序的外部移动设备的连接状态进行修改之前,还包括:
判断所述第二应用程序是否与至少一个用户界面上的窗口对应,若否,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改。
可选地,所述若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,包括:
若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,以防止所述第二应用程序执行下述操作中的任意一项或多项:
向用户显示关于该外部移动设备的提示信息;
访问该外部移动设备中的数据;
修改该外部移动设备中的数据;
向该外部移动设备添加外部数据。
可选地,所述若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,包括:
若所述第二应用程序不属于所述第一应用程序集合,则获取在所述第二应用程序在调用所述系统设备的枚举指令后操作系统为所述第二应用程序分配的用于存放系统设备枚举结果的内存地址标识,并根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果。
由上述技术方案可知,本发明提供的应用程序的权限控制方法及装置,可以在指定范围之外的部分应用程序获取外部移动设备的连接状态时对提供给该应用程序的外部移动设备的连接状态进行修改,从而使指定范围之外的应用程序不能检测到外部移动设备的连接状态,进而也不能触发任何关于外部移动设备的消息提示以及操作,相当于从外部屏蔽了指定范围之外的应用程序,不仅可以解决用户在将外部移动设备连接至个人计算机时各类应用程序同时自动弹窗、干扰用户正常使用的问题,同时还为用户提供了一种通过外部工具设置是否允许应用程序获知外部移动设备连接状态的手段。
附图说明
图1为本发明一实施例提供的应用程序的权限控制方法的流程示意图;
图2为本发明一实施例提供的应用程序的权限控制方法的流程示意图;
图3为本发明一实施例提供的应用程序的权限控制装置的结构示意图。
具体实施方式
下面结合附图,对发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本文所指的设备可以是个人计算机中的台式机、笔记本电脑、平板电脑,也可以是基于任意操作系统的智能手机、个人数字助理、音乐播放设备、游戏设备等。类似地,本文所指的移动设备可以是基于任意操作系统的智能手机、个人数字助理、音乐播放设备、游戏设备等。
应用程序是电脑软件的主要分类之一,是指为针对用户的某种应用目的所撰写的软件。作为应用程序的运行环境,操作系统(Operating System,OS)是管理计算机硬件与应用程序资源的计算机软件,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。操作系统的型态非常多样,不同机器安装的操作系统可从简单到复杂,可从手机的嵌入式系统到超级电脑的大型操作系统。许多操作系统制造者对它涵盖范畴的定义也不尽一致,例如有些操作系统集成了图形用户界面,而有些仅使用命令行界面,而将图形用户界面视为一种非必要的应用程序。例如,本文中所指的操作系统具体可以是Window、Linux或者Android操作系统。
作为用户使用设备时的一般情形,在操作系统为用户提供的用户界面上,用户可以同时运行与一个或多个应用程序(可以是前台应用程序也可以是后台应用程序),当有外部移动设备连接至该设备时,与移动设备有关的应用程序就会主动获取和/或被动接收外部移动设备的连接状态,并执行例如弹窗提示的操作。当多个应用程序的这一类操作同时进行时,用户界面上往往会充满了各类应用程序的弹窗提示,会极大地影响用户对设备的正常使用。
针对这一问题,本发明实施例提供了一种应用程序的权限控制方法,参见图1所示出的本发明一实施例提供的应用程序的权限控制方法的流程示意图,该方法包括:
步骤101:获取当前设备中第一应用程序集合。
在本发明实施例中,上述“第一应用程序集合”所包括的程序可以不仅包括与正在运行的应用程序对应的应用程序,还可以包括已经安装在设备中的任意一个或多个应用程序。具体地,上述第一应用程序集合包括用户从上述所有应用程序中预先指定的一个或多个应用程序,比如在本发明的一个实施例中以第一应用程序集合具体表示“允许其获取移动设备连接状态”的一类应用程序。更具体地,用户预先指定的方式可以是根据自动生成的已安装应用程序列表来进行筛选,或者设置应用程序黑名单和/或应用程序白名单等等。另外,第一应用程序集合还可以包括受系统保护的应用程序、与特定外部移动设备对应的应用程序以及为外部移动设备连接至当前设备提供服务的应用程序等等。
举例来说,获取当前设备中第一应用程序集合可以包括获取第一应用程序集合中应用程序的标识,而第一应用程序集合中应用程序的标识可以包括该应用程序的应用程序名称,对应的获取方式可以是读取已安装的所有应用程序的应用程序名称列表。
步骤102:当检测到第二应用程序获取外部移动设备的连接状态时,确定所述第二应用程序是否属于所述第一应用程序集合。
举例来说,该步骤可以具体包括:当检测到任一程序调用用于获取外部移动设备的连接状态的指令时,将该程序与所述第一应用程序集合中所有应用程序的标识进行匹配。
其中,“用于获取外部移动设备的连接状态的指令”在不同操作系统以及不同的运行环境下会有不同的具体代码表示方式。
一般来说,现有最常见的做法是利用USB设备枚举API来实现上述外部移动设备的连接状态的获取。因此,与之对应的,本发明实施例可以采用API HOOK技术钩取相应的API函数,使得任一应用程序调用该API函数时都可以触发上述“确定所述第二应用程序是否属于所述第一应用程序集合”的过程。
具体地,匹配过程可以包括:根据应用程序标识查找与该应用程序对应的应用程序名称,并在步骤101中获取的应用程序名称列表中查找该应用程序名称,若查找到了该应用程序名称则匹配成功,若遍历所有应用程序名称后都没有查找到则匹配不成功。
当然,上述步骤102也可以采用其他类似的触发条件或者采用其他的确定第二应用程序是否属于第一应用程序集合的方式,本发明对此不做限制。
步骤103:若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改。
对应于上述示例,在判定匹配成功后,则说明第二应用程序对应于上述第一应用程序集合中的至少一个应用程序,那么不需要对该应用程序进行特殊处理,直接按照获取外部移动设备的连接状态的指令以常规流程返回其所需要的外部移动设备的连接状态即可,也就是本发明实施例不对其进行额外的特殊处理。
然而,若所述第二应用程序不属于所述第一应用程序集合,那么说明该应用程序并不对应于上述第一应用程序集合中的任何一个。对于这种情形,本发明实施例可以根据其获取指令向该应用程序返回代表“没有外部移动设备连接至当前设备”的消息或者数据。例如,在即将向该应用程序返回USB设备的枚举列表时,本发明实施例可以判断列表中的USB设备是否包括外部移动设备,若包括则删除该列表中的所有与外部移动设备对应的列表项,再将其返回给该应用程序。
当然,对应于其他提供给所述第二应用程序的外部移动设备的连接状态的方式,也可以有类似的具体修改方式,本发明对此不做限制。
可见,本发明实施例可以让第一应用程序集合之外的所有应用程序获取不到外部移动设备的连接状态,并按照“没有外部移动设备连接至当前设备”的情形继续正常运行,因而本发明实施例不会影响任何应用程序对于其他功能的正常实现(例如上例中获取其他USB设备的连接状态并不会受到影响)。同时,本发明实施例可以在指定范围之外的部分应用程序获取外部移动设备的连接状态时对提供给该应用程序的外部移动设备的连接状态进行修改,从而使指定范围之外的应用程序不能检测到外部移动设备的连接状态,进而也不能触发任何关于外部移动设备的消息提示以及操作,相当于从外部屏蔽了指定范围之外的应用程序,不仅可以解决用户在将外部移动设备连接至个人计算机时各类应用程序同时自动弹窗、干扰用户正常使用的问题,同时还为用户提供了一种通过外部工具设置是否允许应用程序获知外部移动设备连接状态的手段。
对应于应用程序通过指令主动获取外部移动设备的连接状态的流程,上述技术方案已经可以实现屏蔽指定范围之外的应用程序的功能。但是,一些操作系统会在检测到外部移动设备连接至当前设备时生成一条系统级别的消息,该消息记录了该外部移动设备的连接状态。若操作系统将该消息对所有正在运行的应用程序进行了广播,或者对预先订阅了该消息的应用程序进行了发送,那么指定范围之外的应用程序仍会检测到外部移动设备的连接,使得上述技术方案失效。
针对上述应用程序被动接收外部移动设备的连接状态的流程,可以在上述技术方案的基础上添加以下特征:在上述步骤101:获取当前设备中第一应用程序集合,还包括如图2所示出的本发明一实施例提供的应用程序的权限控制方法的流程示意图中所示出的:
步骤104:在操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时,屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收。
其中,上述外部移动设备的连接事件在不同的操作系统以及编译环境下可以有不同的代码表达形式。例如,在C/C++编译环境下,上述事件可以对应于ON_WM_DEVICECHANGE事件;视操作系统设置的不同,该事件可能会由操作系统直接广播给所有正在运行的应用程序,或者,该事件也可能会发送给预先订阅了这一事件的一个或多个应用程序,当然这两种情况都是包括在上述“当操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时”这一情形之中的。
面对这一情形,本发明实施例会采取相应手段“屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收”。对于上述广播的情形,可以屏蔽不与任一上述第一应用程序集合中的应用程序对应的应用程序对该事件的接收,也可以通过改变广播的方式以调整接收这一事件的对象应用程序。
其中,屏蔽的具体实现方式同样可以通过对相应API函数的钩取(HOOK)来实现。
当然,上述步骤104与步骤102至步骤103不存在必然的先后顺序关系,因而在方法的流程上可以不分先后。
进一步地,为避免对用户正在使用的应用程序造成影响,可以在屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收之前,使上述方法还包括图中未示出的步骤:判断该应用程序是否与至少一个用户界面上的窗口对应,若否,则屏蔽该应用程序对上述连接事件的接收。
也就是说,使与至少一个用户界面的窗口对应的应用程序成为上述屏蔽操作的例外应用程序,从而可以避免对用户正在操作的应用程序进行屏蔽,保障该应用程序的正常运行。
相应地,上述例外应用程序的判定也可以应用到上述步骤102至步骤103的流程中,即可在对提供给所述第二应用程序的外部移动设备的连接状态进行修改之前,使上述方法还包括图中未示出的步骤:判断所述第二应用程序是否与至少一个用户界面上的窗口对应,若否,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改。类似地,该步骤可以使得用户在任一应用程序中发起的外部移动设备的连接信息获取请求都可以得到正常的响应。
举例来说,上述“至少一个用户界面上的窗口”可以具体包括当前正在与用户进行交互的前台窗口(Foreground Window)或者活动窗口(Active Window),以使上述步骤103或步骤104不对用户直接发出的指令生效。当然,为了进一步缩小意外情况发生的可能性,还可以添加一系列判断条件来具体确定不对其生效的指令是由用户直接发出的;或者,为了尽可能地避免对用户正在使用的应用程序造成影响,也可以使上述“至少一个用户界面上的窗口”还包括满足预设条件的非前台窗口或者非活动窗口。窗口的选择方式可以根据具体的使用情景来进行设定,本发明对此不做限制。
对于上述“对提供给所述第二应用程序的外部移动设备的连接状态进行修改”,可以有特定的目标指向,比如,可使上述步骤103:若该应用程序不能与任一上述第一应用程序集合中应用程序的标识匹配成功,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,具体包括图中未示出的步骤:
若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,以防止所述第二应用程序执行下述操作中的任意一项或多项:
向用户显示关于该外部移动设备的提示信息;
访问该外部移动设备中的数据;
修改该外部移动设备中的数据;
向该外部移动设备添加外部数据。
由此,未被包括在第一应用程序集合中的应用程序都不能进行如“对用户发送弹窗提醒”、“自动弹出特定页面”、“修改外部移动设备的系统设置”、“自动向外部移动设备特定应用程序”等操作,充分保障了用户外部移动设备的安全。当然,为避免误拦截正常工作的应用程序,还可以在进行修改时给用户以相应提示及选项,或是在自动判别是否属于应当属于第一应用集合的应用程序,本发明对此不做限制。
更具体地,在上述任意一个技术方案中,上述用于获取外部移动设备的连接状态的指令都可以包括系统设备的枚举指令,例如上述USB设备枚举API函数。
相应地,上述步骤103:若该应用程序不能与任一上述第一应用程序集合中应用程序的标识匹配成功,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,可以具体包括图中未示出的步骤:
若所述第二应用程序不属于所述第一应用程序集合,则获取在所述第二应用程序在调用所述系统设备的枚举指令后操作系统为所述第二应用程序分配的用于存放系统设备枚举结果的内存地址标识,并根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果。
对于正常的系统设备的枚举指令执行流程,系统会为该应用程序分配的用于存放系统设备枚举结果的内存空间,以使该应用程序可以通过读取这一内存空间中的写入的存放系统设备枚举结果来获得外部移动设备的连接状态。
对此,本发明实施例中“对提供给所述第二应用程序的外部移动设备的连接状态进行修改”的做法就可以具体为:根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果,从而使得指定范围之外的应用程序不能获取到外部移动设备的连接状态。
可见,上述一种应用程序的权限控制方法均可以在指定范围之外的部分应用程序调用用于获取外部移动设备的连接状态的指令时向该应用程序返回“没有外部移动设备连接至当前设备”的获取结果,从而使指定范围之外的应用程序不能检测到外部移动设备的连接状态,进而也不能触发任何关于外部移动设备的消息提示以及操作,相当于从外部屏蔽了指定范围之外的应用程序,不仅可以解决用户在将外部移动设备连接至个人计算机时各类应用程序同时自动弹窗、干扰用户正常使用的问题,同时还为用户提供了一种通过外部工具设置是否允许应用程序获知外部移动设备连接状态的手段。
图3示出了本发明一实施例提供的应用程序的权限控制装置的结构示意图,如图3所示,上述应用程序的权限控制装置包括获取单元31、确定单元32和处理单元33;
其中,获取单元31用于获取当前设备中第一应用程序集合;
确定单元32用于在检测到第二应用程序获取外部移动设备的连接状态时,将该应用程序与上述获取单元31获取到的第一应用程序集合中应用程序的标识进行匹配;
处理单元33用于在该应用程序不能与任一上述第一应用程序集合中应用程序的标识匹配成功时对提供给所述第二应用程序的外部移动设备的连接状态进行修改;
其中,上述第一应用程序集合包括用户预先指定的一个或多个应用程序。
在本发明的一个实施例中,该装置还可以包括图中未示出的屏蔽单元34,屏蔽单元34用于在操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时,屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收。
更具体地,上述屏蔽单元34可以具体包括图中未示出的:
判断子单元,用于在屏蔽任一应用程序对上述连接事件的接收之前判断该应用程序是否与至少一个用户界面上的窗口对应;
屏蔽子单元,用于在上述判断子单元判定该应用程序没有与至少一个用户界面上的窗口对应时屏蔽该应用程序对上述连接事件的接收。
和/或,
上述处理单元33可以具体包括图中未示出的:
判断子单元,用于在对提供给所述第二应用程序的外部移动设备的连接状态进行修改之前,判断该应用程序是否与至少一个用户界面上的窗口对应;
处理子单元,用于在所述判断子单元判定所述第二应用程序没有与至少一个用户界面上的窗口对应时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改。
上述结构可以保障用户正在操作的应用程序的正常运行。当然,上述处理单元33和屏蔽单元34中的判断子单元与处理子单元由于功能类似,因而可以用相同结构实现。
另一方面,上述处理单元33可以具体用于:
进一步地,在上述用于获取外部移动设备的连接状态的指令包括系统设备的枚举指令时,上述处理单元33可以具体用于:在所述第二应用程序不属于所述第一应用程序集时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改,以防止所述第二应用程序执行下述操作中的任意一项或多项:
向用户显示关于该外部移动设备的提示信息;
访问该外部移动设备中的数据;
修改该外部移动设备中的数据;
向该外部移动设备添加外部数据。
在所述第二应用程序不属于所述第一应用程序集合时,获取在所述第二应用程序在调用所述系统设备的枚举指令后操作系统为所述第二应用程序分配的用于存放系统设备枚举结果的内存地址标识,并根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果。
本实施例的装置可执行前述任意一种应用程序的权限控制方法的流程,可以在指定范围之外的部分应用程序获取外部移动设备的连接状态时对提供给该应用程序的外部移动设备的连接状态进行修改,从而使指定范围之外的应用程序不能检测到外部移动设备的连接状态,进而也不能触发任何关于外部移动设备的消息提示以及操作,相当于从外部屏蔽了指定范围之外的应用程序,不仅可以解决用户在将外部移动设备连接至个人计算机时各类应用程序同时自动弹窗、干扰用户正常使用的问题,同时还为用户提供了一种通过外部工具设置是否允许应用程序获知外部移动设备连接状态的手段。
本发明的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在于该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是互相排斥之处,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的应用程序模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种浏览器终端的设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置应用程序(例如,计算机应用程序和计算机应用程序产品)。这样的实现本发明的应用程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (8)
1.一种应用程序的权限控制装置,其特征在于,包括:
获取单元,用于获取当前设备中第一应用程序集合;
确定单元,用于在检测到第二应用程序获取外部移动设备的连接状态时,将该应用程序与所述获取单元获取到的第一应用程序集合中应用程序的标识进行匹配;
处理单元,用于在所述第二应用程序不属于所述第一应用程序集合时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改;
其中,所述第一应用程序集合包括预先指定的一个以上应用程序;
并且,所述处理单元具体用于:
在所述第二应用程序不属于所述第一应用程序集合时,获取在所述第二应用程序在调用系统设备的枚举指令后操作系统为所述第二应用程序分配的用于存放系统设备枚举结果的内存地址标识,并根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果。
2.根据权利要求1所述的装置,其特征在于,该装置还包括:
屏蔽单元,用于在操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时,屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收。
3.根据权利要求2所述的装置,其特征在于,所述屏蔽单元包括:
判断子单元,用于在屏蔽不属于所述第一应用程序集合的应用程序之前判断该应用程序是否与至少一个用户界面上的窗口对应;
屏蔽子单元,用于在所述判断子单元判定该应用程序没有与至少一个用户界面上的窗口对应时,屏蔽该应用程序对所述连接事件的接收;
和/或,
所述处理单元包括:
判断子单元,用于在对提供给所述第二应用程序的外部移动设备的连接状态进行修改之前,判断所述第二应用程序是否与至少一个用户界面上的窗口对应;
处理子单元,用于在所述判断子单元判定所述第二应用程序没有与至少一个用户界面上的窗口对应时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改。
4.根据权利要求1至3中任意一项所述的装置,其特征在于,所述处理单元具体用于:
在所述第二应用程序不属于所述第一应用程序集时,对提供给所述第二应用程序的外部移动设备的连接状态进行修改,以防止所述第二应用程序执行下述操作中的任意一项或多项:
向用户显示关于该外部移动设备的提示信息;
访问该外部移动设备中的数据;
修改该外部移动设备中的数据;
向该外部移动设备添加外部数据。
5.一种应用程序的权限控制方法,其特征在于,包括:
获取当前设备中第一应用程序集合;
当检测到第二应用程序获取外部移动设备的连接状态时,确定所述第二应用程序是否属于所述第一应用程序集合;
若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改;
其中,所述第一应用程序集合包括预先指定的一个以上应用程序;
并且,所述若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,包括:
若所述第二应用程序不属于所述第一应用程序集合,则获取在所述第二应用程序在调用系统设备的枚举指令后操作系统为所述第二应用程序分配的用于存放系统设备枚举结果的内存地址标识,并根据该内存地址标识写入去除了外部移动设备后的系统设备枚举结果。
6.根据权利要求5所述的方法,其特征在于,在所述获取当前设备中第一应用程序集合,还包括:
在操作系统向正在运行的所有应用程序广播外部移动设备的连接事件时,屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收。
7.根据权利要求6所述的方法,其特征在于,在屏蔽不属于所述第一应用程序集合的应用程序对所述连接事件的接收之前,还包括:
判断该应用程序是否与至少一个用户界面上的窗口对应,若否,则屏蔽该应用程序对所述连接事件的接收;
和/或,
在对提供给所述第二应用程序的外部移动设备的连接状态进行修改之前,还包括:
判断所述第二应用程序是否与至少一个用户界面上的窗口对应,若否,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改。
8.根据权利要求5至7中任意一项所述的方法,其特征在于,所述若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,包括:
若所述第二应用程序不属于所述第一应用程序集合,则对提供给所述第二应用程序的外部移动设备的连接状态进行修改,以防止所述第二应用程序执行下述操作中的任意一项或多项:
向用户显示关于该外部移动设备的提示信息;
访问该外部移动设备中的数据;
修改该外部移动设备中的数据;
向该外部移动设备添加外部数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410836768.2A CN105809027B (zh) | 2014-12-29 | 2014-12-29 | 应用程序的权限控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410836768.2A CN105809027B (zh) | 2014-12-29 | 2014-12-29 | 应用程序的权限控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105809027A CN105809027A (zh) | 2016-07-27 |
CN105809027B true CN105809027B (zh) | 2020-03-31 |
Family
ID=56980721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410836768.2A Active CN105809027B (zh) | 2014-12-29 | 2014-12-29 | 应用程序的权限控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105809027B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108108218A (zh) * | 2017-12-29 | 2018-06-01 | 北京奇虎科技有限公司 | 一种应用程序的弹窗控制方法和装置 |
CN111327594A (zh) * | 2020-01-20 | 2020-06-23 | Oppo广东移动通信有限公司 | 网页处理方法、装置、电子设备及存储介质 |
CN114547631B (zh) * | 2020-11-18 | 2023-03-28 | 成都鼎桥通信技术有限公司 | 终端控制方法、装置及终端 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102945341A (zh) * | 2012-10-23 | 2013-02-27 | 北京奇虎科技有限公司 | 一种拦截弹窗的方法和装置 |
CN104133894A (zh) * | 2014-07-31 | 2014-11-05 | 珠海市君天电子科技有限公司 | 一种拦截广告窗口的方法及装置 |
-
2014
- 2014-12-29 CN CN201410836768.2A patent/CN105809027B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102945341A (zh) * | 2012-10-23 | 2013-02-27 | 北京奇虎科技有限公司 | 一种拦截弹窗的方法和装置 |
CN104133894A (zh) * | 2014-07-31 | 2014-11-05 | 珠海市君天电子科技有限公司 | 一种拦截广告窗口的方法及装置 |
Non-Patent Citations (1)
Title |
---|
itunes怎么关闭自动打开 itunes自动弹出关闭方法;lff;《www.pc6.com/edu/67707.html》;20140811;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN105809027A (zh) | 2016-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102194055B1 (ko) | 안드로이드 기반의 팝업 프롬프트 방법 및 디바이스 | |
EP3032418A1 (en) | Permission control method and device | |
US10176327B2 (en) | Method and device for preventing application in an operating system from being uninstalled | |
US11269663B2 (en) | Method and apparatus for adapting handle device to third-party application, and storage medium | |
EP3502944B1 (en) | Detecting script-based malware cross reference to related applications | |
US10019598B2 (en) | Dynamic service discovery | |
EP2843578A1 (en) | Method, firewall, terminal and readable storage medium for implementing security protection | |
CN107357732B (zh) | 用户终端及软件开发工具包接入状态检测装置与方法 | |
CN111782416A (zh) | 数据上报方法、装置、系统、终端及计算机可读存储介质 | |
CN104156235A (zh) | 一种浏览器插件和/或扩展的更新方法和装置 | |
CN110442426B (zh) | 一种密码重置方法、装置及存储介质 | |
CN108090345B (zh) | linux系统外部命令执行方法及装置 | |
EP3113059A1 (en) | System and method of preventing installation and execution of undesirable programs | |
CN106406944A (zh) | 一种禁止应用自启动的控制方法及系统 | |
CN106487793A (zh) | 应用安装方法及装置 | |
CN105809027B (zh) | 应用程序的权限控制方法及装置 | |
CN108563472B (zh) | 基于多开应用的服务插件加载方法及装置 | |
CN112231198B (zh) | 一种恶意进程调试方法、装置、电子设备及介质 | |
CN102750493B (zh) | 访问权限控制方法、装置及系统 | |
CN112199151B (zh) | 一种应用程序的运行方法及装置 | |
CN109145598B (zh) | 脚本文件的病毒检测方法、装置、终端及存储介质 | |
WO2024088053A1 (zh) | 代码调试方法、电子设备及计算机可读存储介质 | |
CN109522174B (zh) | 控制adb使能的方法、装置、终端及存储介质 | |
CN114547632B (zh) | 信息保护方法、装置、设备及存储介质 | |
CN113282363A (zh) | 一种优化混合app的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220325 Address after: 100020 1773, 15 / F, 17 / F, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing Patentee after: Sanliu0 Digital Security Technology Group Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co., Ltd |