CN116225472A - 应用安装方法、装置、电子设备及介质 - Google Patents
应用安装方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN116225472A CN116225472A CN202310196671.9A CN202310196671A CN116225472A CN 116225472 A CN116225472 A CN 116225472A CN 202310196671 A CN202310196671 A CN 202310196671A CN 116225472 A CN116225472 A CN 116225472A
- Authority
- CN
- China
- Prior art keywords
- installation package
- application
- slave
- installation
- target
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种应用安装方法、装置、电子设备及介质,属于电子技术领域。该应用安装方法包括:获取第一应用的原始安装包,第一应用包含至少一个应用功能;基于原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;基于配置文件和目标从安装包,安装第二应用,安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。
Description
技术领域
本申请属于电子技术领域,具体涉及一种应用安装方法、装置、电子设备及介质。
背景技术
随着通信技术的发展,电子设备上可以安装的应用程序越来越多。
在相关技术中,对于具有操作系统的电子设备,用户触发电子设备从服务器下载应用程序的安装包,并在电子设备上安装该安装包。
然而,电子设备在安装该安装包时,会将该安装包包含的全部功能模块都安装在电子设备上,占用的存储空间较大。
发明内容
本申请实施例的目的是提供一种应用安装方法、装置、电子设备及介质,能够解决安装的应用程序占用存储空间大的问题。
为了解决上述技术问题,本申请是这样实现的:
第一方面,本申请实施例提供了一种应用安装方法,该方法包括:获取第一应用的原始安装包,第一应用包含至少一个应用功能;;基于原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;基于配置文件和目标从安装包,安装第一应用,安装后的第一应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。
第二方面,本申请实施例提供了一种应用安装装置,该装置包括:获取模块、生成模块和安装模块,其中:获取模块,用于获取第一应用的原始安装包,第一应用包含至少一个应用功能;生成模块,用于基于原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装模块,用于基于配置文件和目标从安装包,安装第二应用,安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,存储器存储可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如第一方面的方法的步骤。
第五方面,本申请实施例提供了一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现如第一方面的方法。
第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面的方法。
在本申请实施例中,电子设备可以获取第一应用的原始安装包,并基于原始安装包,生成配置文件和至少一个从安装包,从而基于配置文件和目标从安装包,安装第二应用。其中,第一应用包含至少一个应用功能,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。如此,在该方案中,通过将一个应用的安装包拆分成一个主安装包和多个从安装包,且多个从安装包之间相互独立,从而使得用户可以根据实际需求灵活选择其想要的安装的应用功能对应的从安装包进行安装,进而使得安装后的应用中仅包含其选择的从安装包对应的应用功能,避免应用安装的过程只能将原始安装包包含的所有功能模块都进行安装,因此,能够减少安装应用程序占用的存储空间。
附图说明
图1是本申请实施例提供的一种应用安装方法的流程示意图之一;
图2是本申请实施例提供的一种应用安装方法所应用的界面实例示意图之一;
图3是本申请实施例提供的一种应用安装方法所应用的界面实例示意图之二;
图4是本申请实施例提供的一种应用安装装置的结构示意图;
图5是本申请实施例提供的一种电子设备的结构示意图;
图6是本申请实施例提供的一种电子设备的硬件示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的应用方法、装置、电子设备及介质进行详细地说明。
现有技术中,一个应用程序其实是一个安装包文件,这个安装包文件能够被手机系统识别并且加载运行,需要一个合理的身份认证,这个身份认证就是配置文件,这个文件会编译在安装包文件中,系统通过配置文件来给安装包文件放行。
在相关技术中,电子设备在获取到一个应用的原始安装包之后,电子设备需要将该安装包含该应用的所有的应用功能进行安装。然而,该应用中的部分应用功能在后期使用的过程中可能会用不到,只用到其中一部分功能,因此,用户不能根据其需求选择其需要的应用功能进行安装,从而导致电子设备安装应用的便捷性较差。
在本申请实施例中,电子设备可以获取第一应用的原始安装包,并基于原始安装包,生成配置文件和至少一个从安装包,从而基于配置文件和目标从安装包,安装第二应用。其中,第一应用包含至少一个应用功能,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。如此,在该方案中,通过将一个应用的安装包拆分成一个主安装包和多个从安装包,且多个从安装包之间相互独立,从而使得用户可以根据实际需求灵活选择其想要的安装的应用功能对应的从安装包进行安装,进而使得安装后的应用中仅包含其选择的从安装包对应的应用功能,避免应用安装的过程只能将原始安装包包含的所有功能模块都进行安装,因此,能够减少安装应用程序占用的存储空间。
本申请实施例提供一种应用安装方法,如图1所示,该应用安装方法可以包括如下步骤201至步骤203:
步骤201:电子设备获取第一应用的原始安装包。
其中,上述第一应用包含至少一个应用功能。
在本申请实施例中,上述原始安装包可以为上述第一应用的完整安装包。
示例性地,上述第一应用可以为电子设备已安装的应用程序,也可以为电子设备未安装的应用程序。
需要说明的是,以上述第一应用为电子设备已安装的应用程序为例,电子设备在获取第一应用的原始安装包之前,可以根据用户对第一应用对应的第一应用标识的输入,触发电子设备获取第一应用的原始安装包。
示例性地,上述第一应用可以为以下任一项:视频类应用、游戏类应用、音乐类应用、即时通信类应用等。
步骤202:电子设备基于原始安装包,生成配置文件和至少一个从安装包。
其中,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,上述配置文件用于启动和运行第一应用的应用功能。
在本申请实施例中,电子设备可以将第一应用的原始安装包拆分为一个主安装包和至少一个从安装包,其中,上述从安装包是按照第一应用的功能集进行拆分的。
在本申请实施例中,上述主安装包中包含该第一应用对应的配置文件,该配置文件用于启动和运行该第一应用的应用功能。
需要说明的是,电子设备安装从安装包需要通过主安装包中的配置文件来进行安装,因此,需要先对包含配置文件的主安装包进行解析,以获取配置文件。
可以理解的是,由于上述主安装包中可以包含第一应用对应的配置文件,并且第一应用对应的配置文件为安装第一应用的必要文件,因此上述主安装包可以独立安装。相应的,由于从安装包中不包含第一应用对应的配置文件,因此,从安装包不能独立安装,必须配合主安装包才能一起安装。
应注意的是,没有配置文件意味着从安装包没有注册认证信息,所以从安装包对应的应用功能不能被展示使用。
示例性地,以安卓系统为例,上述的配置文件可以为Manifest文件。即,上述主安装包中可以包含Manifest文件,上述配置文件可以包括:注册身份信息、界面信息、使用范围信息等。
从安装包中不包含Manifest文件。
需要说明的是,所有安卓应用程序的运行都依赖Manifest文件指引,Manifest文件拥有几大主要作用:它指定应用程序包、提供应用组件的形式化描述,此外还负责声明权限、必要的API级别以及链接库等。
具体的,Manifest文件可分为以下几个部分:
(1)Manifest部分:包名称和应用版本号;
(2)Uses-SDK使用范围部分:负责定义最低必要API级别以及大家在测试项目时所设定的目标级别;
(3)Application应用部分:主要属性分别为图标、标签和主题条目;
(4)Activity界面部分:在这里有标注的Activity界面就被认为是系统认证通过,可展示的界面,例如:
<activity
android:name="com.example.myfirstapp.MainActivity"android:label="@string/app_name">
这里的com.example.myfirstapp.MainActivity就是被认可的界面信息,只有通过这种注册方式,才可以被系统认可并展示。
此外,由于Manifest文件是标识一个安装包APK文件身份的唯一文件,一个应用程序只能有一个Manifest文件。
示例性地,由于一个应用的原始安装包只能包含一个Manifest文件,因此,在将一个应用的原始安装包拆分为一个主安装包和至少一个从安装包之后,只有主安装包包含Manifest文件,而从安装包的启动和运行则依赖主安装包的Manifest文件。
示例性地,上述主安装包可以为主模块APK。
示例性地,上述从安装包可以为从模块APK。
在本申请实施例中,上述一个从模块APK对应第一应用的一个应用功能。
需要说明的是,电子设备可以将安装包运行必须的含有Manifest文件的那部分结构化为主模块APK,其他部分按照各功能集分类拆分为多个从模块APK。
示例性地,电子设备安装从模块APK需要通过主模块APK中的Manifest文件(即上述配置文件),因此,需要先对包含Manifest文件的主模块APK进行解析,以获取Manifest文件。
可选地,在本申请实施例中,上述步骤202具体可以通过如下步骤202a1和步骤202a2实现:
步骤202a1:电子设备解析原始安装包,以得到配置文件和每个应用功能的信息。
在本申请实施例中,电子设备在将第一应用的原始安装包拆分为配置文件和至少一个从安装包之前,先对安装包进行解析,以获取第一应用的配置文件和每个应用功能对应的信息。
示例性地,上述每个应用功能的信息包括以下至少一项:界面信息、用户信息、属性信息、类加载器等。
其中,上述界面信息包括以下至少一项:界面中控件的显示位置、界面中控件的显示尺寸、界面显示的优先级等。上述用户信息包括以下至少一项:用户账号信息、账号密码信息等。上述属性信息包括以下至少一项:应用功能的图标、应用功能的名称等。
步骤202a2:电子设备基于每个应用功能的信息,生成每个应用功能各自对应从安装包。
在本申请实施例中,由于一个应用功能对应一个从安装包,电子设备基于每个应用功能对应的信息,生成与每个应用功能各自对应的从安装包。
步骤203:电子设备基于配置文件和目标从安装包,安装第二应用。
在本申请实施例中,安装后的第二应用中仅包含目标从安装包对应的目标应用功能。
在本申请实施例中,上述目标从安装包为至少一个从安装包中的一个或多个安装包。
举例说明,以安卓系统为例,电子设备在启动和运行从安装包时,需要先通过主安装包中的配置文件完成注册,也就是说,安装一个从安装包需要借助主安装包中的配置文件才能完成。因此,电子设备可以根据用户输入确定的目标从安装包和配置文件,安装第二应用。
示例性地,电子设备可以在配置文件中的Mainactivity中转空界面的界面创建方法中调用目标从安装包的界面创建方法,将目标从安装包的基础界面以安卓标准规范的方式创建出来,进而配置文件通过中转空界面和基础界面帮助目标从安装包完成注册信息。
在本申请实施例中,电子设备可以通过Manifest文件(即上述配置文件),对上述目标从安装包包含的目标应用功能的信息进行注册,以将仅包含该目标应用功能的第二应用安装至电子设备中。
示例性地,在上述目标从安装包为一个从安装包的情况下,电子设备可以基于配置文件和这一个从安装包,安装仅包含这一个从安装包对应的一个应用功能的第二应用。
举例说明,以第一应用为APP1为例,假设电子设备已经安装了APP1,电子设备接收用户对APP1图标的点击输入,响应于该点击输入,触发电子设备获取APP1的原始安装包,并将APP1的原始安装包拆分为一个配置文件和两个从安装包。其中,这两个从安装包中的一个从安装包对应APP1中的应用功能1,另一个从安装包对应APP1中的应用功能2。电子设备再基于用户需求安装应用功能1对应的从安装包(即上述目标从安装包),然后基于配置文件和应用功能1对应的从安装包,安装应用功能1对应的第二应用。示例性地,在上述目标从安装包为多个从安装包的情况下,电子设备可以基于配置文件和这多个从安装包,分别安装仅包含每个从安装包对应的应用功能的第二应用,即第二应用为多个应用,每个第二应用对应一个应用功能。
举例说明,以第一应用为APP1为例,假设电子设备已经安装了APP1,电子设备接收用户对APP1图标的点击输入,响应于该点击输入,触发电子设备获取APP1的原始安装包,并将APP1的原始安装包拆分为一个配置文件和五个从安装包。其中,这五个从安装包中的一个从安装包对应APP1中的应用功能1-5。电子设备再基于用户需求安装应用功能1-3对应的3个从安装包(即上述目标从安装包),然后基于配置文件和应用功能1-3对应的3个从安装包,安装应用功能1-3对应的APP2、APP3、APP4(即上述第二应用)。
接着,电子设备安装有APP2对应的应用功能1,APP3对应的应用功能2,基于此,电子设备在接收到用户对APP2的图标的点击输入后,可以直接进入应用功能1界面,然后,在接收到用户退出APP2之后,再接收用户对APP3的图标的点击输入,直接进入APP3的应用功能2界面。从而避免用户进入APP1中使用完应用功能1之后再去查找应用功能2的繁琐步骤,因此,可以简化用户进入APP1查找应用功能1,再进入APP2查找应用功能2的步骤,从而提升电子设备切换不同应用功能的便捷性。
在本申请实施例中,电子设备可以获取第一应用的原始安装包,并基于原始安装包,生成配置文件和至少一个从安装包从而基于配置文件和目标从安装包,安装第二应用。其中,第一应用包含至少一个应用功能,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。如此,在该方案中,通过将一个应用的安装包拆分成一个主安装包和多个从安装包,且多个从安装包之间相互独立,从而使得用户可以根据实际需求灵活选择其想要的安装的应用功能对应的从安装包进行安装,进而使得安装后的应用中仅包含其选择的从安装包对应的应用功能,避免应用安装的过程只能将原始安装包包含的所有功能模块都进行安装,因此,能够减少安装应用程序占用的存储空间。
可选地,在本申请实施例中,配置文件包括主页面的页面信息,任一从安装包包含任一从安装包对应应用功能的基础页面的页面信息;上述步骤203具体可以通过如下步骤203a1和步骤203a2实现:
步骤203a1:电子设备基于主页面的页面信息与目标从安装包中的基础页面的页面信息,将主页面与基础页面进行匹配对接,,并在匹配对接成功后,通过主页面与基础页面,,调用目标从安装包中的目标应用功能的信息。
在本申请实施例中,上述配置文件可以为Manifest文件。
示例性地,上述Manifest文件用于独立安装应用。
示例性地,上述主页面信息对应的主页面可以为中转空界面,该中转空页面中不显示任何内容。上述的基础页面信息对应的基础页面可以为基础界面。
在本申请实施例中,上述目标应用功能的信息包括目标应用功能的类加载器、目标应用功能的首页界面、目标应用功能的功能标识等。
示例性地,上述类加载器用于实时加载目标应用功能。
需要说明的是,上述实时加载为在需要使用上述目标应用功能时,通过上述类加载器运行上述目标应用功能;在不需要使用上述目标应用功能时,该类加载器不进行加载。
示例性地,以配置文件为Manifest文件为例。上述Manifest文件中的Mainactivity中转空界面(即上述主页面),这个空界面不显示任何内容,只是将它当做一个中转站,用来对接目标从安装包的基础界面,用它来搭建桥梁,帮助目标从安装包的基础界面(即上述基础页面)完成身份认证。
可以理解的是,主安装包中用于沟通目标从模块APK运行的那部分桥梁就是Manifest文件(即上述配置文件)的中的Mainactivity中转空界面(即上述主页面信息),而目标从安装包中用于沟通Manifest文件的那部分桥梁就是基础界面(即上述基础页面信息)。具体地,Manifest文件中会注册目标从安装包启动的基础界面,只有在Manifest文件的带领下才有这个荣幸获得系统认可,自由运行。
示例性地,电子设备可以在配置文件中的Mainactivity中转空界面的界面创建方法中调用目标从安装包的界面创建方法,将目标从安装包的展示界面以安卓标准规范的方式创建出来,进而帮助目标从安装包的基础界面完成注册信息。
步骤203a2:电子设备基于配置文件和目标应用功能的信息,安装第二应用。
在本申请实施例中,电子设备可以通过上述主安装包中Manifest文件,对上述目标应用功能的信息进行注册,以将仅包含该目标应用功能的第二应用安装至电子设备中。
如此,电子设备通过将配置文件中的主页面与目标从安装包中的基础页面完成匹配对接,以帮助基础页面完成身份认证,并在认证成功后,仅将目标从安装包对应的目标应用功能加载至第二应用,从而能够使得用户更加便捷的使用应用功能。
可选地,在本申请实施例中,上述步骤203之前,本申请实施例提供的应用安装方法还包括如下步骤301和步骤302:
步骤301:电子设备显示至少一个从安装包的安装包标识。
需要说明的是,电子设备在基于配置文件和目标从安装包,安装第二应用之前,会显示至少一个从安装包的安装包标识,以供用户确定目标从安装包。
示例性地,上述一个安装包的标识对应一个从安装包。
步骤302:电子设备接收对至少一个从安装包对应的安装包标识的第一输入,并将第一输入对应的从安装包确定为目标从安装包。
示例性地,上述第一输入用于从至少一个从安装包中选择目标从安装包的输入。
示例性地,上述第一输入可以为以下任一项:长按输入、预设次数的点击输入、滑动输入、语音输入、语音输入、手势输入等,具体的可以根据实际需求设定。
其中,该第一输入可以包括一个输入或多个输入。
在第一输入包括多个输入的情况下,该多个输入中的每个输入的输入类型可以相同或不同,该多个输入具体可以为连续的输入。
需要说明的是,上述“连续的输入”可以理解为:相邻输入之间的时间间隔小于或等于预设阈值的输入,或者,相邻输入之间不存在其他输入的输入。
举例说明,以电子设备上已经安装了应用程序APP1为例,如图2所示,在显示APP1图标的情况下,电子设备可以接收用户对APP1图标的点击输入,触发电子设备获取APP1的原始安装包,并将该原始安装包拆分为一个配置文件和至少一个从安装包,并显示至少一个从安装包的标识21。接着,电子设备可以接收用户对至少一个从安装包中的从安装包1的标识22的点击输入,将从安装包1确定为目标从安装包。
在本申请实施例中,电子设备可以通过上述主安装包中配置文件,对上述目标从安装包包含的应用功能的信息进行注册,以将仅包含该目标应用功能的第二应用安装至电子设备中。
可选地,在本申请实施例中,上述步骤301具体可以通过如下步骤301a:
步骤301a:电子设备按照至少一个从安装包的优先级,显示至少一个从安装包的安装包标识。
其中,至少一个从安装包的优先级是基于以下至少之一确定的:
从安装包对应的功能优先级;
从安装包对应的功能使用频率。
示例性地,上述“从安装包对应的功能优先级”可以理解为,根据从安装包对应的功能的重要程度由高至低进行排序。
示例性地,上述“从安装包对应的功能使用频率”可以理解为,按照用户使用从安装包对应的功能的频次,由高至低进行排序。
一种示例中,电子设备可以按照至少一个从安装包对应的功能优先级,显示至少一个从安装包的安装包标识。
另一种示例中,电子设备可以按照至少一个从安装包对应的功能使用频率,显示至少一个从安装包的安装包标识。
在本申请实施例中,电子设备可以将功能使用频率较高的从安装包的安装包标识进行强化显示,并将功能使用频率较低的从安装包的安装包标识进行弱化显示,以方便用户快速选择功能使用频率较高的从安装包。
举例说明,假设以第一应用为APP1为例,以至少一个从安装包的安装包标识为五个安装包标识为例,如图3所示,电子设备可以按照从安装包对应的功能使用频率由高至低的顺序,显示这五个从安装包的安装包标识。其中,前三个从安装包对应的功能使用频率较高,则对这三个从安装包的安装包标识31进行放大显示;后面两个从安装包对应的功能使用频率较低,则对这两个从安装包的安装包标识32进行缩小显示。
如此,由于电子设备可以根据至少一个从安转包的优先级,显示至少一个从安装包的安装包标识,这样可以方便用户快速选择目标从安装包,从而提升选择目标从安装包的效率。
可选地,在本申请实施例中,本申请实施例提供的应用安装方法还包括如下步骤401和步骤402:
步骤401:电子设备接收对至少一个从安装包中的第一从安装包对应的安装包标识的第二输入。
示例性地,上述第一从安装包与上述目标从安装包不同。
示例性地,上述第一从安装包可以为一个从安装包或多个从安装包。
需要说明的是,上述第一从安装包可以为用户不会使用的应用功能对应的从安装包。示例性地,上述第二输入用于卸载上述第一从安装包的输入。
示例性地,上述第二输入可以为以下任一项:长按输入、预设次数的点击输入、滑动输入、语音输入、语音输入、手势输入等,具体的可以根据实际需求设定。
步骤402:电子设备响应于第二输入,卸载第一从安装包。
需要说明的是,电子设备可以根据用户对第一从安装包的第二输入,将上述第一从安装包卸载。
如此,由于电子设备可以根据用户对第一从安装包的第二输入,将第一从安装包进行卸载,这样可以节省第一从安装包占用电子设备的内存空间,因此,能够根据用户需要选择卸载的安装包,进而增加了电子设备的存储空间。
以下将以具体示例来对本申请提供的技术方案进行示例性说明。
本申请提供的应用安装方法可以包括如下步骤S1至步骤S8:
S1、接收用户对目标从安装包的输入。
S2、安卓系统查询主安装包中的配置文件寻找主界面信息Mainactivity。
S3、配置文件中的Mainactivity主界面执行中转,向目标从安装包发出主界面接口请求。
S4、目标从安装包中的基础界面负责与Mainactivity主界面匹配对接。
S5、配置文件中的运行Mainactivity主界面,Mainactivity主界面与目标的基础界面匹配对接成功,则目标从安装包可通过这个对接,将目标从安装包的类加载器以及各类信息传递到配置文件。
S6、基础界面获取到目标从安装包的功能集合,并从目标从安装包的功能集合获取到目标从安装包的首页界面。
S7、基础界面将这个首页界面传回给配置文件中的Mainactivity主界面。
S8、配置文件中的Mainactivity主界面的界面创建方法中调用目标从安装包的界面创建方法,将目标从装包的展示界面以安卓标准规范的方式创建出来,进而帮助目标从安装包的基础界面完成注册信息。
本申请实施例提供的应用安装方法,执行主体可以为应用安装装置。本申请实施例中以应用安装装置执行应用安装方法为例,说明本申请实施例提供的应用安装装置。
本申请实施例提供一种应用安装装置,如图4所示,该应用安装装置400包括:获取模块401、生成模块402和安装模块403,其中:获取模块401,用于获取第一应用的原始安装包,第一应用包含至少一个应用功能;生成模块402,用于基于原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装模块403,用于基于配置文件和目标从安装包,安装第二应用,安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。
可选地,在本申请实施例中,上述装置还包括解析模块;解析模块,用于解析原始安装包,以得到配置文件和每个应用功能的信息;生成模块402,具体用于基于每个应用功能的信息,生成每个应用功能各自对应从安装包。
可选地,在本申请实施例中,配置文件包括主页面的页面信息,任一从安装包包含任一从安装包对应应用功能的基础页面的页面信息;上述装置还包括处理模块;处理模块,用于基于主页面的页面信息与目标从安装包中的基础页面的页面信息,将主页面与基础页面进行匹配对接,并在匹配对接成功之后,通过主页面与基础页面,调用目标从安装包中的目标应用功能的信息;安装模块403,具体用于基于配置文件和目标应用功能的信息,安装第二应用。
可选地,在本申请实施例中,上述装置还包括:显示模块和接收模块;显示模块,用于显示至少一个从安装包的安装包标识;接收模块,用于接收对至少一个从安装包对应的安装包标识的第一输入,并将第一输入对应的从安装包确定为目标从安装包。
可选地,在本申请实施例中,上述显示模块,具体用于按照至少一个从安装包的优先级,显示至少一个从安装包的安装包标识;其中,至少一个从安装包的优先级是基于以下至少之一确定的:从安装包对应的功能优先级;从安装包对应的功能使用频率。
可选地,在本申请实施例中,上述装置还包括:卸载装置;接收模块,还用于接收对至少一个从安装包中的第一从安装包对应的安装包标识的第二输入;卸载模块,用于响应于第二输入,卸载第一从安装包。
本申请实施例提供的应用安装装置中,应用安装装置可以获取第一应用的原始安装包并基于原始安装包,生成配置文件和至少一个从安装包,从而基于配置文件和目标从安装包,安装第二应用。其中,第一应用包含至少一个应用功能,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。如此,在该方案中,通过将一个应用的安装包拆分成一个主安装包和多个从安装包,且多个从安装包之间相互独立,从而使得用户可以根据实际需求灵活选择其想要的安装的应用功能对应的从安装包进行安装,进而使得安装后的应用中仅包含其选择的从安装包对应的应用功能,避免应用安装的过程只能将原始安装包包含的所有功能模块都进行安装,因此,能够减少安装应用程序占用的存储空间。
本申请实施例中的应用安装装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personalcomputer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的应用安装装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为iOS操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的应用安装装置能够实现图1至图3的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,如图5所示,本申请实施例还提供一种电子设备600,包括处理器601和存储器602,存储器602上存储有可在所述处理器601上运行的程序或指令,该程序或指令被处理器601执行时实现上述应用安装方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
图6为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、以及处理器110等部件。
本领域技术人员可以理解,电子设备100还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图6中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
其中,上述处理器110,用于获取第一应用的原始安装包,第一应用包含至少一个应用功能;处理器110,还用于基于原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;处理器110,还用于基于配置文件和目标从安装包,安装第二应用,安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。
可选地,在本申请实施例中,处理器110,具体用于解析原始安装包,以得到配置文件和每个应用功能的信息;并基于每个应用功能的信息,生成每个应用功能各自对应从安装包。
可选地,在本申请实施例中,配置文件包括主页面的页面信息,任一从安装包包含任一从安装包对应应用功能的基础页面的页面信息;处理器110,具体用于基于主页面的页面信息与目标从安装包中的基础页面的页面信息,将主页面与基础页面进行匹配对接,并在匹配对接成功之后,通过主页面与基础页面,调用目标从安装包中的目标应用功能的信息;并基于配置文件和目标应用功能的信息,安装第二应用。
可选地,在本申请实施例中,显示单元106,用于显示至少一个从安装包的安装包标识;用户输入单元107,用于接收对至少一个从安装包对应的安装包标识的第一输入,并将第一输入对应的从安装包确定为目标从安装包。
可选地,在本申请实施例中,上述显示单元106,具体用于按照至少一个从安装包的优先级,显示至少一个从安装包的安装包标识;其中,至少一个从安装包的优先级是基于以下至少之一确定的:从安装包对应的功能优先级;从安装包对应的功能使用频率。
可选地,在本申请实施例中,用户输入单元107,还用于接收对至少一个从安装包中的第一从安装包对应的安装包标识的第二输入;处理器110,还用于响应于第二输入,卸载第一从安装包。
本申请实施例中,电子设备可以获取第一应用的原始安装包,并基于原始安装包,生成配置文件和至少一个从安装包,从而基于配置文件和目标从安装包,安装第二应用。其中,第一应用包含至少一个应用功能,一个从安装包对应第一应用的一个应用功能,从安装包之间相互独立,配置文件用于启动和运行第一应用的应用功能;安装后的第二应用中仅包含目标从安装包对应的目标应用功能,目标从安装包为至少一个从安装包中的一个或多个安装包。如此,在该方案中,通过将一个应用的安装包拆分成一个主安装包和多个从安装包,且多个从安装包之间相互独立,从而使得用户可以根据实际需求灵活选择其想要的安装的应用功能对应的从安装包进行安装,进而使得安装后的应用中仅包含其选择的从安装包对应的应用功能,避免应用安装的过程只能将原始安装包包含的所有功能模块都进行安装,因此,能够减少安装应用程序占用的存储空间。
应理解的是,本申请实施例中,输入单元104可以包括图形处理器(GraphicsProcessing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元106可包括显示面板1061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板1061。用户输入单元107包括触控面板1071以及其他输入设备1072中的至少一种。触控面板1071,也称为触摸屏。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器109可以包括易失性存储器或非易失性存储器,或者,存储器109可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器109包括但不限于这些和任意其它适合类型的存储器。
处理器110可包括一个或多个处理单元;可选的,处理器110集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述应用安装方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述应用安装方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述应用安装方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (14)
1.一种应用安装方法,其特征在于,所述方法包括:
获取第一应用的原始安装包,所述第一应用包含至少一个应用功能;
基于所述原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应所述第一应用的一个应用功能,所述从安装包之间相互独立,所述配置文件用于启动和运行所述第一应用的应用功能;
基于所述配置文件和目标从安装包,安装第二应用,安装后的所述第二应用中仅包含所述目标从安装包对应的目标应用功能,所述目标从安装包为所述至少一个从安装包中的一个或多个安装包。
2.根据权利要求1所述的方法,其特征在于,所述基于所述原始安装包,生成配置文件和至少一个从安装包,包括:
解析所述原始安装包,以得到所述配置文件和每个所述应用功能的信息;
基于每个所述应用功能的信息,生成每个所述应用功能各自对应从安装包。
3.根据权利要求1所述的方法,其特征在于,所述配置文件包括主页面的页面信息,任一所述从安装包包含任一所述从安装包对应应用功能的基础页面的页面信息;
所述基于所述配置文件和目标从安装包,安装第二应用,包括:
基于所述主页面的页面信息与所述目标从安装包中的基础页面的页面信息,将所述主页面与所述基础页面进行匹配对接,并在匹配对接成功之后,通过所述主页面与所述基础页面,调用所述目标从安装包中的所述目标应用功能的信息;
基于所述配置文件和所述目标应用功能的信息,安装所述第二应用。
4.根据权利要求1所述的方法,其特征在于,基于所述配置文件和目标从安装包,安装第二应用之前,所述方法还包括:
显示所述至少一个从安装包的安装包标识;
接收对所述至少一个从安装包对应的安装包标识的第一输入,并将所述第一输入对应的从安装包确定为目标从安装包。
5.根据权利要求4所述的方法,其特征在于,所述显示所述至少一个从安装包的安装包标识,包括:
按照所述至少一个从安装包的优先级,显示所述至少一个从安装包的安装包标识;
其中,所述至少一个从安装包的优先级是基于以下至少之一确定的:
所述从安装包对应的功能优先级;
所述从安装包对应的功能使用频率。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收对所述至少一个从安装包中的第一从安装包对应的安装包标识的第二输入;
响应于所述第二输入,卸载所述第一从安装包。
7.一种应用安装装置,其特征在于,所述装置包括:获取模块、生成模块和安装模块,其中:
所述获取模块,用于获取第一应用的原始安装包,所述第一应用包含至少一个应用功能;
所述生成模块,用于基于所述原始安装包,生成配置文件和至少一个从安装包,一个从安装包对应所述第一应用的一个应用功能,所述从安装包之间相互独立,所述配置文件用于启动和运行所述第一应用的应用功能;
所述安装模块,用于基于所述配置文件和目标从安装包,安装第二应用,安装后的所述第二应用中仅包含所述目标从安装包对应的目标应用功能,所述目标从安装包为所述至少一个从安装包中的一个或多个安装包。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括解析模块;
所述解析模块,用于解析所述原始安装包,以得到所述配置文件和每个所述应用功能的信息;
所述生成模块,具体用于基于每个所述应用功能的信息,生成每个所述应用功能各自对应从安装包。
9.根据权利要求7所述的装置,其特征在于,所述配置文件包括主页面的页面信息,任一所述从安装包包含任一所述从安装包对应应用功能的基础页面的页面信息;所述装置还包括:处理模块;
所述处理模块,用于基于所述主页面的页面信息与所述目标从安装包中的基础页面的页面信息,将所述主页面与所述基础页面进行匹配对接,并在匹配对接成功之后,通过所述主页面与所述基础页面,调用所述目标从安装包中的所述目标应用功能的信息;
所述安装模块,具体用于基于所述配置文件和所述目标应用功能的信息,安装所述第二应用。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:显示模块和接收模块;
所述显示模块,用于显示所述至少一个从安装包的安装包标识;
所述接收模块,用于接收对所述至少一个从安装包对应的安装包标识的第一输入,并将所述第一输入对应的从安装包确定为目标从安装包。
11.根据权利要求10所述的装置,其特征在于,
所述显示模块,具体用于按照所述至少一个从安装包的优先级,显示所述至少一个从安装包的安装包标识;
其中,所述至少一个从安装包的优先级是基于以下至少之一确定的:
所述从安装包对应的功能优先级;
所述从安装包对应的功能使用频率。
12.根据权利要求7所述的装置,其特征在于,所述装置还包括:卸载装置;
所述接收模块,还用于接收对所述至少一个从安装包中的第一从安装包对应的安装包标识的第二输入;
所述卸载模块,用于响应于所述第二输入,卸载所述第一从安装包。
13.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-6任一项所述的应用安装方法的步骤。
14.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-6任一项所述的应用安装方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310196671.9A CN116225472A (zh) | 2023-03-01 | 2023-03-01 | 应用安装方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310196671.9A CN116225472A (zh) | 2023-03-01 | 2023-03-01 | 应用安装方法、装置、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116225472A true CN116225472A (zh) | 2023-06-06 |
Family
ID=86576533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310196671.9A Pending CN116225472A (zh) | 2023-03-01 | 2023-03-01 | 应用安装方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116225472A (zh) |
-
2023
- 2023-03-01 CN CN202310196671.9A patent/CN116225472A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109408136B (zh) | 信息处理方法、装置、存储介质及电子设备 | |
CN106502703B (zh) | 一种函数调用方法和装置 | |
CN108287917B (zh) | 文件打开方法、装置、存储介质及电子设备 | |
CN109726067B (zh) | 一种进程监控方法以及客户端设备 | |
CN108549568B (zh) | 应用入口处理方法、装置、存储介质及电子设备 | |
US9875109B2 (en) | Method and apparatus for generating user adaptive application in mobile terminal | |
CN112486444B (zh) | 投屏方法、装置、设备和可读存储介质 | |
CN103443763A (zh) | 包含对重写虚拟函数的调用的支持的isa桥接 | |
CN111723002A (zh) | 一种代码调试方法、装置、电子设备及存储介质 | |
CN112099684A (zh) | 一种搜索展示方法、装置及电子设备 | |
CN106796521B (zh) | 独立于产品发布的api版本控制 | |
CN107423291B (zh) | 一种数据翻译方法以及客户端设备 | |
CN112559069A (zh) | 子应用的运行控制方法、装置、存储介质和电子设备 | |
CN111766987B (zh) | 应用程序管理方法、装置及电子设备 | |
EP2450791A1 (en) | Method for updating media database in portable terminal | |
WO2019139740A1 (en) | Extensible input stack for processing input device data | |
CN111580883B (zh) | 应用程序启动方法、装置、计算机系统和介质 | |
CN109145598B (zh) | 脚本文件的病毒检测方法、装置、终端及存储介质 | |
CN116225472A (zh) | 应用安装方法、装置、电子设备及介质 | |
CN114489698A (zh) | 应用程序安装方法和装置 | |
CN114840194A (zh) | 代码及操作系统的生成方法和装置、服务器及电子设备 | |
CN114070892A (zh) | 数据传输方法和装置 | |
CN115269170A (zh) | 内存申请方法及相关设备 | |
CN111488286A (zh) | 一种Android模块独立开发的方法及装置 | |
WO2022166553A1 (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 |