CN106709285B - 应用锁界面的显示方法及装置 - Google Patents

应用锁界面的显示方法及装置 Download PDF

Info

Publication number
CN106709285B
CN106709285B CN201611048766.2A CN201611048766A CN106709285B CN 106709285 B CN106709285 B CN 106709285B CN 201611048766 A CN201611048766 A CN 201611048766A CN 106709285 B CN106709285 B CN 106709285B
Authority
CN
China
Prior art keywords
application
function
application program
uninstalling
detection function
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
CN201611048766.2A
Other languages
English (en)
Other versions
CN106709285A (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.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software 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 Beijing Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN201611048766.2A priority Critical patent/CN106709285B/zh
Publication of CN106709285A publication Critical patent/CN106709285A/zh
Application granted granted Critical
Publication of CN106709285B publication Critical patent/CN106709285B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本公开提供了一种应用锁界面显示方法及装置,涉及终端领域,所述方法包括:接收应用程序对应的卸载指令,卸载指令携带有应用程序的标识;根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数;通过卸载应用函数调用预先配置的检测函数,检测函数用于检测应用程序的应用锁状态是否为开启状态;在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。本公开通过检测函数,使得不论以何种卸载方式卸载已经被加锁的应用程序时,终端都会显示与应用程序对应的应用锁界面,让用户确认是否继续卸载该应用程序,从而避免了应用程序被误卸载或非本人授权卸载的情况,增加了终端的安全性。

Description

应用锁界面的显示方法及装置
技术领域
本公开涉及终端领域,特别涉及一种应用锁界面的显示方法及装置。
背景技术
应用锁程序是一种对终端中的应用程序进行加锁的应用程序。当终端中存在多个应用程序时,为了避免由于误卸载将其中一个应用程序卸载的情况,用户可以设置对该应用程序进行加锁。
发明内容
本公开实施例提供了一种应用锁界面的显示方法及装置。本公开实施例提供的技术方案如下:
根据本公开实施例的第一方面,提供了一种应用锁界面显示方法,该方法包括:
接收应用程序对应的卸载指令,卸载指令携带有应用程序的标识;
根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数;
通过卸载应用函数调用预先配置的检测函数,检测函数用于检测应用程序的应用锁状态是否为开启状态;
在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。
在一个可选的实施例中,通过卸载应用函数调用预先配置的检测函数,包括:
通过卸载应用函数,从卸载指令中获取应用程序的标识;
根据应用程序的标识调用检测函数,检测函数用于检测与标识对应的应用锁状态是否为开启状态。
在一个可选的实施例中,操作***是安卓操作***;
卸载应用函数是预设有检测函数的***安装包管理服务中的delete Package X函数;
检测函数是安全管理服务中的get Application Access Control Enabled函数。
在一个可选的实施例中,应用锁状态包括开启状态或者关闭状态;
根据应用程序的标识调用检测函数,检测函数用于检测与标识对应的应用锁状态是否为开启状态,包括:
当根据应用程序的标识调用的检测函数的返回值为真时,则确定应用程序的应用锁状态为开启状态;
当根据应用程序的标识调用的检测函数的返回值为假时,则确定应用程序的应用锁状态为关闭状态。
在一个可选的实施例中,该方法还包括:
在应用锁界面中接收输入密码;
判断输入密码是否为与应用程序对应的预设密码;
当输入密码是与应用程序对应的预设密码时,取消应用锁界面的显示,并通过卸载应用函数完成应用程序的卸载;
当输入密码不是与应用程序对应的预设密码时,退出卸载应用函数。
根据本公开实施例的第二方面,提供了一种应用锁界面显示装置,该装置包括:
第一接收模块,被配置为接收应用程序对应的卸载指令,卸载指令携带有应用程序的标识;
第一调用模块,被配置为根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数;
第二调用模块,被配置为通过卸载应用函数调用预先配置的检测函数,检测函数用于检测应用程序的应用锁状态是否为开启状态;
显示模块,被配置为在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。
在一个可选的实施例中,第二调用模块,包括:
获取子模块和调用子模块;
获取子模块,被配置为通过卸载应用函数,从卸载指令中获取应用程序的标识;
调用子模块,被配置为根据应用程序的标识调用检测函数,检测函数用于检测与标识对应的应用锁状态是否为开启状态。
在一个可选的实施例中,操作***是安卓操作***;
卸载应用函数是预设有检测函数的***安装包管理服务中的delete Package X函数;
检测函数是安全管理服务中的get Application Access Control Enabled函数。
在一个可选的实施例中,应用锁状态包括开启状态或者关闭状态;
调用子模块,包括:
第一确定子模块或第二确定子模块;
第一确定子模块,被配置为当根据应用程序的标识调用的检测函数的返回值为真时,则确定应用程序的应用锁状态为开启状态;
第二确定子模块,被配置为当根据应用程序的标识调用的检测函数的返回值为假时,则确定应用程序的应用锁状态为关闭状态。
在一个可选的实施例中,该装置还包括:
第二接收模块,被配置为在应用锁界面中接收输入密码;
判断模块,被配置为判断输入密码是否为与应用程序对应的预设密码;
卸载模块,被配置为当输入密码是与应用程序对应的预设密码时,取消应用锁界面的显示,并通过卸载应用函数完成应用程序的卸载;
退出模块,被配置为当输入密码不是与应用程序对应的预设密码时,退出卸载应用函数。
根据本公开实施例的第三方面,提供了一种应用锁界面显示装置,该装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,处理器被配置为:
接收应用程序对应的卸载指令,卸载指令携带有应用程序的标识;
根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数;
通过卸载应用函数调用预先配置的检测函数,检测函数用于检测应用程序的应用锁状态是否为开启状态;
在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。
本公开实施例提供的技术方案可以包括以下有益效果:
由于所有的卸载方式都会调用卸载应用函数,通过在卸载过程中由卸载应用函数调用预先配置的检测函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态;在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面;使得不论以何种卸载方式卸载已经被加锁的应用程序时,终端都会显示与应用程序对应的应用锁界面,让用户确认是否继续卸载该应用程序,从而避免了应用程序被误卸载或非本人授权卸载的情况,增加了终端的安全性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并于说明书一起用于解释本公开的原理。
图1是相关技术中应用锁界面显示***的结构示意图;
图2是根据一示意性实施例示出的应用锁界面显示***的结构示意图;
图3是根据一示意性实施例示出的应用锁界面显示方法的流程图;
图4是根据另一示意性实施例示出的应用锁界面显示方法的流程图;
图5是根据一示例性实施例示出的一种应用锁界面显示装置的框图;
图6是根据一示意性实施例示出的终端的框图。
具体实施方式
这里将对示意性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示意性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
目前,应用程序的常见卸载方式包括如下两种:一是通过第三方应用卸载,二是通过安卓调试桥(英文:Android Debug Bridge,ADB)工具卸载;第三方应用是除了用户和操作***之外的第三方制作的具有软件管理能力的应用。
当终端中存在多个应用程序时,为了避免由于误卸载将其中一个应用程序卸载的情况,用户可以设置对该应用程序进行加锁。在加锁后,该应用程序的应用锁状态为开启状态。如图1所示,相关技术中的终端100包括:硬件层、操作***层和应用层,以第三方应用卸载应用程序为例,应用层包括具有软件管理能力的第三方应用,操作***层包括:软件包安装程序120(英文:Package Installer)、安全管理服务140(英文:Security ManagerService)、应用锁程序160和***安装包管理服务180(英文:Package Manager Service)。当第三方应用接收到用户的卸载指令时,第三方应用会根据卸载指令调用软件包安装程序120,在运行软件包安装程序120时,软件包安装程序120调用安全管理服务140的getApplication Access Control Enabled函数,该函数根据卸载指令中携带的应用程序的标识即包名(英文:Package Name),查询与该标识对应的应用程序的应用锁状态,若该应用锁状态为开启状态,则调用应用锁程序160,并显示应用锁界面。用户在显示的应用锁界面中输入密码,如果输入的密码正确,则认为本次卸载指令有效,由软件包安装程序120调用***安装包管理服务180的卸载应用函数(英文:delete PackageX),通过卸载应用函数卸载该应用程序;如果用户输入的密码错误,则认为本次卸载指令无效,退出软件包安装程序120,不卸载该应用程序。
但是,在利用ADB工具卸载应用程序的过程中,当ADB工具接收到卸载指令时,ADB工具会直接调用***安装包管理服务180的卸载应用函数进行卸载,不需要调用软件包安装程序,从而不能触发调用应用锁程序,对于已被加锁的应用程序而言,也就不能显示应用锁界面,该应用程序仍然会被直接卸载,无法避免该应用程序被误卸载或非本人授权卸载的情况。
本公开实施例提供了一种应用锁界面显示方法及装置,以解决上述相关技术中存在的问题。本公开实施例提供的技术方案中,由于所有的卸载方式都会调用***安装包管理服务的卸载应用函数,所以通过修改卸载应用函数,即在卸载应用函数的开始位置预设一个检测函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态,当检测函数确定出该应用锁状态为开启状态时,显示与该应用程序对应的应用锁界面,从而避免了应用程序被误卸载或非本人授权卸载的情况,增加了终端的安全性。
在对本公开实施例进行解释说明之前,先对本公开实施例的应用场景进行说明。图2示出了一示意性实施例所提供的终端200的结构示意图。该终端200包括:硬件层、操作***层和应用层,应用层包括各种应用程序,比如:微博程序、支付程序、具有软件管理能力(下载、安装、更新及卸载)的第三方应用等等;操作***层包括:***安装包管理服务220、安全管理服务240和应用锁程序260。
终端200是由普通用户所使用的终端。终端200可以是智能手机、平板电脑、便携式电脑、台式电脑等。可选地,终端200中安装有各种应用程序,当某一个应用程序被加锁后,该应用程序具有由应用锁程序260提供的应用锁界面。
***安装包管理服务220是用于管理操作***中各种安装包的服务。***安装包管理服务220的卸载应用函数是操作***中用于卸载应用程序的函数。该卸载应用函数被触发运行时,会调用安全管理服务240的检测函数。
安全管理服务240的检测函数会检测该应用程序的应用锁状态是否为开启状态,若该应用锁状态为开启状态,则调用应用锁程序260,应用锁程序260会拦截该应用程序的卸载指令,并生成和显示应用锁界面,用户需要在应用锁界面输入正确的密码后,才能继续卸载该应用程序。在调用应用锁程序260之前,需要用户预先设置密码。可选地,该密码是数字密码、图形密码、人脸图像密码或者指纹密码。当用户设置密码后,用户在已经安装的各个应用程序中,选择需要被加锁的应用程序。
需要说明的是,当应用程序是通过第三方应用进行卸载时,第三方应用会先调用软件包安装程序280,然后由该软件包安装程序280调用***安装包管理服务220的卸载应用函数。
为了避免了应用程序被误卸载或非本人授权卸载的情况,本公开实施例提供了一种应用锁界面显示方法。应用锁界面的显示方法详见下述各个实施例。
请参考图3,其示出了一示意性实施例所提供的应用锁界面显示方法的流程图。本实施例以该应用锁界面显示方法应用于图2所示的终端200中举例说明。该应用锁界面显示方法包括:
在步骤301中,接收应用程序对应的卸载指令,该卸载指令携带有应用程序的标识。
可选地,当用户卸载某个应用程序时,向终端中的第三方应用、ADB工具或者***应用输入卸载指令;相应的,该终端中的第三方应用、ADB工具或者***应用接收到该应用程序对应的卸载指令。
示意性的,该卸载指令的输入方式可以包括:长按该应用程序的图标,并拖入到删除箱中;或者进入***设置→应用程序管理界面,然后选中该应用程序进行删除操作;或者语音输入指示卸载该应用程序的信息等等,本公开实施例对此不加以限定。
可选地,在一些可能的场景中,恶意应用程序(比如具有root权限的竞品应用程序)会在后台向终端发送用于卸载某一个应用程序的卸载指令,终端会在后台接收到卸载该应用程序的卸载指令。
在步骤302中,根据卸载指令调用卸载应用函数,该卸载应用函数是操作***中用于卸载应用程序的函数。
可选地,第三方应用、ADB工具或者***应用根据卸载指令调用***安装包管理服务的卸载应用函数。该卸载应用函数中预先设置有检测函数,或者说,设置有用于调用该检测函数的代码。
可选地,当接收应用程序对应的卸载指令的主体是第三方应用时,第三方应用根据卸载指令调用软件包安装程序,然后由该软件包安装程序调用***安装包管理服务中的卸载应用函数。
在步骤303中,通过卸载应用函数调用预先配置的检测函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态。
可选地,检测函数是安全管理服务中的函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态。
可选地,检测函数是在卸载应用函数中预先设置的函数,或者说,该检测函数是在卸载应用函数中新增加的函数。在卸载应用函数被运行时,会触发调用该检测函数。
在步骤304中,在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。
可选地,在检测函数确定出应用锁状态为开启状态时,说明该应用程序是被加锁的应用程序,应用锁程序显示与应用程序对应的应用锁界面。
可选地,该应用锁界面是应用锁程序提供的界面。
综上所述,由于所有的卸载方式都会调用卸载应用函数,本公开实施例通过在卸载过程中由卸载应用函数调用预先配置的检测函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态;在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面;使得不论以何种卸载方式卸载已经被加锁的应用程序时,终端都会显示与应用程序对应的应用锁界面,让用户确认是否继续卸载该应用程序,从而避免了应用程序被误卸载或非本人授权卸载的情况,增加了终端的安全性。
请参考图4,其示出了另一示意性实施例所提供的应用锁界面显示方法的流程图。下面,以操作***是安卓操作***,通过ADB工具进行卸载为例进行说明。该应用锁界面显示方法包括:
在步骤401中,接收应用程序对应的卸载指令,卸载指令携带有应用程序的标识。
可选地,ADB工具接收应用程序对应的卸载指令,该卸载指令携带有应用程序的标识。
在步骤402中,根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数。
可选地,ADB工具根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数。
可选地,卸载应用函数是预设有检测函数的***安装包管理服务中的deletePackage X函数,检测函数是安全管理服务中的get Application Access ControlEnabled函数。
在步骤403中,通过卸载应用函数,从卸载指令中获取应用程序的标识。
可选地,通过卸载应用函数,***安装包管理服务从卸载指令中获取应用程序的标识。
在步骤404中,根据应用程序的标识调用检测函数,检测函数用于检测与标识对应的应用锁状态是否为开启状态。
可选地,根据应用程序的标识,***安装包管理服务调用安全管理服务的检测函数,检测函数用于检测与标识对应的应用锁状态是否为开启状态。
可选地,安全管理服务中存储有应用程序的标识和应用程序对应的应用锁状态之间的对应关系;示意性的,如表一所示,安全管理服务中存储有应用程序A的包名a、应用程序B的包名b和应用程序C的包名c,与包名a对应的应用锁状态为开启状态、与包名b对应的应用锁状态为开启状态和与包名c对应的应用锁状态为关闭状态。
表一
包名 应用锁状态
a 开启
b 开启
c 关闭
可选地,当调用的检测函数的返回值为真时,则确定应用程序的应用锁状态为开启状态,继续执行步骤405“显示与应用程序对应的应用锁界面”;示意性的,返回值中的“真”即用“true”表示。
可选地,当调用的检测函数的返回值为假时,则确定应用程序的应用锁状态为关闭状态,直接执行步骤408“取消应用锁界面的显示,并通过卸载应用函数完成应用程序的卸载”,即直接卸载该应用程序;示意性的,返回值中的“假”即用“false”表示。
比如,卸载指令中携带有聊天程序A的包名a,***安装包管理服务中的卸载应用函数从卸载指令中获取聊天程序A的包名a;根据包名a,***安装包管理服务调用安全管理服务中的检测函数,检测函数在存储的应用程序的标识和应用程序的应用锁状态之间的对应关系中查询到聊天程序A对应的应用锁状态为开启状态,返回值为“true”。
在步骤405中,在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。
可选地,当检测函数的返回值为真,即确定出应用锁状态为开启状态时,应用锁程序显示与应用程序对应的应用锁界面。
在步骤406中,在应用锁界面中接收输入密码。
可选地,当用户在应用锁界面中输入了输入密码时,即向应用锁程序发送该输入密码;对应的,应用锁程序在应用锁界面中接收该输入密码。
可选地,输入密码可以是数字密码、图形密码、人脸图像密码或者指纹密码。
在步骤407中,判断输入密码是否为与应用程序对应的预设密码。
可选地,应用锁程序判断输入密码是否为与应用程序对应的预设密码;示意性的,预设密码是用户在将该应用程序进行加锁时设置的密码。
在步骤408中,当输入密码是与应用程序对应的预设密码时,取消应用锁界面的显示,并通过卸载应用函数完成应用程序的卸载。
可选地,当用户在应用锁界面输入了正确的密码,即输入密码是与应用程序对应的预设密码时,应用锁程序取消应用锁界面的显示。
可选地,在应用锁程序取消应用锁界面的显示后,继续执行卸载应用函数,完成该应用程序的卸载。
在步骤409中,当输入密码不是与应用程序对应的预设密码时,退出卸载应用函数。
可选地,当用户在应用解锁界面输入了错误的密码,即输入密码不是与应用程序对应的预设密码时,终端退出卸载应用函数,从而不对该应用程序进行卸载。
可选地,当输入密码不是与应用程序对应的预设密码时,终端中的应用锁程序生成并显示错误提示。该错误提示用于指示用户输入的输入密码是错误的,需要重新输入。
需要说明的是,通过第三方应用或***应用卸载应用程序时也可以执行上述步骤。
综上所述,由于所有的卸载方式都会调用卸载应用函数,本公开实施例通过在卸载过程中由卸载应用函数调用预先配置的检测函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态;在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面;使得不论以何种卸载方式卸载已经被加锁的应用程序时,终端都会显示与应用程序对应的应用锁界面,让用户确认是否继续卸载该应用程序,从而避免了应用程序被误卸载或非本人授权卸载的情况,增加了终端的安全性。
在一个可能的实现方式中,卸载应用函数中的部分代码如下:
//Add
SecurityManagerServiceservice=(com.miui.server.SecurityManagerService)ServiceManager.getService(Context.SECURITY_SERVICE);
booleanenabled=service.getApplicationAccessControlEnabled(packageName);//用于检测应用程序的应用锁状态是否为开启状态;
if(enabled){
Intentintent=newIntent(MiuiIntent.ACTION_CHECK_ACCESS_CONTROL);
UnInstallObserver observer=new UnInstallObserver();
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME,packageName);
intent.putExtra(Intent.EXTRA_OBSERVER,packageName);
mContext.startActivity(intent);//用于显示应用锁界面
observer.wait();
if(!observer.getResult())//用于判断输入密码是否为与应用程序对应的预设密码;
{
return DELETE_FAILED_ABORTED;//用于退出卸载应用函数
}
}
//END
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图5示出了一示意性实施例提供的应用锁界面显示装置的结构示意图。该应用锁界面显示装置可以通过专用硬件电路,或者,软硬件的结合实现成为图2中的终端的全部或一部分,该应用锁界面显示装置包括:
第一接收模块510,被配置为接收应用程序对应的卸载指令,卸载指令携带有应用程序的标识;
第一调用模块520,被配置为根据卸载指令调用卸载应用函数,卸载应用函数是操作***中用于卸载应用程序的函数;
第二调用模块530,被配置为通过卸载应用函数调用预先配置的检测函数,检测函数用于检测应用程序的应用锁状态是否为开启状态;
显示模块540,被配置为在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面。
在一个可选的实施例中,第二调用模块530,包括:
获取子模块531和调用子模块532;
获取子模块531,被配置为通过卸载应用函数,从卸载指令中获取应用程序的标识;
调用子模块532,被配置为根据应用程序的标识调用检测函数,检测函数用于检测与标识对应的应用锁状态是否为开启状态。
在一个可选的实施例中,操作***是安卓操作***;
卸载应用函数是预设有检测函数的***安装包管理服务中的delete Package X函数;
检测函数是安全管理服务中的get Application Access Control Enabled函数。
在一个可选的实施例中,应用锁状态包括开启状态或者关闭状态;
调用子模块532,包括:
第一确定子模块532a或第二确定子模块532b;
第一确定子模块532a,被配置为当根据应用程序的标识调用的检测函数的返回值为真时,则确定应用程序的应用锁状态为开启状态;
第二确定子模块532b,被配置为当根据应用程序的标识调用的检测函数的返回值为假时,则确定应用程序的应用锁状态为关闭状态。
在一个可选的实施例中,该装置还包括:
第二接收模块550,被配置为在应用锁界面中接收输入密码;
判断模块560,被配置为判断输入密码是否为与应用程序对应的预设密码;
卸载模块570,被配置为当输入密码是与应用程序对应的预设密码时,取消应用锁界面的显示,并通过卸载应用函数完成应用程序的卸载;
退出模块580,被配置为当输入密码不是与应用程序对应的预设密码时,退出卸载应用函数。
综上所述,由于所有的卸载方式都会调用卸载应用函数,本公开实施例通过在卸载过程中由卸载应用函数调用预先配置的检测函数,该检测函数用于检测应用程序的应用锁状态是否为开启状态;在检测函数确定出应用锁状态为开启状态时,显示与应用程序对应的应用锁界面;使得不论以何种卸载方式卸载已经被加锁的应用程序时,终端都会显示与应用程序对应的应用锁界面,让用户确认是否继续卸载该应用程序,从而避免了应用程序被误卸载或非本人授权卸载的情况,增加了终端的安全性。
关于上述实施例中的装置,其中各个模块执行操作的方式已经在有关该方法的实施例中进行了描述,此处将不做阐述说明。
图6是根据一示意性实施例示出的终端的框图。该终端600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)接口612,传感器组件614,以及通信组件616。
处理组件602通常控制终端600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器618来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在终端600的操作。这些数据的示例包括用于在终端600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为终端600的各种组件提供电力。电源组件606可以包括电源管理***,一个或多个电源,及其他与为终端600生成、管理和分配电力相关联的组件。
多媒体组件608包括在终端600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当终端600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当终端600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为终端600提供各个方面的状态评估。例如,传感器组件614可以检测到终端600的打开/关闭状态,组件的相对定位,例如组件为终端600的显示器和小键盘,传感器组件614还可以检测终端600或终端600一个组件的位置改变,用户与终端600接触的存在或不存在,终端600方位或加速/减速和终端600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于终端600和其他设备之间有线或无线方式的通信。终端600可以接入基于通信标准的无线网络,如Wi-Fi,2G或3G,或它们的组合。在一个示意性实施例中,通信组件616经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示意性实施例中,通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示意性实施例中,终端600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述应用锁界面显示方法。
在示意性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由终端600的处理器618执行以完成上述应用锁界面显示方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示意性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (9)

1.一种应用锁界面显示方法,其特征在于,所述方法包括:
接收应用程序对应的卸载指令,所述卸载指令携带有所述应用程序的标识;
根据所述卸载指令调用卸载应用函数,所述卸载应用函数是操作***中用于卸载应用程序的函数,所述操作***的应用层包括具有软件管理能力的第三方应用,所述操作***的操作***层包括软件包安装程序、安全管理服务、应用锁程序和***安装包管理服务,所述卸载应用函数是预设有检测函数的所述***安装包管理服务中的delete Package X函数;
通过所述卸载应用函数调用预先配置的检测函数,所述检测函数用于检测所述应用程序的应用锁状态是否为开启状态,所述检测函数是安全管理服务中的get ApplicationAccess Control Enabled函数;
在所述检测函数确定出所述应用锁状态为开启状态时,显示与所述应用程序对应的所述应用锁界面。
2.根据权利要求1所述的方法,其特征在于,所述通过所述卸载应用函数调用预先配置的检测函数,包括:
通过所述卸载应用函数,从所述卸载指令中获取所述应用程序的标识;
根据所述应用程序的标识调用所述检测函数,所述检测函数用于检测与所述标识对应的所述应用锁状态是否为开启状态。
3.根据权利要求2所述的方法,其特征在于,所述应用锁状态包括开启状态或者关闭状态;
所述根据所述应用程序的标识调用所述检测函数,所述检测函数用于检测与所述标识对应的所述应用锁状态是否为开启状态,包括:
当根据所述应用程序的标识调用的所述检测函数的返回值为真时,则确定所述应用程序的所述应用锁状态为开启状态;
当根据所述应用程序的标识调用的所述检测函数的返回值为假时,则确定所述应用程序的所述应用锁状态为关闭状态。
4.根据权利要求1至3任一所述的方法,其特征在于,所述在所述检测函数确定出所述应用锁状态为开启状态时,显示与所述应用程序对应的所述应用锁界面之后,还包括:
在所述应用锁界面中接收输入密码;
判断所述输入密码是否为与所述应用程序对应的预设密码;
当所述输入密码是与所述应用程序对应的预设密码时,取消所述应用锁界面的显示,并通过所述卸载应用函数完成所述应用程序的卸载;
当所述输入密码不是与所述应用程序对应的预设密码时,退出所述卸载应用函数。
5.一种应用锁界面显示装置,其特征在于,所述装置包括:
第一接收模块,被配置为接收应用程序对应的卸载指令,所述卸载指令携带有所述应用程序的标识;
第一调用模块,被配置为根据所述卸载指令调用卸载应用函数,所述卸载应用函数是操作***中用于卸载应用程序的函数,所述操作***的应用层包括具有软件管理能力的第三方应用,所述操作***的操作***层包括软件包安装程序、安全管理服务、应用锁程序和***安装包管理服务,所述卸载应用函数是预设有检测函数的所述***安装包管理服务中的delete Package X函数;
第二调用模块,被配置为通过所述卸载应用函数调用预先配置的检测函数,所述检测函数用于检测所述应用程序的应用锁状态是否为开启状态,所述检测函数是安全管理服务中的get Application Access Control Enabled函数;
显示模块,被配置为在所述检测函数确定出所述应用锁状态为开启状态时,显示与所述应用程序对应的所述应用锁界面。
6.根据权利要求5所述的装置,其特征在于,所述第二调用模块,包括:
获取子模块和调用子模块;
所述获取子模块,被配置为通过所述卸载应用函数,从所述卸载指令中获取所述应用程序的标识;
所述调用子模块,被配置为根据所述应用程序的标识调用所述检测函数,所述检测函数用于检测与所述标识对应的所述应用锁状态是否为开启状态。
7.根据权利要求6所述的装置,其特征在于,所述应用锁状态包括开启状态或者关闭状态;
所述调用子模块,包括:
第一确定子模块或第二确定子模块;
所述第一确定子模块,被配置为当根据所述应用程序的标识调用的所述检测函数的返回值为真时,则确定所述应用程序的所述应用锁状态为开启状态;
所述第二确定子模块,被配置为当根据所述应用程序的标识调用的所述检测函数的返回值为假时,则确定所述应用程序的所述应用锁状态为关闭状态。
8.根据权利要求5至7任一所述的装置,其特征在于,所述装置,还包括:
第二接收模块,被配置为在所述应用锁界面中接收输入密码;
判断模块,被配置为判断所述输入密码是否为与所述应用程序对应的预设密码;
卸载模块,被配置为当所述输入密码是与所述应用程序对应的预设密码时,取消所述应用锁界面的显示,并通过所述卸载应用函数完成所述应用程序的卸载;
退出模块,被配置为当所述输入密码不是与所述应用程序对应的预设密码时,退出所述卸载应用函数。
9.一种应用锁界面显示装置,其特征在于,所述装置包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收应用程序对应的卸载指令,所述卸载指令携带有所述应用程序的标识;
根据所述卸载指令调用卸载应用函数,所述卸载应用函数是操作***中用于卸载应用程序的函数,所述操作***的应用层包括具有软件管理能力的第三方应用,所述操作***的操作***层包括软件包安装程序、安全管理服务、应用锁程序和***安装包管理服务,所述卸载应用函数是预设有检测函数的所述***安装包管理服务中的delete Package X函数;
通过所述卸载应用函数调用预先配置的检测函数,所述检测函数用于检测所述应用程序的应用锁状态是否为开启状态,所述检测函数是安全管理服务中的get ApplicationAccess Control Enabled函数;
在所述检测函数确定出所述应用锁状态为开启状态时,显示与所述应用程序对应的所述应用锁界面。
CN201611048766.2A 2016-11-23 2016-11-23 应用锁界面的显示方法及装置 Active CN106709285B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611048766.2A CN106709285B (zh) 2016-11-23 2016-11-23 应用锁界面的显示方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611048766.2A CN106709285B (zh) 2016-11-23 2016-11-23 应用锁界面的显示方法及装置

Publications (2)

Publication Number Publication Date
CN106709285A CN106709285A (zh) 2017-05-24
CN106709285B true CN106709285B (zh) 2020-03-17

Family

ID=58934918

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611048766.2A Active CN106709285B (zh) 2016-11-23 2016-11-23 应用锁界面的显示方法及装置

Country Status (1)

Country Link
CN (1) CN106709285B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116382715B (zh) * 2023-03-21 2023-09-08 安芯网盾(北京)科技有限公司 一种Windows驱动程序卸载方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104461656A (zh) * 2014-12-26 2015-03-25 深圳数字电视国家工程实验室股份有限公司 一种基于安卓平台的应用程序卸载保护方法及***
CN105718278A (zh) * 2014-12-05 2016-06-29 北京奇虎科技有限公司 卸载破解版应用程序的方法及装置
CN105955789A (zh) * 2016-05-18 2016-09-21 广东欧珀移动通信有限公司 一种应用程序卸载方法、装置及设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105718278A (zh) * 2014-12-05 2016-06-29 北京奇虎科技有限公司 卸载破解版应用程序的方法及装置
CN104461656A (zh) * 2014-12-26 2015-03-25 深圳数字电视国家工程实验室股份有限公司 一种基于安卓平台的应用程序卸载保护方法及***
CN105955789A (zh) * 2016-05-18 2016-09-21 广东欧珀移动通信有限公司 一种应用程序卸载方法、装置及设备

Also Published As

Publication number Publication date
CN106709285A (zh) 2017-05-24

Similar Documents

Publication Publication Date Title
CN107329742B (zh) 软件开发工具包调用方法及装置
EP3188414B1 (en) Method and apparatus for controlling smart device
EP3133528B1 (en) Method and apparatus for fingerprint identification
CN106020943B (zh) 应用程序双开启方法及装置
EP3226167A1 (en) Payment method and apparatus
US9648152B2 (en) Methods and devices for labeling a number
US20180121057A1 (en) Method and device for hiding application icon
EP3255575B1 (en) Application triggering method and device
US10402562B2 (en) Method and device for encrypting application
CN106709285B (zh) 应用锁界面的显示方法及装置
CN112163192A (zh) root权限获取方法、装置、介质和电子设备
CN108829532B (zh) 指纹检测的方法、装置和可读存储介质
CN107861666B (zh) 桌面应用安装方法及装置
US10558973B2 (en) Method and apparatus for card activation
CN106354595B (zh) 移动终端、硬件组件状态检测方法及装置
US20210390026A1 (en) Method and device for processing information, and storage medium
CN112817868A (zh) 信息处理方法、装置及介质
CN110928595B (zh) 一种权限操作方法及装置
CN112631695A (zh) 一种数据校验方法、装置、电子设备及存储介质
CN113805978A (zh) 权限显示方法、装置及存储介质
CN109409097B (zh) 信息管理方法、装置及计算机可读存储介质
CN111813426A (zh) 一种指纹数据处理方法及装置
CN106846050B (zh) 一种发送展示通知的方法、装置和***
CN110888822A (zh) 内存处理方法、装置及存储介质
CN106919422B (zh) ***服务的管理方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant