CN105740021B - 一种应用程序的安装方法和装置 - Google Patents

一种应用程序的安装方法和装置 Download PDF

Info

Publication number
CN105740021B
CN105740021B CN201610067308.7A CN201610067308A CN105740021B CN 105740021 B CN105740021 B CN 105740021B CN 201610067308 A CN201610067308 A CN 201610067308A CN 105740021 B CN105740021 B CN 105740021B
Authority
CN
China
Prior art keywords
installation
application program
silent
application
program
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
CN201610067308.7A
Other languages
English (en)
Other versions
CN105740021A (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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201610067308.7A priority Critical patent/CN105740021B/zh
Publication of CN105740021A publication Critical patent/CN105740021A/zh
Application granted granted Critical
Publication of CN105740021B publication Critical patent/CN105740021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Abstract

本发明实施例公开了一种应用程序的安装方法和装置;该方法包括:在安装应用程序时,检测所述应用程序的安装方式是否为静默安装,若是,则确定是否允许采用静默安装的方式对该应用程序进行安装,以得到确定结果,根据确定结果对该应用程序进行安装;本方案通过在安装应用程序时检测其安装方式,并对采用静默安装的应用程序进行拦截,给用户提供透明的使用环境,提高用户体验,同时,对于终端的安全性也有更好的保障。

Description

一种应用程序的安装方法和装置
技术领域
本发明涉及通信技术领域,具体涉及一种应用程序的安装方法和装置。
背景技术
随着智能终端的普及,越来越多用户使用智能终端进行学习、娱乐等等,不仅丰富用户生活,还给用户带来便利,与此同时各种智能终端的应用程序也被开发出来,以满足用户的不同应用需求。
当前,大部分软件在安装过程中会向用户做出提示,例如通过图形用户界面询问用户是否安装、向用户展示软件安装的过程等。用户也可以通过选择图形用户界面中的退出按钮来终止软件的安装程序。
然而,一些软件(例如捆绑软件)在安装过程中并未向用户做出任何提示,在系统后台悄悄地下载和安装,这种软件的安装方式可以被称为“静默安装”。用户通常无法了解这些静默安装的软件是何时、通过什么方式安装在计算机中的,以至于系统无缘无故变得缓慢起来都不知道原因,甚至,一些静默安装的软件可能会对用户的终端造成危害。
发明内容
本发明实施例提供一种应用程序的安装方法和装置,可以提高终端的安全性。
本发明实施例提供一种应用程序的安装方法,包括:
在安装应用程序时,检测所述应用程序的安装方式是否为静默安装;
若是,则确定是否允许采用所述静默安装的方式对所述应用程序进行安装,以得到确定结果;
根据所述确定结果对所述应用程序进行安装。
进一步的,所述根据所述确定结果对所述应用程序进行安装的步骤具体包括:
当所述确定结果为允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行静默安装。
所述根据所述确定结果对所述应用程序进行安装的步骤具体还包括:
当确定结果为不允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行提示安装。
在本实施例中,所述根据所述确定结果对所述应用程序进行安装的步骤具体包括:
当确定结果为不允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行提示安装。
进一步的,所述对所述应用程序进行提示安装的步骤具体包括:
显示所述应用程序的安装提示信息;
接收用户输入的安装指令,并根据所述安装指令对所述应用程序进行安装。
进一步的,所述检测所述应用程序的安装方式是否为静默安装的步骤具体包括:
获取安装程序的属性信息,所述安装程序为所述应用程序的安装程序;
根据所述属性信息检测所述应用程序的安装方式是否为静默安装。
进一步的,所述确定是否允许采用所述静默安装的方式对所述应用程序进行安装的步骤具体包括:
获取安装程序的标识;
判断预设样本集合中是否存在与所述标识相同的样本;
若存在,则确定允许采用所述静默安装的方式对所述应用程序进行安装;
若不存在,则确定不允许采用所述静默安装的方式对所述应用程序进行安装。
本发明实施例还提供了一种应用程序的安装装置,包括:检测模块、确定模块以及安装模块;
所述检测模块,用于在安装应用程序时,检测所述应用程序的安装方式是否为静默安装;
所述确定模块,用于当所述应用程序的安装方式为静默安装时,确定是否允许采用所述静默安装的方式对所述应用程序进行安装,以得到确定结果;
所述安装模块,用于根据所述确定结果对所述应用程序进行安装。
其中,所述安装模块,具体用于当所述确定结果为允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行静默安装。
进一步的,所述安装模块,还具体用于当确定结果为不允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行提示安装。
本发明实施例采用在安装应用程序时,检测所述应用程序的安装方式是否为静默安装,若是,则确定是否允许采用静默安装的方式对该应用程序进行安装,以得到确定结果,根据确定结果对该应用程序进行安装;本发明了在智能终端的系统包管理服务中增加应用程序安装监测机制,通过安装程序的属性信息来检测应用程序的安装方式,并对采用静默安装的应用程序进行拦截,让用户看到安装过程,从而避免了某些恶意程序的自动安装,提高了终端的安全性,具有更好的用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种应用程序的安装方法流程示意图;
图2为本发明实施例二提供的一种应用程序的安装方法流程示意图;
图3为本发明实施例三提供的一种应用程序的安装装置的结构示意图;
图4为本发明实施例三提供的第二种应用程序的安装装置的结构示意图;
图5为本发明实施例三提供的第三种应用程序的安装装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种应用程序的安装方法和装置。以下将分别进行详细说明。
实施例一、
本实施了提供一种应用程序的安装方法,该方法可以应用在终端等电子设备,比如手机、平板电脑、PC(personal computer,个人电脑)等等用户终端,该应用程序的安装方法可以包括:
步骤S101,在安装应用程序时,检测该应用程序的安装方式是否为静默安装,若是,则执行步骤S103,若否,则执行步骤S102。
在现有技术当中,以Android系统为例,若要使用应用程序,需要先通过系统包管理服务PackageManagerService安装到智能终端当中,Android应用程序的安装方式有许多种,比如:系统应用安装、网络下载应用安装、ADB(Android Debug Bridge,调试桥)工具安装、第三方应用安装等方式,但从本质的原理机制上来说,只有两种:
1、通过厂商内置的PackageInstaller安装应用程序来安装应用,PackageInstaller应用会先获取要安装的APK(AndroidPackage,安装包)程序的各种信息,包括请求的权限,包名等信息,把安装的APK程序信息界面呈现给用户,用户通过点击安装操作,PackageInstaller应用就可以调用系统包管理服务PackageManagerService的安装应用APK接口函数installPackage()来进行安装;如果用户点击取消,则程序不会被安装。而市场上其它第三方安装应用程序,安装下载APK的原理也类同于厂商内置的PackageInstaller应用。
2、通过ADB命令安装应用程序,ADB命令通过在底层调用系统pm命令,系统默认内置的pm可执行文件可以调用到系统包管理服务PackageManagerService的安装应用APK接口函数installPackage()来安装传入的APK程序,这种安装方式不会在安装时弹出界面提示用户,是一种在后台静默安装的方式,许多手机助手类都是通过这种方式来安装APK程序。
在本发明实施例中,智能终端系统可以在系统包管理服务中增加应用程序的安装监测机制,用来检测该应用程序的安装方式是否为静默安装,比如,在系统包管理服务PackageManagerService中的应用APK接口函数installPackage()中增加应用安装检测机制,应用安装检测机制能获取调用接口函数installPackage的调用者,即将要安装的APK名称,APK包名等信息,对应用启动方式进行判断。
步骤S102,按照其预设方式对该应用程序进行安装。
具体的,检测到上述应用程序的安装方式不为静默安装,即该应用程序从本质上是通过packageinstaller.apk应用处理安装的界面,该安装方法可以生成用户界面并显示至终端,方便用户时刻掌握应用程序的安装信息,比如应用程序的权限、安装路径、安装进度信息等等,此时,按照该安装方式对该应用程序进行安装。
步骤S103,确定是否允许采用静默安装的方式对该应用程序进行安装,以得到确定结果。
具体的,当检测到上述应用程序的安装方式为静默安装时,系统判定该应用程序是否允许采用静默安装的方式进行安装,以得到确定结果,其中,上述确定结果包含允许采用静默安装的方式对该应用程序进行安装的第一确定结果和不允许采用静默安装的方式对该应用程序进行安装的第二确定结果。
在本发明实施例中,系统确定是否允许采用静默安装的方式对该应用程序进行安装的方法可以有多种,优选的,系统可以预先设置样本集合,该样本集合中包含允许静默安装的应用程序标识,此时,确定是否允许采用静默安装的方式对该应用程序进行安装的步骤具体包括:获取安装程序的标识,判断预设样本集合中是否存在与所述标识相同的样本,若存在,则确定允许采用所述静默安装的方式对所述应用程序进行安装,若不存在,则确定不允许采用所述静默安装的方式对所述应用程序进行安装。
比如,在上述应用程序安装监测机制中预设白名单,上述白名单意指其中包含可以通过静默安装的方式进行安装的一个或多个软件的软件名称的目录,上述白名单例如可以包括一些知名公司的知名软件的软件名称、公认的正常软件的软件名称等,尽管这些软件也通过静默安装的方式进行安装,然而这些软件并非恶意软件(包含木马、病毒的软件或是捆绑软件等)。
其中,该应用安装检测机制中的白名单可以由智能终端的安全模块所生成,或是由用户选择生成,还可以由云服务器进行推送等,白名单可以是以文件方式存储、数据库方式存储,或是云服务器的方式存储等。
用户设备可以根据所识别的待安装软件的软件名称,查询上述应用程序安装监测机制中的白名单,以确定该软件是否被允许静默安装,如果所识别的软件名称存在于白名单中,则该软件确定为允许采用静默安装的方式进行安装;如果所识别的软件名称不存在于白名单中,则该软件确定为不允许采用静默安装的方式进行安装。
可选的,还可以在上述应用程序安装监测机制中预设黑名单,上述黑名单意指其中包含不可以通过静默安装的方式进行安装的一个或多个软件的软件名称的目录,上述黑名单可以包括一些捆绑软件或者包含木马、病毒等恶意程序的软件等。
用户设备可以根据所识别的待安装软件的软件名称,查询上述应用程序安装监测机制中的黑名单,以确定该软件是否被允许静默安装,如果所识别的软件名称存在于该黑名单中,则该软件确定为不允许采用静默安装的方式进行安装;如果所识别的软件名称不存在于该黑名单中,则该软件确定为允许采用静默安装的方式进行安装。
步骤S104,根据上述确定结果对应用程序进行安装。
具体的,根据上述确定结果对应用程序进行安装的步骤具体包括:当上述确定结果为允许采用静默安装的方式对应用程序进行安装时,对该应用程序进行静默安装;
根据上述确定结果对应用程序进行安装的步骤具体还包括:当上述确定结果为不允许采用静默安装的方式对应用程序进行安装时,对该应用程序进行提示安装。
比如,如果该应用程序允许采用静默安装的方式进行安装,则该APK应用可以正常后台静默安装,也即调用接口函数installPackage的调用者通过ADB后台安装的方式来安装APK,这种安装方式不会在安装时弹出界面提示用户;如果该应用程序不允许采用静默安装的方式进行安装,则应用APK不能后台静默安装,系统可以通过发送一个特殊的广播通知厂商内置的PackageInstaller安装应用程序来安装应用,并且将即将要安装的APK名称、APK包名或者该APK程序请求的权限等信息传递给PackageInstaller,安装应用程序,具体的,该PackageInstaller应用就可以调用系统包管理服务PackageManagerService中的安装应用APK接口函数installPackage()来进行安装,这种安装方式可以在用户终端上弹出用户界面以提示用户,譬如显示安装路径、应用程序的权限、安装进度等信息。
在本发明实施例中,上述根据确定结果对该应用程序进行安装的步骤具体包括:
当确定结果为不允许采用静默安装的方式对该应用程序进行安装时,对应用程序进行提示安装。
比如,若上述确定结果为不允许采用静默安装的方式对该应用程序进行安装,PackageInstaller应用就可以调用系统包管理服务PackageManagerService中的安装应用APK接口函数installPackage()来进行安装,这种安装方式可以在用户终端上弹出界面以提示用户。
由上可知,本发明实施例采用在安装应用程序时,检测所述应用程序的安装方式是否为静默安装,若是,则确定是否允许采用静默安装的方式对该应用程序进行安装,以得到确定结果,根据确定结果对该应用程序进行安装;本发明了在智能终端的系统包管理服务中增加应用程序安装监测机制,对采用静默安装的应用程序进行拦截,让用户看到安装过程,从而避免了某些恶意程序的自动安装,有效提升了系统的安全性,提高用户体验;另外,本发明实施例提供的应用程序的安装方法还具有实施简单、成本低等优点。
实施例二、
本实施例将在实施例一描述的方法基础上,对本发明的应用程序的安装方法做进一步介绍,参考图2,为本实施例提供的一种应用程序的安装方法,包括:
步骤S201,获取安装程序的属性信息,该安装程序为应用程序的安装程序。
比如,智能终端系统可以在系统包管理服务中增加应用程序的安装监测机制,该应用安装检测机制获取调用接口installPackage的调用者,也就是安装程序,以得到该安装程序的属性信息,包括要安装的APK名称、APK包名、安装路径、安装方式等信息。
步骤S202,根据上述属性信息检测该应用程序的安装方式是否为静默安装,若是,则执行步骤S204,若否,则执行步骤S203。
具体的,上述安装程序的属性信息包含该应用程序的安装方式,若应用安装检测机制判断调用接口函数installPackage的调用者是通过ADB命令后台安装的方式来安装APK时,则判定该应用程序的安装方式为静默安装,执行步骤S204;若应用安装检测机制判断该应用程序是由PackageInstaller调用系统包管理服务PackageManagerService的安装应用APK接口函数installPackage()来进行安装的,则判定该应用程序的安装方式不为静默安装,执行步骤S203。
步骤S203,按照其预设安装方式进行安装。
比如,当检测到该应用程序的安装方式不为静默安装时,也即该应用程序从本质上是通过packageinstaller.apk应用处理安装的界面,该安装方法可以生成用户界面并显示至终端,该用户界面例如图形用户界面、命令界面等,安装时通过调用用户界面来与用户进行交互,以向用户提示与该进程有关的各种信息,例如,安装包进程通常通过调用用户界面来向用户展示安装过程。
步骤S204,获取安装程序的标识。
在本发明实施例中,上述安装程序的标识譬如为待安装软件的软件名称,该安装程序的标识用于在样本集合中与预设应用程序标识进行匹配;
具体的,上述获取安装程序的标识的方法可以有多种,比如,通过步骤S201获取的属性信息中提取该安装程序的标识,此时,获取安装程序的标识的步骤具体包括:获取安装程序的属性信息,提取该属性信息中的标识。
步骤S205,判断预设样本集合中是否存在与上述标识相同的样本,若是,则执行步骤S206;若否,则执行步骤S207。
具体的,在本实施例中可以预先设置样本集合,该样本集合中包含一个或多个允许静默安装的预设应用程序标识,将上述安装程序的标识与该样本集合的预设应用程序标识匹配,判断预设样本集合中是否存在与上述标识相同的样本,若存在,则确定允许采用所述静默安装的方式对应用程序进行安装;若不存在,则确定不允许采用所述静默安装的方式对应用程序进行安装。
步骤S206,采用静默安装的方式对应用程序进行安装。
比如,调用接口函数installPackage的调用者通过ADB后台安装的方式来安装APK,这种安装方式不会在安装时弹出用户界面提示用户。
步骤S207,显示应用程序的安装提示信息。
具体的,若确定不允许采用所述静默安装的方式对应用程序进行安装,则应用AKP不能后台静默安装,PackageInstaller应用会获取要安装的APK程序的安装提示信息,包括请求的权限,包名等信息,把安装的APK程序的安装提示信息呈现给用户。
步骤S208,接收用户输入的安装指令,并根据该安装指令对应用程序进行安装。
在本实施例中,在用户接收到由终端用户界面显示的提示信息后,可以通过点按等操作生成安装指令,并根据安装指令对该应用程序进行安装,比如,PackageInstaller应用可以调用系统包管理服务PackageManagerService中的安装应用APK接口函数installPackage()来进行安装,这种安装方式可以在用户终端上弹出用户界面,譬如显示安装路径、应用程序的权限、安装进度等信息。
可选的,若上述指令为取消安装指令,则该应用程序不会被安装,例如用户放弃安装该APK。
可选的,在本发明实施例中,还可以在上述安装检测机制上设置功能开关,然后根据用户指令选择打开或者关闭该功能,若关闭,则在安装应用程序时不对其安装方式进行检测。
由上可知,本发明实施例采用在安装应用程序时,检测所述应用程序的安装方式是否为静默安装,若是,则确定是否允许采用静默安装的方式对该应用程序进行安装,以得到确定结果,若确定结果为允许静默安装,则对应用程序进行静默安装;若确定结果为不允许静默安装,则对应用程序进行提示安装;本发明了在智能终端的系统包管理服务中增加应用程序安装监测机制,通过安装程序的属性信息来检测应用程序的安装方式,并对采用静默安装的应用程序进行拦截,让用户看到安装过程,从而避免了某些恶意程序的自动安装,提高了终端的安全性,具有更好的用户体验。
实施例三、
为了更好地实施上述方法实施例,本发明还提供了一种应用程序的安装装置,该装置可以集成在终端等电子设备中,比如手机、平板电脑、PC等等用户终端。
如图3所示,该应用程序的安装装置可以包括:检测模块301、确定模块302以及安装模块303;
该检测模块301,用于在安装应用程序时,检测应用程序的安装方式是否为静默安装;
具体的,可以将该检测模块301设置在智能终端的系统包管理服务中,用来检测该应用程序的安装方式是否为静默安装。
比如,在系统包管理服务PackageManagerService中的应用APK接口函数installPackage()中增加上述检测模块301,该检测模块301能获取调用接口函数installPackage的调用者,即将要安装的APK名称,APK包名等信息,对应用启动方式进行判断。
该确定模块302,用于当应用程序的安装方式为静默安装时,确定是否允许采用静默安装的方式对应用程序进行安装,以得到确定结果;
比如,在检测模块301当中预设白名单,上述白名单意指其中包含可以通过静默安装的方式进行安装的一个或多个软件的软件名称的目录,可以包括例如一些知名公司的知名软件的软件名称、公认的正常软件的软件名称等,该确定模块302以根据所识别的待安装软件的软件名称,查询上述应用程序安装监测机制中的白名单,以确定该软件是否被允许静默安装,以得到确定结果。
该安装模块303,用于根据确定结果对应用程序进行安装;
具体的,该安装模块303,具体用户当上述确定结果为允许采用静默安装的方式对应用程序进行安装时,对该应用程序进行静默安装;
比如,若该应用程序确定为允许采用静默安装的方式进行安装,则安装模块303可以调用接口函数installPackage的调用者通过ADB后台安装的方式来安装APK。
该安装模块303,还具体用于当上述确定结果为不允许采用静默安装的方式对应用程序进行安装时,对该应用程序进行提示安装;
比如,若该应用程序确定为不允许采用静默安装的方式进行安装,上述安装模块303可以调用系统包管理服务PackageManagerService中的安装应用APK接口函数installPackage()来进行安装,这种安装方式可以在用户终端上弹出用户界面以提示用户,譬如显示安装路径、应用程序的权限、安装的进度等信息。
在本发明实施例中,上述安装模块303,具体用于当上述确定结果为不允许采用静默安装的方式对应用程序进行安装时,对该应用程序进行提示安装。
优选的,如图4所示,在本实施例中,上述检测模块301包括:第一获取子模块3011以及检测子模块3012;
该第一获取子模块3011,用于获取安装程序的属性信息,该安装程序为应用程序的安装程序;
比如,该第一获取子模块3011,获取调用接口installPackage的调用者,也就是安装程序,以得到该安装程序的属性信息,譬如要安装的APK名称、APK包名、安装路径、安装方式等信息。
该检测子模块3012,用于根据上述属性信息检测应用程序的安装方式是否为静默安装。
在本发明实施例中,上述安装模块303包括:显示子模块3031以及安装子模块3032;
该显示子模块3031,用于显示应用程序的安装提示信息;
具体的,该显示子模块3031,具体用于在确定不允许采用所述静默安装的方式对应用程序进行安装时,生成安装提示信息并显示至终端,该安装提示信息可以包括请求的权限,包名等信息,把安装的APK程序信息界面呈现给用户。
该安装子模块3032,用于接收用户输入的安装指令,并根据该安装指令对应用程序进行安装;
优选的,如图5所示,在本实施例中,上述确定模块302包括:第二获取子模块3021、判断子模块3022以及确定子模块3023;
该第二获取子模块3021,用于获取安装程序的标识;
比如,该第二获取子模块3021,获取安装程序的属性信息,提取该属性信息中的标识,该表示譬如为待安装软件的软件名称。
该判断子模块3022,用于判断预设样本集合中是否存在与上述标识相同的样本;
具体的,本实施例可以预先设置样本集合,该样本集合中包含一个或多个允许静默安装的预设应用程序标识,将上述安装程序的标识与该样本集合的预设应用程序标识匹配,由判断子模块3022判断预设样本集合中是否存在与上述标识相同的样本。
该确定子模块3023,用于当判断子模块3022判断为是时,确定允许采用静默安装的方式对应用程序进行安装;当判断子模块3022判断为否时,确定不允许采用静默安装的方式对应用程序进行安装。
由上可知,本发明实施例采用在安装应用程序时,检测模块301检测所述应用程序的安装方式是否为静默安装,若是,则由确定模块302确定是否允许采用静默安装的方式对该应用程序进行安装,以得到确定结果,安装模块303根据确定结果对该应用程序进行安装;本发明了在智能终端的系统包管理服务中增加应用程序安装监测机制,对采用静默安装的应用程序进行拦截,让用户看到安装过程,从而避免了某些恶意程序的自动安装,有效提升了系统的安全性,提高用户体验;另外,本发明实施例提供的应用程序的安装方法还具有实施简单、成本低等优点。
具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个模块的具体实施可参见前面的方法实施例,在此不再赘述。
需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储介质中,如存储在终端的存储器中,并被该终端内的至少一个处理器执行,在执行过程中可包括如信息发布方法的实施例的流程。其中,存储介质可以包括:只读存储器(ROM,Read OnlyMemory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例提供的一种应用程序的安装方法和装置进行了详细介绍,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种应用程序的安装方法,其特征在于,包括以下步骤:
在系统包管理服务中的应用APK接口函数中增加应用程序的安装监测机制,使所述安装检测机制可获取调用所述APK接口函数的调用者;
在安装应用程序时,获取安装程序的属性信息,所述属性信息至少包括安装程序的标识、安装路径及安装方式,所述安装监测机制检测所述应用程序的安装方式是否为静默安装,具体包括:判断调用接口函数的调用者是否通过ADB后台安装的方式来安装所述应用程序的安装包;
若是,则提取所述属性信息中的标识,所述安装程序为所述应用程序的安装程序,并判断黑名单或白名单中是否存在与所述标识相同的样本,以得到确定结果,所述黑名单与所述白名单由安全模块、用户选择或云服务器推送生成;
根据所述确定结果对所述应用程序进行安装,其中,若不允许采用所述静默安装的方式对所述应用程序进行安装,则通过内置的PackageInstaller安装应用程序调用所述系统包管理服务PackageManagerService中的安装应用程序的安装包接口函数installPackage()来进行安装;
若允许采用所述静默安装的方式对所述应用程序进行安装,则所述ADB命令调用系统pm命令,系统默认内置的pm可执行文件调用系统包管理服务PackageManagerService的安装应用接口函数来安装传入的APK程序。
2.如权利要求1所述的应用程序的安装方法,其特征在于,所述根据所述确定结果对所述应用程序进行安装的步骤具体包括:
当所述确定结果为允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行静默安装。
3.如权利要求2所述的应用程序的安装方法,其特征在于,所述根据所述确定结果对所述应用程序进行安装的步骤具体还包括:
当确定结果为不允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行提示安装。
4.如权利要求3所述的应用程序的安装方法,其特征在于,所述对所述应用程序进行提示安装的步骤具体包括:
显示所述应用程序的安装提示信息;
接收用户输入的安装指令,并根据所述安装指令对所述应用程序进行安装。
5.如权利要求1所述的应用程序的安装方法,其特征在于,所述检测所述应用程序的安装方式是否为静默安装的步骤具体包括:
获取安装程序的属性信息,所述安装程序为所述应用程序的安装程序;
根据所述属性信息检测所述应用程序的安装方式是否为静默安装。
6.如权利要求1所述的应用程序的安装方法,其特征在于,所述确定是否允许采用所述静默安装的方式对所述应用程序进行安装的步骤具体包括:
获取安装程序的标识;
判断预设样本集合中是否存在与所述标识相同的样本;
若存在,则确定允许采用所述静默安装的方式对所述应用程序进行安装;
若不存在,则确定不允许采用所述静默安装的方式对所述应用程序进行安装。
7.一种应用程序的安装装置,其特征在于,包括:检测模块、确定模块以及安装模块;
所述检测模块,用于在系统包管理服务中的应用APK接口函数中增加应用程序的安装监测机制,使所述安装检测机制可获取调用所述APK接口函数的调用者;
在安装应用程序时,获取安装程序的属性信息,所述属性信息至少包括安装程序的标识、安装路径及安装方式,所述安装监测机制检测所述应用程序的安装方式是否为静默安装,具体包括:判断调用接口函数的调用者是否通过ADB后台安装的方式来安装所述应用程序的安装包;
所述确定模块,用于,提取所述属性信息中的标识,所述安装程序为所述应用程序的安装程序,并判断黑名单或白名单中是否存在所述标识相同的样本,以得到确定结果,所述黑名单与所述白名单由安全模块、用户选择或云服务器推送生成;
所述安装模块,用于根据所述确定结果对所述应用程序进行安装,其中,若不允许采用所述静默安装的方式对所述应用程序进行安装,则通过内置的PackageInstaller安装应用程序调用所述系统包管理服务PackageManagerService中的安装应用程序的安装包接口函数installPackage()来进行安装;若允许采用所述静默安装的方式对所述应用程序进行安装,则所述ADB命令调用系统pm命令,系统默认内置的pm可执行文件调用系统包管理服务PackageManagerService的安装应用接口函数installPackage()来安装传入的APK程序。
8.如权利要求7所述的应用程序的安装装置,其特征在于,
所述安装模块,具体用于当所述确定结果为允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行静默安装。
9.如权利要求8所述的应用程序的安装装置,其特征在于,
所述安装模块,还具体用于当确定结果为不允许采用所述静默安装的方式对所述应用程序进行安装时,对所述应用程序进行提示安装。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1至6中任一项所述的方法。
CN201610067308.7A 2016-01-29 2016-01-29 一种应用程序的安装方法和装置 Active CN105740021B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610067308.7A CN105740021B (zh) 2016-01-29 2016-01-29 一种应用程序的安装方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610067308.7A CN105740021B (zh) 2016-01-29 2016-01-29 一种应用程序的安装方法和装置

Publications (2)

Publication Number Publication Date
CN105740021A CN105740021A (zh) 2016-07-06
CN105740021B true CN105740021B (zh) 2019-08-23

Family

ID=56248011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610067308.7A Active CN105740021B (zh) 2016-01-29 2016-01-29 一种应用程序的安装方法和装置

Country Status (1)

Country Link
CN (1) CN105740021B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106355079B (zh) * 2016-08-18 2019-12-06 北京奇虎科技有限公司 对应用程序的安装进行优化的方法、装置及终端
CN106445587A (zh) * 2016-09-08 2017-02-22 广东欧珀移动通信有限公司 应用程序安装控制方法及装置
CN106446683A (zh) * 2016-09-21 2017-02-22 深圳市金立通信设备有限公司 一种恶意程序的检测方法及终端
CN106502728B (zh) * 2016-09-30 2019-07-26 北京金山安全软件有限公司 应用程序下载的管理方法、装置及电子设备
CN106503540B (zh) * 2016-10-11 2020-01-14 天脉聚源(北京)传媒科技有限公司 一种程序安装包的安装及运行方法及系统
CN106503541B (zh) * 2016-10-11 2019-07-26 天脉聚源(北京)传媒科技有限公司 一种安装包的安装方法及系统
CN106778233A (zh) * 2016-12-26 2017-05-31 努比亚技术有限公司 一种应用安装的管控装置及方法
CN106778213A (zh) * 2017-01-06 2017-05-31 深圳市金立通信设备有限公司 一种静默安装应用程序的方法及终端
CN107273168B (zh) * 2017-06-29 2019-10-15 Oppo广东移动通信有限公司 一种应用安装方法、移动终端和计算机可读存储介质
CN109683919A (zh) * 2018-12-24 2019-04-26 广州微算互联信息技术有限公司 云手机应用安装和卸载方法
CN112052454B (zh) * 2020-10-12 2022-04-15 腾讯科技(深圳)有限公司 应用的病毒查杀方法、装置、设备及计算机存储介质
CN113641987A (zh) * 2021-06-23 2021-11-12 深圳市沃特沃德信息有限公司 应用静默安装的拦截方法、装置和计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103646209A (zh) * 2013-12-20 2014-03-19 北京奇虎科技有限公司 基于云安全拦截捆绑软件的方法和装置
CN104021336A (zh) * 2013-02-28 2014-09-03 联想(北京)有限公司 一种信息处理方法和装置
CN104199703A (zh) * 2014-09-05 2014-12-10 北京奇虎科技有限公司 静默安装的管理方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009093228A (ja) * 2007-10-03 2009-04-30 Canon Inc 画像形成システム及びアプリケーションプログラムのインストール方法
CN101727344A (zh) * 2010-01-12 2010-06-09 腾讯科技(深圳)有限公司 安装软件的方法和装置
US8650556B2 (en) * 2011-08-16 2014-02-11 Dell Products L.P. Virtual machine asynchronous patch management
CN105005494A (zh) * 2015-08-28 2015-10-28 广东欧珀移动通信有限公司 一种防止静默安装应用的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021336A (zh) * 2013-02-28 2014-09-03 联想(北京)有限公司 一种信息处理方法和装置
CN103646209A (zh) * 2013-12-20 2014-03-19 北京奇虎科技有限公司 基于云安全拦截捆绑软件的方法和装置
CN104199703A (zh) * 2014-09-05 2014-12-10 北京奇虎科技有限公司 静默安装的管理方法及装置

Also Published As

Publication number Publication date
CN105740021A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
CN105740021B (zh) 一种应用程序的安装方法和装置
CN108133139B (zh) 一种基于多运行环境行为比对的安卓恶意应用检测系统
US9438613B1 (en) Dynamic content activation for automated analysis of embedded objects
CN104376263B (zh) 应用程序行为拦截的方法和装置
EP2562673B1 (en) Apparatus and method for securing mobile terminal
CN102694817B (zh) 一种识别程序的网络行为是否异常的方法、装置及系统
US10754953B2 (en) TrustZone-based security isolation method for shared library and system thereof
CN108664793B (zh) 一种检测漏洞的方法和装置
US11960869B2 (en) Android penetration method and device for implementing silent installation based on accessibility services
CN103632096A (zh) 一种对设备进行安全检测方法和装置
CN104021336B (zh) 一种信息处理方法和装置
CN103279706A (zh) 拦截在移动终端中安装安卓应用程序的方法和装置
CN105631312B (zh) 恶意程序的处理方法及系统
CN105844155B (zh) 宏病毒查杀方法及系统
CN111651754A (zh) 入侵的检测方法和装置、存储介质、电子装置
EP2728472B1 (en) User terminal, reliability management server, and method and program for preventing unauthorized remote operation
CN105095758A (zh) 锁屏应用程序处理方法、装置以及移动终端
CN108509228B (zh) 加载页面的方法、终端设备及计算机可读存储介质
US10375576B1 (en) Detection of malware apps that hijack app user interfaces
TWI583169B (zh) 基於網絡社交軟體的電話撥打系統及方法
CN102467622B (zh) 一种监控已打开文件的方法及装置
CN107818260B (zh) 保障系统安全的方法及装置
CN106713215B (zh) 一种信息处理方法、终端及服务器
US9736176B2 (en) System and method for detecting security exposures of VOIP devices
KR101946569B1 (ko) 모바일 운영체계 시스템의 발신 호 스푸핑 방지 방법, 이를 위한 장치, 컴퓨터 판독 가능 기록 매체 및 컴퓨터 프로그램

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Applicant after: OPPO Guangdong Mobile Communications Co., Ltd.

Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Applicant before: Guangdong OPPO Mobile Communications Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant