CN109901849B - 应用程序安装方法、装置、电子设备及存储介质 - Google Patents

应用程序安装方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN109901849B
CN109901849B CN201910093613.7A CN201910093613A CN109901849B CN 109901849 B CN109901849 B CN 109901849B CN 201910093613 A CN201910093613 A CN 201910093613A CN 109901849 B CN109901849 B CN 109901849B
Authority
CN
China
Prior art keywords
installation
directory
installation package
target
package
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
CN201910093613.7A
Other languages
English (en)
Other versions
CN109901849A (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 CN201910093613.7A priority Critical patent/CN109901849B/zh
Publication of CN109901849A publication Critical patent/CN109901849A/zh
Application granted granted Critical
Publication of CN109901849B publication Critical patent/CN109901849B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种应用程序安装方法、装置、电子设备及存储介质,涉及电子设备技术领域。其中,该方法包括:当检测到安装器的用户界面基于目标安装包启动时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址;监听作用于所述用户界面的操作指令;若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装,提高安装速度。

Description

应用程序安装方法、装置、电子设备及存储介质
技术领域
本申请涉及电子设备技术领域,更具体地,涉及一种应用程序安装方法、装置、电子设备及存储介质。
背景技术
在电子设备中,当安装包下载完成后,可以对其进行安装。在现有的安装方法中,对电子设备进行案子耗时较长,用户需要等待时间较长,用户体验较差。
发明内容
鉴于上述问题,本申请提出了一种应用程序安装方法、装置、电子设备及存储介质,以解决上述问题。
第一方面,本申请实施例提供了一种应用程序安装方法,所述方法包括:当检测到安装器的用户界面基于目标安装包启动时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址;监听作用于所述用户界面的操作指令;若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装。
第二方面,本申请实施例提供了一种应用程序安装装置,所述装置包括:安装包处理模块,用于当检测到安装器的用户界面基于目标安装包启动时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址;监听模块,用于监听作用于所述用户界面的操作指令;安装模块,用于若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装。
第三方面,本申请实施例提供了一种电子设备,包括存储器以及处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时,所述处理器执行上述的方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述方法。
本申请实施例提供的应用程序安装方法、装置、电子设备及存储介质,在检测到用户界面启动就开始获取下载目录下的目标安装包存放至案子目录下,从而不必在接收到安装指令时才开始将安装包向安装目录存放,提高了安装速度,降低了安装耗时。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一实施例提供的应用程序安装方法的流程图。
图2示出了本申请另一实施例提供的应用程序安装方法的流程图。
图3示出了本申请实施例提供的应用程序安装过程的一种显示界面图。
图4示出了本申请实施例提供的应用程序安装过程的另一种显示界面图。
图5示出了本申请实施例提供的应用程序安装过程的又一种显示界面图。
图6示出了本申请实施例提供的应用程序安装过程的再一种显示界面图。
图7示出了本申请实施例提供的应用程序安装过程的还一种显示界面图。
图8示出了本申请又一实施例提供的应用程序安装方法的流程图。
图9示出了本申请实施例提供的应用程序安装装置的功能模块图。
图10示出了本申请实施例提供的电子设备的结构框图。
图11是本申请实施例的用于保存或者携带实现根据本申请实施例的应用程序安装方法的程序代码的存储介质。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
应用程序安装是大多数电子设备的主要特点,用户可以把各种应用程序(APP,Application)(如游戏应用、视频应用等)安装到电子设备上,并可以对其进行卸载等管理操作。其中,电子设备可以通过下载等渠道获得安装包,如安卓(Android)系统的APK(Android Package),再将安装包在电子设备中执行安装,从而实现电子设备的应用程序安装。其中,在电子设备中进行应用程序安装与卸载的为电子设备的安装器。例如,对于操作系统为安卓系统的电子设备,安装器为PackageInstaller,也就是说,以PackageInstaller作为默认的安装应用程序,用来交互式地安装普通包文件,通过PackgeInstaller应用负责与用户完成安装和卸载的交互过程。PackageInstaller提供了用户界面来管理应用或者包文件,该用户界面包括安装确认界面,即用于用户选择是否对应用程序进行安装的界面。另外,PackageInstaller可以调用一个叫InstallAppProgress的activity来获取用户发出的指令。当获取到用户发出安装指令,InstallAppProgress会请求Package Manager服务,进行安装包的安装。
但是,发明人发现,在应用程序的安装过程中较为耗时,特别是对于占用空间大的应用,用户需要等待时间较长。为了提高应用程序的安装速度,降低用户的等待时间,发明人仔细研究了应用程序安装的流程及路径。
发明人发现,安装器在安装时,安装的为安装目录下的安装包。其中,安装目录为电子设备中用于存放待安装的安装包的地址,如在安卓系统中安装目录为data/app。另外,通常的,当下载安装包后,安装器会启动并弹出用户界面,安装器可以检查是否开启未知来源,检查该应用程序是否已经安装过,并且也可以将检查结果在用户界面进行显示,另外,用户界面还可以显示该应用程序的权限信息。其中,安装器显示的用户界面中包括安装确认界面,当接收到在安装确认界面触发的安装指令时,如接收到对安装按钮的点击,启动安装,切换到应用安装流程,开始应用程序的安装。其中,安装确认界面可以是在显示检查结果后显示,应用程序的权限信息可以显示在安装确认界面。
在应用程序安装时,涉及到将下载目录从安装包复制到安装目录,以及对安装包文件进行扫描优化并安装。其中,下载目录为安装包下载后所存放的目录,如从浏览器下载的安装包,该安装包所在的下载目录为浏览器用于存放下载的文件的目录;从即时通讯软件接收下载的安装包,该安装包所在的下载目录为该即时通讯软件用于存放下载的文件的目录。
根据电子设备对安装包的安装流程,发明人提出了本申请实施例提供的应用程序安装方法、装置、电子设备及存储介质,将复制安装包到安装目录的操作执行提前,缩短安装包完成安装的时间。下面将通过具体实施例对本申请实施例提供的应用程序安装方法、装置、电子设备及存储介质进行详细说明。
请参阅图1,本申请实施例提供的应用程序安装方法,应用于电子设备。该电子设备可以是手机、平板电脑、个人电脑以及其他可以进行应用程序安装的智能设备。具体的,该方法可以包括:
步骤S110:当检测到安装器的用户界面基于目标安装包启动时,获取下载目录下的所述目标安装包存放至安装目录下。所述安装目录为用于存放待安装的安装包的地址。
在电子设备中,当需要对应用程序的安装包进行安装时,电子设备会启动安装器执行安装包的安装过程。例如,当安装包下载完成时,或者接收到对电子设备中已经存储的安装包的启动安装操作时。
安装器启动时,启动安装器的用户界面。电子设备可以通过检测安装器的用户界面是否启动检测安装器是否启动。当检测到安装器的用户界面启动时,表示安装器启动,有应用程序进行安装。在本申请实施例中,定义触发安装器启动的安装包为目标安装包,表示当目标安装包需要进行安装时,电子设备的安装器启动用户界面。
为了提高应用程序的安装速度,在检测到安装器的用户界面的启动时,则开始获取下载目录下的目标安装包存放到安装目录以备安装,而不必等到用户确认安装时才开始将安装包存放到安装目录。
步骤S120:监听作用于所述用户界面的操作指令。
当检测到安装器的用户界面基于目标安装包启动时,电子设备同时监听作用于用户界面的操作指令,以根据操作指令进行操作执行。
步骤S130:若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装。
若监听到作用于用户界面的操作指令为安装指令,表示用户想要对该安装包对应的应用程序进行安装,则可以已经存放在安装目录下的目标安装包进行安装。
本申请实施例中,在检测到安装器的用户界面启动时则开始将目标安装包向安装目录存放,而不必等到用户在确认安装时才开始将安装包存放到安装目录,在接收到安装指令时,可以更快地对目标安装包进行安装,加快了整体安装速度,降低了应用程序的安装耗时。
若在接收到安装操作指令之前就降安装包向安装目录存放,用户最后可能没有选择对该目标安装包对应的应用程序进行安装。因此,本申请还提供了一种实施例,包括在取消安装的情况下的处理方式。具体的,请参见图2,该实施例的方法包括:
步骤S210:当检测到安装器的用户界面基于目标安装包启动时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址。
电子设备对安装器是否启动进行检测,当检测到安装器启动时,则可以开始将安装器启动所基于的目标安装包从下载目录获取并存放至安装目录下。其中,可以通过检测安装器的用户界面是否启动检测安装器是否启动。当安装器的用户界面启动,表示安装器启动。安装器启动的用户界面的具体显示内容在本申请实施例中并不限定,例如可以是如图3所示的一种界面。
作为一种实施方式,获取下载目录下的所述目标安装包存放至安装目录下的具体方式可以是,从下载目录下将所述目标安装包复制到所述安装目录下。也就是说,可以复制下载目录下的目标安装包,再将复制的目标安装包粘贴到安装目录下以备安装。该实施方式中,在下载目录下仍然保留有该目标安装包。
作为另一种实施方式,获取下载目录下的所述目标安装包存放至安装目录下的具体方式可以是,将所述目标安装包从所述下载目录下移动至所述安装目录下。在该实施方式中,当将目标安装包移动到安装目录后,下载目录下不再存放有目标安装包。
在本申请实施例中,当安装包下载完成,安装器启动后,在显示安装确认界面之前,可以先对目标安装包进行检测,如通过解析目标安装包的路径检测安装包是否是未知来源,如检测目标安装包的权限信息,如检测目标安装包是否安装过,如检测目标安装包是否安全等。在检测过程中,可以显示检测过程的用户界面,例如图4所示。另外,对于不同型号或不同品牌的电子设备,可以自定义哪些来源为未知来源,例如,对于某电子设备而言,以其软件商店作为官方下载渠道,从其软件商店下载的安装包为非未知来源,从其他渠道(如浏览器)下载的安装包定义为未知来源。
该检测过程可以和获取下载目录下的所述目标安装包存放至安装目录下的过程同时执行,即在获取下载目录下的所述目标安装包存放至安装目录下的同时,对安装包进行检测,使目标安装包存放至安装目录的执行过程尽量少地额外占用时间,降低从安装包下载完成至安装完成直接需要耗费的时间。
步骤S220:监听作用于所述用户界面的操作指令。若监听到作用于所述用户界面的操作指令为安装指令,执行步骤S230;若监听到作用于所述用户界面的操作指令为取消安装的指令,执行步骤S240。
电子设备监听用户作用于用户界面的操作,从而获取用户的操作指令,以根据用户的操作指令进行任务执行。
其中,若用户在用户界面进行确认安装的操作,则监听到的操作指令。若用户在用户界面进行取消安装的操作,则监听到取消安装的指令。
具体的,在用户界面可以显示操作确认按钮,由用户选择是进行安装还是取消安装,如图5所示。图5中“安装”的按钮表示进行确认安装的按钮,若接收到对该按钮的触发,则监听到安装指令;图5中“取消”的按钮表示取消安装的按钮,若接收到对该按钮的触发,则监听到取消安装的指令。
又如图6所示,若检测到目标安装包为未知来源,可以在用户界面进行提示,提醒用户是否重新下载,可以将是否重新下载的确认操作以及是否安装的操作一起显示,如图6所示,显示表示确认安装的“安装”按钮以及表示通过电子设备认可的官方渠道进行安装包重新下载的“官方下载”按钮。若接收到对“安装”按钮的触发,则监听到安装指令。若接收到对“官方下载”的触发,则通过该电子设备对应的官方下载渠道重新下载安装包。重新下载安装包完成后,再进行检测以及提醒用户是否安装等操作。可选的,在显示是否安装或者重新下载时,还可以显示表示既不重新下载也不安装的取消安装的按钮,如图7所示的“取消”按钮。
另外,在本申请实施例中,若用户直接退出安装器的用户界面,也可以确定为监听到取消安装的操作。其中,用户直接退出安装器的用户界面的操作可以是多种,例如通过在电子设备中触发主页键,如“home”键;例如在电子设备中触发窗口选择操作,在显示的多个窗口中删除该安装器对应的窗口;又如,触发返回键,如“back”键等。
可选的,用户直接退出安装器的用户界面的时机可以是安装器启动至触发安装指令之前的任意一个时间节点,例如可能是安装器的用户界面刚刚启动就接收到退出的操作,可能是在检测是否为未知来源时就接收到退出的操作,可能是在显示操作确认按钮的界面接收到退出的操作等。若接收到退出安装器的用户界面的操作,除了确定为监听到取消安装的操作,还可以停止安装过程中的其他操作,如安装包的检测操作。
在本申请实施例中,获取下载目录下的所述目标安装包存放至安装目录下的步骤与所述监听作用于所述用户界面的操作指令的步骤并行执行,从而使安装包的移动或者复制粘贴过程与操作指令的监听过程异步执行,提前将安装包存放到安装目录下,不必在接收到安装指令时再开始进行安装包的移动或者复制粘贴,加快了处理过程。
步骤S230:对所述安装目录下的目标安装包进行安装。
若接收到安装指令,则对安装目录下的目标安装包进行安装。具体安装过程在本申请实施例不进行限定和赘述,例如对于安卓系统,可以是解压并扫描安装目录下的安装包,把dex文件(Dalvik字节码)保存到dalvik-cache目录,并在data/data目录下创建对应的应用数据目录。具体的,可以是资源管理器注册资源,解析AndroidManifest,创建用户数据目录获得data/app/{pkg},再是执行dexopt,注册四大组件,在安装完毕后发送相应的广播。
可以理解的,若目标安装包的文件较大,则在接收到安装指令时,目标安装包可能还未完全存放至安装目录下,此时,可以等待所述目标安装包完全存放至所述安装目录下时,对安装目录下该目标安装包进行安装。例如,将目标安装包从下载目录复制到安装目录下,在将目标安装包的部分粘贴到安装目录下时,就监听都安装指令,则可以等待将目标安装包的剩余部分全部粘贴到安装目录下时,再对该目标安装包进行安装。其中,为了加快安装速度,可以在目标安装包一完全存放至案子目录下,就开始目标安装包的安装。
可选的,若电子设备中设置了安装完成后将安装包删除,或者是电子设备的存储空间小于预设阈值,在检测到安装器的用户界面基于目标安装包启动时,在将目标安装包从下载目录下复制到安装目录下的情况下,安装完成后,可以将下载目录下以及安装目录下的目标安装包删除。在当检测到安装器的用户界面基于目标安装包启动时,将目标安装包从所述下载目录下移动至所述安装目录下的情况下,安装完成后,可以将安装目录下的安装包删除。
可选的,若电子设备中未设置安装完成后将安装包删除,或者设置的为保留安装包,或者电子设备的存储空间大于或等于预设阈值,在检测到安装器的用户界面基于目标安装包启动时,在将目标安装包从下载目录下复制到安装目录下的情况下,安装完成后,可以将安装目录下的目标安装包删除。在检测到安装器的用户界面基于目标安装包启动时,在将所述目标安装包从所述下载目录下移动至所述安装目录下的情况下,安装完成后,可以将安装目录下的安装包移回下载目录,或者将安装目录下的安装包删除,并复制到下载目录。
步骤S240:将所述安装目录下的所述目标安装包删除。
若接收到取消安装的指令,则不对该目标安装包进行安装。并且,可以将安装目录下的目标安装包删除。
作为一种实施方式,若目标安装包是从下载目录复制到安装目录下,下载目录下移动至所述安装目录下时,则可以直接删除安装目录下的目标安装包。
可选的,在该实施方式中,也可以同时将下载目录下的目标安装包删除,减少对存储空间的占用。或者是,在电子设备的存储空间小于预设阈值时,将下载目录下的目标安装包删除。
作为一种实施方式,若目标安装包是从下载目录下移动至安装目录下,在接收到取消安装的指令时,可以将所述目标安装包从安装目录下移回所述下载目录下。或者是,将目标安装包从安装目录下复制到下载目录下,并且将该目标安装包从安装目录下删除。
可选的,在该实施方式中,也可以直接将目标安装包从安装目录下删除而不移回下载目录;或者是,在电子设备的存储空间小于预设阈值时,直接将目标安装包从安装目录下删除而不移回下载目录。
在本申请实施例中,由于获取下载目录下的所述目标安装包存放至安装目录下的步骤与所述监听作用于所述用户界面的操作指令的步骤可以并行执行,则在监听到作用于用户界面的操作指令为取消安装指令时,可能目标安装包还未开始向安装目录存放。例如,将目标安装包复制粘贴到安装目录,在目标安装包过大的情况下,可能在接收到取消安装的指令时,还未完成对目标安装包的复制或者刚刚完成对目标安装包的复制,还未开始将目标安装包向安装目录下粘贴。
另外,在监听到作用于用户界面的操作指令为取消安装指令时,也可能只有目标安装包的部分存放至安装目录下。例如,将目标安装包从下载目录移动到安装目录下,在目标安装包较大的情况下,可能用户进行取消安装的操作时,目标安装包的一部分才移动到安装目录,另一部分还在下载目录下,未移动至安装目录下。
在接收到取消安装的指令的情况下,表示不需要对该目标安装包进行安装,也不需要将目标安装包存放在安装目录下。因此,在本申请实施例中,若监听到作用于所述用户界面的操作指令为取消安装指令时,还未开始将所述目标安装包向所述安装目录下存放,则可以不再执行将所述目标安装包存放至安装目录下,也可以不再执行安装应用程序的其他操作。
若监听到作用于所述用户界面的操作指令为取消安装指令时,所述目标安装包的部分存放至所述安装目录下,则可以停止执行将所述目标安装包存放到安装目录下,并且将已经存放至所述安装目录下的目标安装包的部分删除。可选的,若目标安装包为从下载目录复制到安装目录下,则可以将目标安装包粘贴到安装目录下的部分删除即可。由于用户在此时取消了目标安装包的安装,可能想等待其他合适的时间对目标安装包进行安装,则若目标安装包为从下载目录向安装目录下移动,可以将目标安装包移动到安装目录下的部分移回下载目录下。
在本申请实施例中,当检测到安装器的用户界面基于目标安装包启动时,则开始将下载目录下的目标安装包存放至安装目录下,并且,同时对作用于所述用户界面的操作指令进行监听。当监听到作用于所述用户界面的操作指令为安装指令,在目标安装包完全存放至安装目录下的情况下,对安装目录下的目标安装包进行安装;若目标安装包还未完全存放至安装目录下,可以等待到目标安装包完全存放至安装目录下进行目标安装包的安装。若监听到作用于所述用户界面的操作指令为取消安装的指令,则删除安装目录下的目标安装包,不对该目标应用程序进行安装。
该实施例中,相对于在接收到安装指令才开始复制安装包至安装目录的方式,安装包向安装目录的存放过程提前进行。当接收到安装指令时,若目标安装包已经存放至安装目录,则不需要再执行将目标安装包存放到安装目录的操作;当接收到安装指令时,若目标安装包的部分已经存放至安装目录,则需要等待将目标安装包存放到安装目录的时间更短,从而,安装过程的总体耗时较少,用户的等待时间较短,提高了安装速度。
在实际应用场景下,安装包的下载方式不同,用户实际会对该安装包进行安装的可能性不同。因此,本申请还提供了一种实施例,根据安装包的下载方式确定将安装包从下载目录存放至安装目录的方式。具体的,请参见图8,该实施例的方法包括:
步骤S310:当检测到安装器的用户界面基于目标安装包启动时,根据该目标安装包的下载方式将下载目录下的所述目标安装包存放至安装目录下。
步骤S320:监听作用于所述用户界面的操作指令。若监听到作用于所述用户界面的操作指令为安装指令,执行步骤S330;若监听到作用于所述用户界面的操作指令为取消安装的指令,执行步骤S340。
步骤S330:对所述安装目录下的目标安装包进行安装。
步骤S340:将所述安装目录下的所述目标安装包删除。
目标安装包的下载方式不同,该目标安装包为用户当前实际想要安装的安装包的可能性不同。例如,用户对某应用程序触发更新操作,通常表示用户想要对该应用程序进行更新,则对应该更新下载的安装包通常为用户最后会选择进行安装的安装包;又如,在电子设备的官方下载渠道中(如软件商店)用户选择下载的应用程序的安装包,通常为用户想要安装的应用程序的安装包,该安装包通常为用户最后会选择进行安装的安装包。
又例如,在非官方渠道(如某些浏览器)中接收到用户的下载操作后进行下载的安装包,由于对电子设备而言,该安装包为未知来源的安装包,并且可能携带有病毒,最后用户可能不会选择对该安装包进行安装,而是重新通过官方渠道下载安装。又例如,对于下载方式为应用程序主动触发的下载,如浏览器某些网页在用户不知情的情况下,或者在用户并没有进行安装包下载操作的情况下,自动下载安装包,则该类安装包通常存在安全隐患,或者不是用户需要用到的应用程序的安装包,用户通常不会选择安装。
因此,可以确定目标安装包的下载方式,根据下载方式确定从下载目录存放所述目标安装包至安装目录的方式。
可选的,在本申请实施例中,可以是,若所述下载方式为接收到用户的更新操作后进行下载,或者是从官方渠道接收到用户的下载操作后进行下载,用户通常会对该安装包进行安装,并且由于应用程序更新较快,且安装包会占用存储空间,安装包保留价值不大,用户通常不会在安装后继续保留安装包,因此可以将所述目标安装包从所述下载目录下移动至所述安装目录下。若用户最后选择在安装后删除安装包,则可以不必再对下载目录下的目标安装包执行删除操作,节省系统资源。当然,若用户最后选择在安装后不删除安装包,可以再向下载目录存放该目标安装包。
可选的,可以是,若所述下载方式为在非官方渠道中接收到用户的下载操作后进行下载,用户可能取消本次对该安装包的安装而等到下次对该安装包进行安装,则可以复制所述下载目录下的所述目标安装包至所述安装目录下。在一种实施方式中,该安装包可能并非用户想当前安装的安装包,则在接收到取消安装的指令时,可以在下载目录下保留该安装包,以备下次安装或者传输给其他设备。在另一种实施方式中,可以检测该安装包是否包括危险内容,如病毒等,若包括,则在接收到取消安装的指令时,将该安装包从下载目录以及安装目录删除;若不包括,则在接收到取消安装的指令时,在下载目录下保留该安装包,将该安装包从安装目录删除。
可选的,若所述下载方式为应用程序主动触发的下载,则该应用程序的危险性较大,且被用户保留安装包的几率较小,可以将目标安装包移动至安装目录下。若监听到对该目标安装包取消安装的操作,则从安装目录下删除该目标安装包。
可选的,在本申请实施例中,也可以是通过数据分析确定目标安装包是复制到安装目录下还是移动到安装目录下。具体分析的数据可以是该电子设备对应的用户的数据,可以通过用户身份标识获得。
例如,通过用户的数据进行分析时,可以获取该用户在历史安装包处理时,不同下载方式保留安装包的比例。例如,统计该用户在更新后选择保留安装包在总的更新次数中的比例;统计在从官方渠道下载安装包后选择保留安装包占所有下载次数的比例等。
若某种下载方式保留安装包的比例大于预设比例,则用户最后保留该目标安装包的可能性较大,则在该下载方式下下载的目标安装包,通过复制的方式复制到安装目录下。在安装后若用户选择的为不删除安装包,则可以不再向下载目录存放安装包,减少系统资源消耗;在接收到取消安装的指令的情况下,也可以不再向下载目录存放安装包,删除安装目录下的安装包,保留下载目录下的安装包即可。
若某种下载方式保留安装包的比例小于或等于预设比例,则用户最后保留该目标安装包的可能性较小,在该下载方式下下载的目标安装包,可以通过移动的方式从下载目录下移动到安装目录下。
在本申请实施例中,根据,根据目标安装包的下载方式以及用户对安装包的处理习惯确定目标安装包为复制到安装目录还是移动到安装目录,减少安装包的复制以及删除操作,节省系统资源。
本申请实施例还提供了一种应用程序安装装置400。请参见图9,该装置400包括:安装包处理模块410,用于当检测到安装器的用户界面基于目标安装包启动时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址;监听模块420,用于监听作用于所述用户界面的操作指令;安装模块430,用于若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装。
在本申请实施例中,安装包处理模块410可以与监听模块420并行执行。
可选的,安装包处理模块410可以用于若监听到作用于所述用户界面的操作指令为取消安装指令时,还未开始将所述目标安装包向所述安装目录下存放,不再执行将所述目标安装包存放至安装目录下;若监听到作用于所述用户界面的操作指令为取消安装指令时,所述目标安装包的部分存放至所述安装目录下,停止执行将所述目标安装包存放到安装目录下,并且将已经存放至所述安装目录下的目标安装包的部分删除。
可选的,安装模块430可以用于若监听到作用于所述用户界面的操作指令为安装指令时,所述目标安装包还未完全存放至所述安装目录下,等待所述目标安装包完全存放至所述安装目录下时,执行所述对所述安装目录下的目标安装包进行安装的步骤。
可选的,安装包处理模块410可以用于从所述下载目录下将所述目标安装包复制到所述安装目录下。对应的,安装包处理模块410还可以用于若监听到作用于用户界面的操作指令为取消安装的指令,从所述安装目录下删除所述目标安装包。
可选的,安装包处理模块410可以用于将所述目标安装包从所述下载目录下移动至所述安装目录下。对应的,安装包处理模块410还可以用于若监听到作用于所述用户界面的操作指令为取消安装的指令,将所述目标安装包移回所述下载目录下。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图10,其示出了本申请实施例提供的一种电子设备500的结构框图。该电子设备500可以是手机、平板电脑、电脑、电子书等能够进行窗口刷新、且能够运行应用程序的电子设备。该电子设备包括处理器510以及存储器520,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时,所述处理器执行上述一个或多个实施例所描述的方法。
处理器510可以包括一个或者多个处理核。处理器510利用各种接口和线路连接整个电子设备500内的各个部分,通过运行或执行存储在存储器520内的指令、程序、代码集或指令集,以及调用存储在存储器520内的数据,执行电子设备500的各种功能和处理数据。可选地,处理器510可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器510可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器510中,单独通过一块通信芯片进行实现。
存储器520可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器520可用于存储指令、程序、代码、代码集或指令集,如用于实现本申请实施例提供的应用程序安装方法的指令或代码集。存储器520可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令、用于实现上述各个方法实施例的指令等。存储数据区还可以电子设备在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图11,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读存储介质600中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质600可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质600包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质600具有执行上述方法中的任何方法步骤的程序代码610的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码610可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种应用程序安装方法,其特征在于,所述方法包括:
当检测到目标安装包下载完成时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址;
监听作用于用户界面的操作指令;
若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装。
2.根据权利要求1所述的方法,其特征在于,所述获取下载目录下的所述目标安装包存放至安装目录下,包括:
从所述下载目录下将所述目标安装包复制到所述安装目录下。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若监听到作用于所述用户界面的操作指令为取消安装的指令,从所述安装目录下删除所述目标安装包。
4.根据权利要求1所述的方法,其特征在于,所述获取下载目录下的所述目标安装包存放至安装目录下,包括:
将所述目标安装包从所述下载目录下移动至所述安装目录下;
所述方法还包括:若监听到作用于所述用户界面的操作指令为取消安装的指令,将所述目标安装包移回所述下载目录下。
5.根据权利要求1所述的方法,其特征在于,所述获取下载目录下的所述目标安装包存放至安装目录下的步骤与所述监听作用于所述用户界面的操作指令的步骤并行执行。
6.根据权利要求5所述的方法,其特征在于,若监听到作用于所述用户界面的操作指令为安装指令时,所述目标安装包还未完全存放至所述安装目录下,等待所述目标安装包完全存放至所述安装目录下时,执行所述对所述安装目录下的目标安装包进行安装的步骤。
7.根据权利要求5所述的方法,其特征在于,若监听到作用于所述用户界面的操作指令为取消安装指令时,还未开始将所述目标安装包向所述安装目录下存放,不再执行将所述目标安装包存放至安装目录下;
若监听到作用于所述用户界面的操作指令为取消安装指令时,所述目标安装包的部分存放至所述安装目录下,停止执行将所述目标安装包存放到安装目录下,并且将已经存放至所述安装目录下的目标安装包的部分删除。
8.一种应用程序安装装置,其特征在于,所述装置包括:
安装包处理模块,用于当检测到目标安装包下载完成时,获取下载目录下的所述目标安装包存放至安装目录下,所述安装目录为用于存放待安装的安装包的地址;
监听模块,用于监听作用于用户界面的操作指令;
安装模块,用于若监听到作用于所述用户界面的操作指令为安装指令,对所述安装目录下的目标安装包进行安装。
9.一种电子设备,其特征在于,包括存储器以及处理器,所述存储器耦接到所述处理器,所述存储器存储指令,当所述指令由所述处理器执行时,所述处理器执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
CN201910093613.7A 2019-01-30 2019-01-30 应用程序安装方法、装置、电子设备及存储介质 Active CN109901849B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910093613.7A CN109901849B (zh) 2019-01-30 2019-01-30 应用程序安装方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910093613.7A CN109901849B (zh) 2019-01-30 2019-01-30 应用程序安装方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN109901849A CN109901849A (zh) 2019-06-18
CN109901849B true CN109901849B (zh) 2022-06-21

Family

ID=66944506

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910093613.7A Active CN109901849B (zh) 2019-01-30 2019-01-30 应用程序安装方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN109901849B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110851150B (zh) * 2019-11-12 2022-09-06 连尚(新昌)网络科技有限公司 用于安装应用的方法和设备
CN111800469A (zh) * 2020-06-09 2020-10-20 当家移动绿色互联网技术集团有限公司 平台管理方法、装置、存储介质和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101689193A (zh) * 2007-03-21 2010-03-31 雅虎公司 页面内安装器
CN103049692A (zh) * 2012-11-19 2013-04-17 北京小米科技有限责任公司 一种应用安装方法、装置和设备
CN106155748A (zh) * 2016-07-21 2016-11-23 北京奇虎科技有限公司 便携式移动终端及下载过程中主题图标的建立方法、装置
CN109032617A (zh) * 2018-06-21 2018-12-18 上海二三四五网络科技有限公司 一种自动删除安装包的控制方法及控制装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7062567B2 (en) * 2000-11-06 2006-06-13 Endeavors Technology, Inc. Intelligent network streaming and execution system for conventionally coded applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101689193A (zh) * 2007-03-21 2010-03-31 雅虎公司 页面内安装器
CN103049692A (zh) * 2012-11-19 2013-04-17 北京小米科技有限责任公司 一种应用安装方法、装置和设备
CN106155748A (zh) * 2016-07-21 2016-11-23 北京奇虎科技有限公司 便携式移动终端及下载过程中主题图标的建立方法、装置
CN109032617A (zh) * 2018-06-21 2018-12-18 上海二三四五网络科技有限公司 一种自动删除安装包的控制方法及控制装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Android应用管理一 -- APK包的安装、卸载和优化(PackageManagerService);Kitty_London;《CSDN博客https://blog.csdn.net/Kitty_Landon/article/details/46443849 》;20150610;第1-24页 *

Also Published As

Publication number Publication date
CN109901849A (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
CN105867947B (zh) 预置应用程序升级后的数据处理方法及装置
EP3493059B1 (en) Application data migration method and device
CN107832100B (zh) 一种apk插件的加载方法及其终端
CN107741844B (zh) 一种应用安装包的生成方法和装置
CN110825563B (zh) 系统恢复方法、装置以及电子设备
CN111427596B (zh) 一种软件升级的方法、装置及终端设备
CN104375856A (zh) 应用更新方法和装置
US10404568B2 (en) Agent manager for distributed transaction monitoring system
CN107291481B (zh) 一种组件更新方法、装置和系统
WO2017186066A1 (zh) 软件管理方法及装置
CN109117153B (zh) 应用程序的处理方法、装置、终端和存储介质
CN106951284B (zh) 基于安卓系统应用的用户界面升级方法、装置及智能终端
CN110457049B (zh) 实现插件自动化的方法、装置、电子设备及存储介质
CN109901849B (zh) 应用程序安装方法、装置、电子设备及存储介质
CN106886422A (zh) 软件升级方法及装置、电子设备
CN109408139A (zh) 应用程序的开启方法、装置、计算机设备及存储介质
CN108563472B (zh) 基于多开应用的服务插件加载方法及装置
CN113821439A (zh) 将函数注册到探测点的方法、装置、存储介质以及终端
CN109976790B (zh) 应用更新方法、装置、终端及存储介质
CN108268274B (zh) 应用管理方法、装置、存储介质及电子设备
US20230065440A1 (en) Method and apparatus for managing application
CN113396391A (zh) 应用程序启动的方法、装置、电子设备及存储介质
CN115712468A (zh) 一种时间信息处理方法、装置及计算设备、存储介质
CN111124627A (zh) 应用程序的调起者确定方法、装置、终端及存储介质
CN112882733B (zh) 应用更新方法及装置、电子设备、存储介质

Legal Events

Date Code Title Description
PB01 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