CN117667115A - 应用程序的安装方法及电子设备 - Google Patents
应用程序的安装方法及电子设备 Download PDFInfo
- Publication number
- CN117667115A CN117667115A CN202211033004.0A CN202211033004A CN117667115A CN 117667115 A CN117667115 A CN 117667115A CN 202211033004 A CN202211033004 A CN 202211033004A CN 117667115 A CN117667115 A CN 117667115A
- Authority
- CN
- China
- Prior art keywords
- application
- platform
- target
- application program
- application platform
- 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
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000009434 installation Methods 0.000 claims abstract description 251
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012163 sequencing technique Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 7
- 238000004891 communication Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 24
- 239000010410 layer Substances 0.000 description 18
- 238000004806 packaging method and process Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 239000000284 extract Substances 0.000 description 12
- 238000007726 management method Methods 0.000 description 12
- 238000012795 verification Methods 0.000 description 12
- 238000013461 design Methods 0.000 description 9
- 238000010295 mobile communication Methods 0.000 description 7
- 230000001413 cellular effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 241000700605 Viruses Species 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本申请实施例提供一种应用程序的安装方法及电子设备,涉及终端技术领域,以解决现有技术中在安装应用程序的过程中存在较大的安全问题。该方法中,电子设备在接收用户输入的指示从第一应用平台安装目标应用程序的安装操作后,从第一应用平台获取预设信息。预设信息包括共享目标应用程序的应用平台的平台信息,应用平台至少包括第一应用平台。电子设备可以根据预设信息,确定是否安装目标应用程序,从而降低电子设备安装目标应用程序时出现安全问题的风险。本申请应用在电子设备安装应用程序的过程中。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种应用程序的安装方法及电子设备。
背景技术
应用商店(application atore,Apps)也可称为应用市场、应用平台,是一种为如手机、平板电脑等电子设备提供应用程序(application,APP)资源的服务型平台。应用程序资源包括游戏类别的应用程序、视频播放类别的应用程序、办公类别的应用程序等,用户可以在应用平台上下载并安装各类应用程序至电子设备中,以满足自身的使用需求。但是,应用程序资源在各个应用平台之间通常是可以共享的,例如,应用程序A上架到应用平台1后,应用平台2可以从应用平台1获取应用程序A,并上架到自身的平台上。在共享过程中,难免会出现应用程序被篡改的情况发生,电子设备在下载和安装应用程序时,无法检测应用程序是否被篡改。
目前,应用程序中通常携带开发者的签名证书。签名证书即开发者在应用程序中写入特定的代码作为标记,用于保证应用程序的完整性。电子设备在下载和安装应用程序时,可以校验开发者的签名证书。若应用程序中具有完整的签名证书,说明应用程序完整,被篡改的风险低,则允许安装该应用程序。
但是,上述开发者的签名证书并非权威机构颁发的签名证书。这就导致应用程序在被共享的过程中,攻击者可以随意篡改应用程序的签名证书,存在安全隐患。
发明内容
本申请实施例提供一种应用程序的安装方法及电子设备,可以降低电子设备安装应用程序时出现安全问题的风险。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,本申请提供一种应用程序的安装方法,该方法可以应用于电子设备。该方法中,电子设备接收安装操作。安装操作用于指示电子设备从第一应用平台安装目标应用程序。之后,电子设备响应于安装操作,获取预设信息,并根据预设信息,确定是否安装目标应用程序。其中,预设信息包括共享目标应用程序的应用平台的平台信息。平台信息包括应用平台的名称信息、开发者信息以及网络地址中的至少一种。应用平台包括第一应用平台。
上述应用程序的安装方法中,电子设备可以根据预设信息确定是否安装目标应用程序。与现有的电子设备直接安装目标应用程序相比,通过增加电子设备在安装目标应用程序时的监管手段,能够降低电子设备安装目标应用程序时出现安全问题的风险。
在第一方面的一种可实现方式中,若预设信息中不包括任何第二应用平台的平台信息,确定安装目标应用程序。其中,第二应用平台与所述第一应用平台不同。
这种实现方式中,电子设备通过检测预设信息中是否包括第二应用平台的平台信息,从而确定第一应用平台是否为由开发者上传目标应用程序的应用平台。若预设信息中不包括任何第二应用平台的平台信息,则说明第一应用平台是由开发者直接上传目标应用程序的应用平台(本申请中也将该类应用平台描述为一级应用平台),电子设备直接从该第一应用平台安装目标应用程序,目标程序被篡改的风险较低。因此,电子设备可以安装目标应用程序,能够降低电子设备安装目标应用程序时出现安全问题的风险。
在第一方面的一种可实现方式中,若所述预设信息中包括至少一个第二应用平台的平台信息,根据第一应用平台的平台信息和至少一个第二应用平台的平台信息确定是否安装目标应用程序。
这种实现方式中,若预设信息中包括至少一个第二应用平台的平台信息,则说明第一应用平台不是由开发者上传目标应用程序的应用平台,即至少一个第二应用平台与第一应用平台共享目标应用程序,目标应用程序上架在第二应用平台与第一应用平台时均存在被篡改的风险。因此,需要根据第一应用平台的平台信息和至少一个第二应用平台的平台信息确定是否安装目标应用程序,能够降低电子设备安装目标应用程序时出现安全问题的风险。
在第一方面的一种可实现方式中,若第一应用平台和第二应用平台中不包括第三应用平台,确定安装目标应用程序。其中,第三应用平台是在电子设备上不具有安装权限的应用平台。
这种实现方式中,电子设备通过预先对多个应用平台开通安装权限,从而加大对应用平台的管控,只有在电子设备上具有安装权限的应用平台才能将上架的应用程序安装在电子设备中,能够降低电子设备安装目标应用程序时出现安全问题的风险。
在第一方面的一种可实现方式中,若第一应用平台和第二应用平台的总数量小于预设阈值,确定安装所述目标应用程序。
这种实现方式中,由于共享目标应用程序的应用平台越多,目标应用程序被篡改的风险越高。因此,可以预先在电子设备中设置阈值,当共享目标应用程序的应用平台的数量小于预设阈值时,目标应用程序才被允许安装在电子设备中,能够降低电子设备安装目标应用程序时出现安全问题的风险。
在第一方面的一种可实现方式中,预设信息还包括安装目标应用程序所需的安装条件。目标应用程序的安装条件包括共享目标应用程序的应用平台设置的安装条件。电子设备根据目标应用程序的安装条件,确定是否安装所述目标应用程序。
其中,安装条件包括若电子设备的设备参数与第一目标参数相同,确定安装目标应用程序。其中,所述第一目标参数包括预设电子设备的设备标识、设备型号、所述预设电子设备中登录的用户账号、所述预设电子设备接入的网络中的至少一项。和/或,安装条件包括若电子设备中已安装的应用程序的参数与第二目标参数不同,确定安装目标应用程序。其中,第二目标参数包括预设应用程序的应用程序标识、应用程序类型以及开发者信息中的至少一项。
这种实现方式中,电子设备通过获取第一应用平台和第二应用平台对目标应用程序设置的安装条件,确定是否可以安装目标应用程序。避免目标应用程序安装到电子设备中后,因为与电子设备不兼容,导致无法在电子设备中运行的问题。
在第一方面的一种可实现方式中,电子设备根据第一优先级规则,确定目标安装条件,并根据目标安装条件,确定是否安装所述目标应用程序。其中,第一优先级规则用于对安装条件进行优先级排序,目标安装条件是具有最高优先级的所述安装条件。
这种实现方式中,电子设备只需要满足具有最高优先级的安装条件,就能确定安装目标应用程序。既能够避免目标应用程序安装到电子设备中后,因为与电子设备不兼容导致无法在电子设备中运行的问题,也能够避免由于各个安装条件间存在冲突,导致应用程序无法安装在电子设备中的问题。
在第一方面的一种可实现方式中,电子设备根据第二优先级规则,确定目标应用平台,并根据目标应用平台设置的安装条件,确定是否安装目标应用程序。其中,第二优先级规则用于对应用平台进行优先级排序,目标应用平台是具有最高优先级的所述应用平台。
这种实现方式中,电子设备只需要满足目标应用平台对目标应用程序设置的安装条件,就能确定安装目标应用程序,既能够避免目标应用程序安装到电子设备中后,因为与电子设备不兼容导致无法在电子设备中运行的问题,也能够避免由于各个安装条件间存在冲突,导致应用程序无法安装在电子设备中的问题。
第二方面,本申请提供一种应用程序的安装系统,该系统包括电子设备和共享目标应用程序的至少一个应用平台。
其中,该应用平台包括安装条件打包模块以及平台信息打包模块。安装条件打包模块用于将应用平台对目标应用程序设置的安装条件打包到目标应用程序的安装包中。平台信息打包模块用于将应用平台的平台信息打包到目标应用程序的安装包中。其中,目标应用程序的安装包中还存储有目标应用程序的开发者签名证书。该电子设备包括解析验证模块和策略管控模块。解析验证模块用于从目标应用程序的安装包中提取目标应用程序的开发者签名证书、应用平台对目标应用程序设置的安装条件以及应用平台的平台信息,以及,根据提取的开发者签名证书验证目标应用程序的完整性。策略管控模块用于根据解析验证模块提取的安装条件和平台信息,确定是否安装目标应用程序。
本申请提供的系统能够增加应用平台在上架目标应用程序时的监管手段和电子设备在安装目标应用程序时的监管手段,能够降低电子设备安装目标应用程序时出现安全问题的风险。
第三方面,本申请提供一种电子设备,包括:存储器、一个或多个处理器;所述存储器与所述处理器耦合;其中,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第四方面,本申请提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的设计方式所述的方法。
第五方面,本申请提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面及其任一种可能的设计方式所述的方法。
可以理解地,上述提供的第二方面及其任一种可能的设计方式所述的系统,上述提供的第三方面及其任一种可能的设计方式所述的电子设备,第四方面所述的计算机存储介质,第五方面所述的计算机程序产品所能达到的有益效果,可参考第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种电子设备安装应用程序的场景图;
图2为本申请实施例提供的一种多个应用平台共享应用程序的场景图;
图3为本申请实施例提供的一种电子设备的结构示意图;
图4为本申请实施例提供的一种电子设备的软件结构示意图;
图5为本申请实施例提供的一种应用程序的安装方法的流程示意图;
图6为本申请实施例提供的一种界面切换示意图;
图7为本申请实施例提供的一种手机、服务器与应用平台之间的信息交互图;
图8为本申请实施例提供的另一种界面切换示意图;
图9为本申请实施例提供的一种第一信息链的结构示意图;
图10为本申请实施例提供的另一种应用程序的安装方法的流程示意图;
图11为本申请实施例提供的另一种第一信息链的结构示意图;
图12为本申请实施例提供的一种第二信息链的结构示意图;
图13为本申请实施例提供的一种电子设备的结构示意图;
图14为本申请实施例提供的一种应用平台的结构示意图;
图15为本申请实施例提供的一种应用程序的安装系统示意图;
图16为本申请实施例提供的一种应用程序的安装流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;本申请中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。并且,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。同时,在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
应用程序是为利用计算机解决某类问题或实现某类功能而设计的计算机语言,用户可以在电子设备上安装应用程序,以满足自身的使用需求。例如,用户可以在电子设备上安装画图类别的应用程序,通过运行该画图类别的应用程序,可以在电子设备上实现图像绘制。或者,用户可以在电子设备上安装播放器类别的应用程序,通过运行该播放器类别的应用程序,电子设备可以播放用户期望的音视频文件等。应用平台是用于为电子设备提供应用程序资源的服务型平台,例如,应用平台可以为电子设备提供如图1中所示的APP-1、APP-2、APP-3等。电子设备可以从应用平台获取应用程序,并在本地安装该应用程序。
如图1所示,当用户输入指示安装应用程序(APP-1)至电子设备100的安装操作时,电子设备100响应于用户输入的安装操作,可以从应用平台200获取应用程序(APP-1)的安装包。其中,应用程序(APP-1)的安装包通常包括应用程序(APP-1)本身以及安装该应用程序(APP-1)所需的安装文件。电子设备100接收到应用程序(APP-1)的安装包后,可以对接收到的安装包进行解压操作,得到安装包内的应用程序(APP-1)以及安装该应用程序(APP-1)所需的安装文件,并根据安装文件将应用程序(APP-1)安装在电子设备100中。
通常,开发者可以将同一款应用程序上架在多个应用平台。例如,参见图2,开发者可以同时将应用程序A上架到应用平台1和应用平台2上。各个应用平台之间也可以共享同一款应用程序。例如,应用平台3可以从应用平台1和/或应用平台2获取应用程序A,并上架到应用3上;应用平台N也可以通过多个应用平台间接从应用平台3获取应用程序A,并上架到应用平台N上。当应用程序从一个应用平台上架至另一个应用平台的过程中,难免会出现应用程序被篡改的情况发生。例如,应用平台3从应用平台2获取应用程序A后,在应用程序A中写入病毒程序,或者添加广告、恶意插件程序等。若用户从应用平台3下载并安装应用程序A至电子设备中,会导致电子设备遭受攻击,存在安全隐患。
针对上述问题,应用平台和电子设备均增加了对应用程序在安全性上的监管,即上架到应用平台上的应用程序需要是携带开发者的签名证书的应用程序。开发者的签名证书是开发者为了保证应用程序的安全性、完整性自行创建的。应用程序上架到应用平台时,应用平台会对应用程序的签名证书进行校验,以确保上架在应用平台上的应用程序的安全性和完整性。电子设备在安装应用程序时,也会校验应用程序中的签名证书,以保证电子设备不被攻击。
但是,由于开发者的签名证书并非权威机构颁发的签名证书,因此,攻击者可以随意篡改应用程序并伪造开发者的签名证书。电子设备在安装被篡改的应用程序时,只要应用程序携带了完整的签名证书就可以通过证书校验,并完成安装。使得电子设备在安装应用程序时,仍然存在安全隐患。此外,当电子设备从目标应用平台下载并安装应用程序时,会将目标应用平台识别为该应用程序的源头平台(开发者直接上传该应用程序的应用平台)。若目标应用程序是从其他应用平台上架至目标应用平台,存在电子设备无法对安装的应用程序进行溯源的问题。
为了解决上述问题,减少电子设备在安装应用程序时被攻击的风险,使得电子设备可以对安装的应用程序进行溯源,本申请实施例中提供了一种应用程序的安装方法。该方法中,电子设备可以根据接收的安装操作,从第一应用平台获取与目标应用程序关联的预设信息。其中,该预设信息可以包括共享目标应用程序的各个应用平台的平台信息。应用平台可以包括第一应用平台,第一应用平台可以是开发者上传目标应用程序的应用平台,例如,上述应用平台1。第一应用平台也可以是和应用平台1共享目标应用程序的其他应用平台,例如,上述应用平台3。第一应用平台获取到与目标应用程序关联的预设信息后,可以根据预设信息确定是否安装目标应用程序。
本申请实施例提供的应用程序的安装方法,可以应用于电子设备中。示例性的,本申请实施例中的电子设备可以为便携式计算机(如手机)、平板电脑、笔记本电脑、个人计算机(personal computer,PC)、可穿戴电子设备(如智能手表)、增强现实(augmentedreality,AR)\虚拟现实(virtual reality,VR)设备、车载电脑等,以下实施例对该电子设备的具体形式不做特殊限制。
图3示出了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,天线1,天线2,移动通信模块130,无线通信模块140,显示屏150。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块130,无线通信模块140,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块130可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。无线通信模块140可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
在一些实施例中,电子设备100的天线1和移动通信模块130耦合,天线2和无线通信模块140耦合,使得电子设备100可以通过天线1,天线2,移动通信模块130,无线通信模块140等实现通信功能和资源获取等功能。
示例性的,用户可以在电子设备100上输入指示安装目标应用程序的操作。之后,电子设备100响应于用户输入的安装操作,可以通过天线1,天线2,移动通信模块130,无线通信模块140等连接第一应用平台,以向第一应用平台发送获取与目标应用程序关联的预设信息的请求。
电子设备100通过GPU,显示屏150,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏150和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。显示屏150用于显示图像,视频等。显示屏150包括显示面板。在一些实施例中,电子设备100可以包括1个或N个显示屏150,N为大于1的正整数。
示例性的,电子设备的显示屏150可以在电子设备连接第一应用平台后,显示与第一应用平台关联的功能页面,功能页面中可以显示与上架在第一应用平台上的应用程序关联的功能控件。用户点击或者选择与目标应用程序关联的功能控件后,电子设备可以从第一应用平台获取目标应用程序,并将目标应用程序安装在电子设备中。或者,显示屏150还可以在电子设备100中的应用程序运行后,显示与应用程序关联的画面。如,电子设备100中的视频播放类的应用程序运行后,显示屏150可以显示用户在电子设备100上选择播放的视频内容。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐、视频、应用程序的安装包等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
基于图3所示的电子设备100实现本申请实施例中的应用程序的安装方法时,电子设备在接收用户输入的安装操作后,可以通过天线1,天线2,移动通信模块130,无线通信模块140等从第一应用平台获取与目标应用程序关联的预设信息。得到预设信息后,电子设备100的处理器可以调用存储器中存储的程序和数据(如预设信息等)确定是否安装目标应用程序。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图4是本发明实施例的电子设备100的软件结构示意图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图4所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
基于图4所示的电子设备100实现本申请实施例中的应用程序的安装方法时,电子设备100可以在确定安装目标应用程序时,将目标应用程序安装在应用程序层中,以当用户运行安装后的目标应用程序时,电子设备可以基于系统库调用目标应用程序,以满足用户的使用需求。
以下以电子设备为手机为例,对本申请实施例提供的应用程序的安装方法进行说明。如图5所示,该方法可以包括如下步骤S501-S503。
S501、手机接收用户输入的安装操作。
在一些实施例中,手机中安装有多个与应用平台关联的应用程序,手机可以显示多个与应用平台关联的应用程序一一对应的应用平台控件。当用户对目标应用平台控件执行选中操作后,手机响应于用户的选中操作,可以与目标应用平台建立通信连接,并显示与上架在目标应用平台上的应用程序对应的应用图标。可以理解的是,本申请实施例中的应用图标可以是用于表示应用程序的图片,也可以是用于表示应用程序的文字、数字编号等,本申请不予限制。
例如,当手机中安装有与应用平台1、应用平台2、应用平台3以及应用平台4关联的应用程序时,手机可以显示如图6中的(a)所示的界面。该界面中包括与应用平台1对应的应用平台控件611、与应用平台2对应的应用平台控件612、与应用平台3对应的应用平台控件613以及与应用平台4对应的应用平台控件614。当用户对应用平台控件611进行选中操作后,手机可以与应用平台1建立通信连接,并显示如图6中的(b)所示的界面。该界面中包括上架在应用平台1上的应用程序APP-1、APP-2以及APP-3分别对应的应用图标621、应用图标622以及应用图标623。用户可以对应用图标621、应用图标622以及应用图标623中的任意一项或几项进行选中操作,以向电子设备输入指示安装对应的应用程序的安装操作。
其中,手机与应用平台之间的交互可以通过服务器实现。当手机由图6中的(a)所示的界面切换至图6中的(b)所示的界面的过程中,手机、服务器以及应用平台之间进行了如下交互过程:
参见图7,用户对目标应用平台控件进行点击或选择操作,手机响应于用户对目标应用平台控件的点击或选择操作,与目标应用平台所在的平台服务器建立通信连接,并向平台服务器发送第一请求,平台服务器接收到第一请求后,将目标应用平台对应的目标平台数据发送至手机。其中,目标应用平台可以是预先设置在平台服务器中的用于提供应用程序的应用平台,或者,目标应用平台也可以是平台服务器本身。第一请求用于请求平台服务器调取目标平台数据,并将目标平台数据发送至手机。目标平台数据是目标应用平台的平台数据,目标平台数据至少包括上架在目标应用平台的应用程序的标识(如名称列表)。
在一些实施例中,用户可以在手机上访问用于提供应用程序资源的应用网站。例如,手机通常具有浏览器功能,手机上通常显示有与浏览器功能相关的浏览器控件。用户可以对浏览器控件进行点击或选中操作,手机响应于用户对浏览器控件的点击或选中操作,请求与浏览器控件对应的浏览器网站建立通信连接,以及,请求浏览器网站将网站数据发送至手机。手机接收到网站数据后,可以触发显示如图8所示的浏览器界面811。用户可以在浏览器界面811中搜索目标应用平台,以指示手机访问目标应用平台所在的网站。手机成功访问目标应用平台所在的网站后,可以显示与目标应用平台所在的网站关联的应用平台界面812,应用平台界面812包括多个用于表示应用程序的应用图标(821、822以及823)。用户可以对任意应用图标进行点击或选中操作,以向手机输入指示安装该应用图标对应的应用程序的安装操作。
S502、手机响应于用户输入的安装操作,从第一应用平台获取预设信息,预设信息包括共享目标应用程序的应用平台的平台信息。
在一些实施例中,手机响应于用户输入的安装操作,可以向与手机建立网络通信协议连接的平台服务器发送第二请求。第二请求用于请求平台服务器从第一应用平台获取预设信息,以及,请求平台服务器返回预设信息至手机。
在一种场景中,平台服务器接收第二请求后可以从第一应用平台获取目标应用程序的安装包。为了提升传输效率,目标应用程序的安装包通常为压缩包,预设信息压缩在目标应用程序的安装包中。平台服务器获取到目标应用程序的安装包后,将目标应用程序的安装包发送至手机,以使手机通过对目标应用程序的安装包进行解压,提取安装包中的预设信息。
在另一种场景中,平台服务器接收第二请求后可以从第一应用平台直接提取目标应用程序的预设信息,并在提取到目标应用程序的预设信息后,将目标应用程序的预设信息发送至手机。
在一些实施例中,目标应用程序可以被多个应用平台共享。例如,开发者可以将目标应用程序上架在应用平台1和应用平台2中,应用平台3可以从应用平台1获取目标应用程序并上架到应用平台3中,应用平台4可以从应用平台3获取目标应用程序并上架到应用平台4中,应用平台5可以从应用平台2获取目标应用程序并上架到应用平台5中。在这种场景下,应用平台1、应用平台3和应用平台4互为共享目标应用程序的应用平台,应用平台2和应用平台5互为共享目标应用程序的应用平台,应用平台1和应用平台2不互为共享目标应用程序的应用平台。可以将如应用平台1和/或应用平台2这类由开发者上传目标应用程序的应用平台称为一级应用平台,将如应用平台3、应用平台4、应用平台5这类从其他应用平台获取目标应用程序、并上传到自身应用平台上的应用平台称为二级应用平台。
其中,目标应用平台可以主动将上架的应用程序发送至其他应用平台;目标应用平台也可以通过技术手段(例如,爬虫技术等)获取上架在其他应用平台中的程序,以与其他应用平台共享该应用程序。
在一种场景中,第一应用平台可以是上述一级应用平台,即目标应用程序直接由开发者上传至第一应用平台。在这种场景下,手机响应于用户输入的安装操作,通过平台服务器从第一应用平台获取预设信息。其中,预设信息包括第一应用平台的平台信息,第一应用平台的平台信息可以包括第一应用平台的名称信息、开发者信息以及网络地址中的一种或几种。或者,第一应用平台的平台信息还可以包括第一应用平台的电子经营证书、第一应用平台对目标应用程序的完整性校验证书等。
在另一种场景中,第一应用平台可以是上述二级应用平台,即目标应用程序是第一应用平台从第二应用平台获取并上架到第一应用平台上。在这种场景下,手机响应于用户输入的安装操作,通过平台服务器从第一应用平台获取预设信息。其中,预设信息包括第一应用平台的平台信息和与第一应用平台共享目标应用程序的至少一个第二应用平台的平台信息。第二应用平台的平台信息可以包括第二应用平台的名称信息、开发者信息以及网络地址中的一种或几种。或者,第二应用平台的平台信息还可以包括第二应用平台的电子经营证书、第二应用平台对目标应用程序的安全性承诺书等。
其中,第二应用平台是与第一应用平台共享目标应用程序的应用平台。第二应用平台的数量可以为一个,也可以为多个。当第二应用平台的数量为一个时,第二应用平台为一级应用平台。当第二应用平台的数量为多个时,多个第二应用平台中包括一个一级应用平台和至少一个二级应用平台。
示例性的,当第二应用平台的数量为多个时,可以将作为一级应用平台的第二应用平台称为一级第二应用平台,将与一级第二应用平台和第一应用平台共享目标应用程序的第二应用平台称为二级第二应用平台。示例性的,目标应用程序上架到一级第二应用平台后,二级第二应用平台a可以从一级第二应用平台获取目标应用程序并上架到自身平台,二级第二应用平台b可以从二级第二应用平台a获取目标应用程序并上架到自身应用平台。同理,二级第二应用平台n可以从二级第二应用平台(n-1)获取目标应用程序并上架到自身应用平台,第一应用平台可以从二级第二应用平台n获取目标应用程序并上架到自身应用平台。
S503、手机根据预设信息,确定是否安装目标应用程序。
在一些实施例中,预设信息包括共享目标应用程序的一级应用平台和二级应用平台在上架目标应用程序时均会生成对应的平台信息。其中,预设信息中的平台信息可以是信息链的结构。可以理解的是,本申请实施例中的平台信息还可以是信息列表等结构,本申请不予限制。
以本申请实施例中的平台信息为信息链的结构为例,参见图9,应用平台1为一级应用平台。目标应用程序的开发者将目标应用程序上架在应用平台1时,应用平台1会生成对应于应用平台1的第一平台信息911。以及,应用平台1会触发生成第一信息链900,并将第一平台信息911作为第一信息链900的第一节点921存储在第一信息链900中。其中,第一信息链900的第一节点921即为第一信息链900上的第一个节点。当应用平台2从应用平台1获取目标应用程序,并将应用程序上架到应用平台2时,应用平台2会生成对应于应用平台2的第二平台信息912。以及,应用平台2会获取第一信息链900,并将第二平台信息912作为第一信息链900的第二节点922存储在第一信息链900中。其中,第一信息链900的第二节点922是第一信息链900中的第二个节点。
手机接收到预设信息后,可以提取第一信息链900中的各个节点对应的平台信息。根据提取到的平台信息,可以检测预设信息中是否包括至少一个第二应用平台的平台信息。若不包括至少一个第二应用平台的平台信息,则说明预设信息中的平台信息仅为第一应用平台的平台信息,且第一应用平台为一级应用平台,目标应用程序由开发者直接上传至一级应用平台。在这种场景下,由于第一应用平台是由开发者直接上传目标应用程序的应用平台,且目标应用程序直接由第一应用平台发送至电子设备,目标程序被篡改的风险较低。因此,电子设备可以安装目标应用程序,进一步降低了电子设备安装目标应用程序时出现安全问题的风险。
在一些实施例中,若预设信息中包括至少一个第二应用平台的平台信息,手机可以根据从预设信息中提取到的第一应用平台的平台信息和至少一个第二应用平台的平台信息,执行如下方法步骤S5031-S5032,以确定是否安装目标应用程序。
S5031:根据第一应用平台的平台信息和至少一个第二应用平台的平台信息,确定第一应用平台和至少一个第二应用平台中是否包括第三应用平台。
在一些实施例中,手机可以为多个应用平台开通允许在该手机上安装应用程序的安装权限。例如,手机的运营商可以自行开发应用平台,手机在出厂之前,运营商可以在手机上为自行开发的应用平台开通安装权限。或者,用户可以在手机上手动为信任的应用平台开通安装权限。本实施例中的第三应用平台是在手机上未开通安装权限的应用平台。
具体的,手机从预设信息中提取到第一应用平台的平台信息和与第一应用平台共享目标应用程序的第二应用平台的平台信息后,可以根据第一应用平台的平台信息和各个第二应用平台的平台信息,检测第一应用平台和各个第二应用平台是否均为在手机上具有安装权限的应用平台。若第一应用平台和各个第二应用平台均为在手机上具有安装权限的应用平台,则说明第一应用平台和各个第二应用平台中不包括第三应用平台。若第一应用平台和各个第二应用平台中包括至少一个在手机上不具有安装权限的应用平台,则说明第一应用平台和各个第二应用平台中包括至少一个第三应用平台,且不具有安装权限的第一应用平台和/或第二应用平台即为第三应用平台。
在一些实施例中,用户也可以在手机上关闭对应用平台开通的安装权限。例如,应用平台1具有在手机上安装应用程序的安装权限。若用户从应用平台1中获取并安装了携带攻击病毒的应用程序至手机,用户也可以在手机上关闭对应用平台1开通的安装权限。当用户关闭对应用平台1开通的安装权限后,经由应用平台1的应用程序将不被允许安装在用户的手机上。
可以理解的是,手机也可以自行对具有在该手机上安装应用程序安装权限的应用平台进行检测。例如,手机中设置有信任阈值,当手机从应用平台1中获取并安装了携带攻击病毒的应用程序的次数超过信任阈值时,手机将自动关闭对应用平台1开通的安装权限。或者,手机可以显示提示窗口,以提示用户应用平台1存在风险,由用户确认是否关闭对应用平台1开通的安装权限。
S5032:若第一应用平台和第二应用平台中不包括第三应用平台,确定安装目标应用程序。
示例性的,若手机检测到第一应用平台和第二应用平台中不包括第三应用平台,则说明第一应用平台和第二应用平台均为在手机上具有安装权限的应用平台。因此,目标应用程序在第一应用平台和第二应用平台中被篡改的几率较低,手机执行安装目标应用程序的操作。
在一些实施例中,参见图10,若预设信息中包括至少一个第二应用平台的平台信息,手机也可以根据从预设信息中提取到的第一应用平台的平台信息和至少一个第二应用平台的平台信息,执行如下方法步骤S1001-S1002,以确定是否安装目标应用程序。
S1001:根据第一应用平台的平台信息和至少一个第二应用平台的平台信息,检测第一应用平台和第二应用平台的总数量是否小于预设阈值。
其中,根据第一应用平台的平台信息和至少一个第二应用平台的平台信息,可以确定第一应用平台和第二应用平台的总数量。第一应用平台和第二应用平台的总数量越大,说明与第一应用平台共享目标应用程序的应用平台越多,目标应用程序被篡改的风险也越大。例如,当第二应用平台的数量为5个时,第一应用平台和第二应用平台的总数量为6个,则目标应用程序存在6次被篡改的时机;当第二应用平台的数量为3个时,第一应用平台和第二应用平台的总数量为4个,则目标应用程序存在4次被篡改的时机。目标应用程序被篡改的时机的次数越少,目标应用程序被篡改的风险越小。因此,可以预先在手机中设置(风险)阈值,根据第一应用平台和第二应用平台的总数量与预设(风险)阈值的数量关系,确定是否安装目标应用程序。其中,第一应用平台和第二应用平台的总数量与预设(风险)阈值的数量关系,可以是第一应用平台和第二应用平台的总数量与预设(风险)阈值之间的大小关系。
S1002:若第一应用平台和第二应用平台的总数量小于预设阈值,确定安装所述目标应用程序。
具体的,手机可以默认当共享目标应用程序的第一应用平台和第二应用平台的总数量小于预设阈值时,在手机上安装目标应用程序的风险较低,手机执行安装目标应用程序的操作。例如,可以设置阈值为5,若共享目标应用程序的第一应用平台和第二应用平台的总数量为4时,由于第一应用平台和第二应用平台的总数量为4小于阈值5,则手机判定安装目标应用程序的风险较低,确认可以执行在手机上安装目标应用程序的操作。
在一些实施例中,预设信息还可以包括目标应用程序的安装条件,为了进一步降低手机在安装目标应用程序时被攻击的风险,手机根据获取的预设信息,可以执行如下方法步骤S401-S402,以确定是否安装目标应用程序。
S401:手机从预设信息中提取目标应用程序的安装条件。
在一些实施例中,共享目标应用程序的一级应用平台和二级应用平台在上架目标应用程序时均会生成安装条件,其中,安装条件可以是是信息链的结构。可以理解的是,本申请实施例中的安装条件还可以是信息列表等结构,本申请不予限制。
以本申请实施例中的安装条件为信息链的结构为例,安装条件可以与平台信息一同作为节点存储在上述实施例中的第一信息链900中。例如,参见图11,应用平台1为一级应用平台,目标应用程序的开发者将目标应用程序上架在应用平台1时,应用平台1会生成对应于应用平台1的第一平台信息911和第一安装条件1101。以及,应用平台1会触发生成第一信息链900,并将第一平台信息911和第一安装条件1101作为第一信息链900的第一节点921存储在第一信息链900中。当应用平台2从应用平台1获取目标应用程序,并将应用程序上架到应用平台2时,应用平台2会生成对应于应用平台2的第二平台信息912和第二安装条件1102。以及,应用平台2会获取第一信息链900,并将第二平台信息912和第二安装条件1102作为第一信息链900的第二节点922存储在第一信息链900中。
具体的,手机响应于接收的服务器发送的预设信息,可以获取预设信息中的第一信息链900,并提取第一信息链900中各个节点存储的安装条件。当第一信息链900中仅包括一个节点时,说明第一信息链900中包括第一应用平台存储的安装条件,则手机获取的安装条件为第一应用平台设置的安装条件。当第一信息链900中包括至少两个节点时,说明第一信息链900中包括第一应用平台存储的安装条件和至少一个第二应用平台存储的安装条件,则手机获取的预设信息包括第一应用平台设置的安装条件和第二应用平台设置的安装条件。
或者,安装条件也可以作为节点存储在如图12所示的第二信息链901中,第二信息链901与第一信息链900不同。第二信息链901是目标应用程序上架在一级应用平台时生成的,共享目标应用程序的一级应用平台和二级应用平台在上架目标应用程序时均会生成安装条件,并将生成的安装条件作为节点存储在第二信息链901中。例如,应用平台1为一级应用平台,目标应用程序的开发者将目标应用程序上架在应用平台1时,应用平台1会生成对应于应用平台1的第一安装条件1101。以及,应用平台1会触发生成第二信息链901,并将第一安装条件1101作为第二信息链901上的第一节点902存储在第二信息链901中。其中,第二信息链901上的第一节点902即为第二信息链上的第一个节点。当应用平台2从应用平台1获取目标应用程序,并将应用程序上架到应用平台2时,应用平台2会生成为目标应用程序设置的第二安装条件1102。以及,应用平台2会获取第二信息链901,并将第二安装条件1102作为第二信息链901上的第二节点存储在第二信息链901中。其中,第二信息链901的第二节点是第二信息链901中的第二个节点。
具体的,手机响应于接收的预设信息,可以获取预设信息中的第二信息链901,并提取第二信息链901中各个节点存储的安装条件。当第二信息链901中仅包括一个节点时,说明第二信息链901中包括第一应用平台存储的安装条件,则手机获取的安装条件为第一应用平台设置的安装条件。当第二信息链901中包括至少两个节点时,说明第二信息链901中包括第一应用平台存储的安装条件和至少一个第二应用平台存储的安装条件,则手机获取的预设信息包括第一应用平台设置的安装条件和第二应用平台设置的安装条件。
可以理解的是,当第一信息链900用于存储平台信息,第二信息链901用于存储安装条件时,第一信息链900和第二信息链901上的节点数相同的节点互为对应关系。例如,第一信息链900上的第一个节点存储了应用平台1的平台信息,第二信息链901上的第一个节点存储了应用平台1为目标应用程序设置的安装条件。第一信息链900上的第一个节点与第二信息链901上的第一个节点互为对应关系。当手机从第二信息链901中的目标节点中提取目标安装条件后,可以获取目标节点在第二信息链901中的节数,并在第一信息链900中查找与目标节点的节数相同的节点,提取与目标节点的节数相同的节点中的目标平台信息。根据目标平台信息可以确定设置目标安装条件的应用平台。
S402:手机根据提取到的安装条件,确定是否安装目标应用程序。
在一些实施例中,手机提取到的安装条件可以包括若手机的设备参数与第一目标参数相同,确定安装所述目标应用程序。其中,第一目标参数是与手机的设备参数相关联的参数,第一目标参数可以包括允许安装目标应用程序的手机的设备标识、设备型号、手机中登录的用户账号、手机接入的网络地址中的至少一项。手机可以调用自身的设备参数与第一目标参数对比,若手机自身的设备参数与第一目标参数相同,则手机执行安装目标应用程序的操作。
例如,第一目标参数可以包括A品牌。若手机调用自身的设备参数后读取到自身为A品牌手机,则手机的设备参数与第一目标参数相同,手机执行安装目标应用程序的操作。或者,第一目标参数可以包括A品牌b型号手机,若手机调用自身的设备参数后读取到自身为A品牌a型号的手机,则手机的设备参数与第一目标参数不相同,手机不执行安装目标应用程序的操作。再或者,第一目标参数可以包括A品牌b型号c账号,若手机调用自身的设备参数后读取到自身为A品牌b型号手机,且登录了c账号,则手机的设备参数与第一目标参数相同,手机执行安装目标应用程序的操作等。
具体的,在手机根据提取到的安装条件,确定是否安装目标应用程序的步骤中,若安装条件包括若手机的设备参数与第一目标参数相同,确定安装所述目标应用程序,则手机自身的设备参数、第一目标参数以及是否安装目标应用程序的关系可参照下表表1:
表1
手机的设备参数 | 第一目标参数 | 是否安装目标应用程序至手机 | |
设备标识 | 5151321 | 6235214 | 否 |
设备型号 | 手机 | 手机 | 是 |
登入账号 | HW@1 | HW@1 | 是 |
接入网络地址 | hw123153 | Hw165342 | 否 |
需要说明的是,上述表1中所示的第一目标参数仅为举例说明,可以理解的是,该第一目标参数还可以包括设备的入网时间、IP(Internet Protocol,互联网协议)地址、MAC(media access control,媒体访问控制)地址、设备提供的服务、自定义的业务信息等,本领域技术人员可根据实际经验或实际应用场景对此进行设置,本申请实施例对此不做任何限制。
在一些实施例中,手机提取到的安装条件可以包括若手机中已安装的应用程序的参数与第二目标参数不同,确定安装目标应用程序,其中,第二目标参数是与手机的应用程序参数相关联的参数,第二目标参数可以包括与目标应用程序不兼容的历史应用程序的应用程序标识、应用程序类型以及开发者信息中的至少一项。手机可以调用自身的应用程序参数与第二目标参数对比,若手机自身的应用程序参数与第一目标参数不相同,则手机执行安装目标应用程序的操作。
例如,第二目标参数可以包括A应用程序,若手机调用自身的应用程序参数后读取到手机中已安装A应用程序,则手机的应用程序参数与第二目标参数相同,手机不执行安装目标应用程序的操作。或者,第二目标参数包括A开发者,若手机调用自身的应用程序参数后读取到自身未安装A开发者开发的应用程序,则手机的设备参数与第一目标参数不相同,手机执行安装目标应用程序的操作等。
具体的,在手机根据提取到的安装条件,确定是否安装目标应用程序的步骤中,若安装条件包括若手机中已安装的应用程序的参数与第二目标参数不同,确定安装目标应用程序,则手机自身的应用程序参数、第二目标参数以及是否安装目标应用程序的关系可参照下表表2:
表2
手机的应用程序参数 | 第二目标参数 | 是否安装目标应用程序至手机 | |
应用程序名称 | YCY | YCY | 否 |
开发者信息 | 开发者X | 开发者A | 是 |
应用程序类型 | 聊天类 | 游戏类 | 是 |
应用程序标识 | hw123153 | Hw165342 | 是 |
需要说明的是,上述表2中所示的第二目标参数仅为举例说明,本领域技术人员可根据实际经验或实际应用场景对此进行设置,本申请实施例对此不做任何限制。
在一些实施例中,预设信息可以包括多个安装条件。为了进一步降低手机在安装目标应用程序时被攻击的风险,可以执行如下方法步骤S501-S503,以确定是否安装目标应用程序。
S501:手机可以设置第一优先级规则。
其中,第一优先级规则可以是预先设置在手机中的,第一优先级规则用于对安装条件进行优先级排序。
在一些实施例中,可以预先在手机中建立安装条件库,安装条件库中包括多个预先设置在手机中的安装条件,安装条件库中的安装条件均被赋予了权重系数。第一优先级规则即为根据各个安装条件的权重系数,对预设信息中提取到的安装条件进行优先级排序。
例如,安装条件库中包括:仅允许安装在手机(40%权重系数)、安装应用程序A的设备不允许安装(23%权重系数)、仅允许安装在车机(7%权重系数)、安装应用程序B的设备不允许安装(23%权重系数)、仅允许XX型号的手机安装(2%权重系数)、不允许安装上架在应用平台1中的目标应用程序(0.5%权重系数)。若收接收到的预设信息包括:仅允许安装在手机、仅允许安装在车机以及安装应用程序B的设备不允许安装。手机可以根据第一优先级规则对预设信息包括的安装条件进行优先级排序,得到预设信息包括的安装条件的优先级为仅允许安装在手机(40%权重系数)>安装应用程序B的设备不允许安装(23%权重系数)>仅允许安装在车机(7%权重系数)。
在一些实施例中,第一优先级规则可以是根据预设信息中各个安装条件在第一信息链900/第二信息链901上存入的时间对各个安装条件进行排序的。例如,当各个应用平台将对应的平台信息和设置的安装条件作为节点存储在第一信息链900上时,手机接收到预设信息后,可以根据第一优先级规则对预设信息包括的安装条件进行优先级排序。例如,安装条件1存储在第一信息链900上的第一个节点处,安装条件2存储在第一信息链900上的第二个节点处,安装条件3存储在第三安装链上的第三个节点处。若按照各个安装条件存入第一信息链900上的时间从早到晚对预设信息包括的安装条件进行优先级排序(存入的时间越早,优先级越高),则预设信息中包括的安装条件的优先级为安装条件1>安装条件2>安装条件3。若按照各个安装条件存入第一信息链900上的时间从晚到早对预设信息包括的安装条件进行优先级排序(存入的时间越晚,优先级越高),则预设信息中包括的安装条件的优先级为安装条件3>安装条件2>安装条件1。
S502:根据第一优先级规则和安装条件,将具有最高优先级的安装条件确定为目标安装条件。
其中,手机根据第一优先级规则对预设信息中的安装条件进行排序后,可以获取具有最高优先级的安装条件,并将具有最高优先级的安装条件确定为目标安装条件。例如,手机可以根据第一优先级规则对预设信息包括的安装条件进行优先级排序,得到预设信息包括的安装条件的优先级为仅允许安装在手机>安装应用程序B的设备不允许安装>仅允许安装在车机。则手机可以将仅允许安装在手机这一安装条件确定为目标安装条件。
S503:根据目标安装条件,确定是否安装目标应用程序。
在一些实施例中,手机根据得到的目标安装条件,可以确定是否安装目标应用程序。例如,目标安装条件为只允许目标应用程序安装在车机,则手机确定不安装目标应用程序;或者,目标安装条件为不允许安装应用程序A的设备安装目标应用程序,若手机中未安装应用程序A,则手机确定安装目标应用程序等。
在一些实施例中,为了进一步降低手机在安装目标应用程序时被攻击的风险,还可以执行如下方法步骤S601-S603,以确定是否安装目标应用程序。
S601:获取第二优先级规则。
其中,第二优先级规则可以是预先设置在手机中的,第二优先级规则用于对应用平台进行优先级排序。
在一些实施例中,可以预先在手机中对与手机签订安全协议的各个应用平台赋予权重系数。第二优先级规则即为根据与手机签订安全协议的各个应用平台的权重系数,对预设信息中提取到的平台信息进行优先级排序。
例如,与手机签订安全协议的各个应用平台及其被赋予的权重系数分别为:应用平台1(80%权重系数)、应用平台2(65%权重系数)、应用平台3(30%权重系数)以及应用平台4(7%权重系数)。若收接收到的预设信息包括:应用平台1的平台信息、应用平台3的平台信息以及应用平台4的平台信息。手机可以根据预设信息中的平台信息,获取共享目标应用程序的各个应用平台,并根据第二优先级规则对各个应用平台进行优先级排序,得到各个应用平台的优先级为应用平台1(80%权重系数)>应用平台3(30%权重系数)>应用平台4(7%权重系数)。
在一些实施例中,第二优先级规则可以是根据预设信息中各个平台信息在第一信息链900上存入的时间对对应的应用平台进行优先级排序。例如,当各个应用平台将对应的平台信息作为节点存储在第一信息链900上时,手机接收到预设信息后,可以根据预设信息中的平台信息,获取共享目标应用程序的各个应用平台,并根据第二优先级规则对各个应用平台进行优先级排序。例如,应用平台1的平台信息存储在第一信息链900上的第一个节点处,应用平台2的平台信息存储在第一信息链900上的第二个节点处,应用平台3的平台信息存储在第三安装链上的第三个节点处。若按照各个平台信息存入第一信息链900上的时间从早到晚对对应的应用平台进行优先级排序(存入的时间越早,优先级越高),则各个应用平台的优先级为应用平台1>应用平台2>应用平台3。若按照各个平台信息存入第一信息链900上的时间从晚到早对对应的应用平台进行优先级排序(存入的时间越晚,优先级越高),则各个应用平台的优先级为应用平台3>应用平台2>应用平台1。
S602:根据第二优先级规则和平台信息,将具有最高优先级的应用平台确定为目标应用平台。
其中,手机根据第二优先级规则和预设信息包括的平台信息,对共享目标应用程序的各个应用平台进行优先级排序后,可以获取具有最高优先级的应用平台,并将具有最高优先级的应用平台确定为目标应用平台。例如,手机可以根据第二优先级规则和预设信息包括的平台信息进行优先级排序,得到各个应用平台的优先级为应用平台3>应用平台2>应用平台1,则手机可以将应用平台3确定为目标应用平台。
S603:根据目标应用平台设置的安装条件,确定是否安装目标应用程序。
在一些实施例中,手机得到目标应用平台后,根据目标应用平台的平台信息,可以确定是否安装目标应用程序。例如,手机确定目标应用平台是应用平台3,即应用平台3是具有最高优先级的应用平台。若应用平台3对目标应用程序设置的安装条件为仅允许安装在车机,手机提取到应用平台3设置的安装条件后,确定不安装目标应用程序。或者,若应用平台3对目标应用程序设置的安装条件为仅允许安装在手机,手机提取到应用平台3设置的安装条件后,确定安装目标应用程序。或者,若应用平台3对目标应用程序设置的安装条件为仅允许应用程序的源头应用平台为本应用平台的应用程序安装。手机提取到应用平台3设置的安装条件后,若确定待安装的应用程序的源头应用平台是应用平台3,则确定安装目标应用程序。
在一些方案中,可以对本申请的多个实施例进行组合,并实施组合后的方案。可选的,各方法实施例的流程中的一些操作任选地被组合,并且/或者一些操作的顺序任选地被改变。并且,各流程的步骤之间的执行顺序仅是示例性的,并不构成对步骤之间执行顺序的限制,各步骤之间还可以是其他执行顺序。并非旨在表明所述执行次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文某个实施例涉及的过程细节同样以类似的方式适用于其他实施例,或者,不同实施例之间可以组合使用。
此外,方法实施例中的某些步骤可等效替换成其他可能的步骤。或者,方法实施例中的某些步骤可以是可选的,在某些使用场景中可以删除。或者,可以在方法实施例中增加其他可能的步骤。
并且,各方法实施例之间可以单独实施,或结合起来实施。
可以理解的是,为了实现上述功能,电子设备包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本实施例可以根据上述方法示例对电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
示例性的,如图13所示,本申请实施例提供一种电子设备1300,电子设备1300包括解析验证模块1301和策略管控模块1302。解析验证模块1301用于从目标应用程序的安装包中提取预设信息,预设信息包括目标应用程序的开发者签名证书、应用平台对目标应用程序设置的安装条件以及应用平台的平台信息中的至少一项或几项。解析验证模块1301用于根据提取的开发者签名证书验证目标应用程序的完整性。策略管控模块1302用于根据解析验证模块1301提取的安装条件和平台信息,确定是否安装目标应用程序。
示例性的,如图14所示,本申请实施例提供一种应用平台1400,该应用平台在上架应用程序时能够将预设信息打包到应用程序的安装包中。该应用平台1400包括安装条件打包模块1401以及平台信息打包模块1402。安装条件打包模块1401用于将应用平台对目标应用程序设置的安装条件打包到目标应用程序的安装包中。目标应用程序的安装包中存储有目标应用程序的开发者签名证书,平台信息打包模块1402用于将应用平台的平台信息打包到目标应用程序的安装包中。
本申请实施例还提供一种应用程序的安装系统,如图15所示,该安装系统包括图13所示的上述电子设备1300和图14所示的共享目标应用程序的至少一个应用平台1400。
结合图15所示的系统,如图16所示,本申请实施例提供的应用程序的安装方法可实现为,开发者将目标应用程序上架到一级应用平台时,一级应用平台会生成包括开发者签名证书的安装包。一级应用平台的安装条件打包模块1401检测到目标应用程序上架后,将一级应用平台对目标应用程序设置的安装条件打包到该安装包中。之后,平台信息打包模块1402将一级应用平台的平台信息打包到该安装包中。二级应用平台从一级应用平台获取目标应用程序并上架到自身的平台时,可以获取包括开发者签名证书、一级应用平台对目标应用程序设置的安装条件以及应用平台的平台信息的安装包。之后,二级应用平台的安装条件打包模块1401检测到目标应用程序上架后,将二级应用平台对目标应用程序设置的安装条件打包到该安装包中。二级应用平台的平台信息打包模块1402将二级应用平台的平台信息打包到该安装包中。
当电子设备1300安装来自上述一级应用平台的目标应用程序时,电子设备1300的解析验证模块1301可以从目标应用程序的安装包中提取目标应用程序的开发者签名证书、一级应用平台对目标应用程序设置的安装条件、一级应用平台的平台信息,并根据提取的开发者签名证书验证目标应用程序的完整性。电子设备1300中的策略管控模块1302可以根据解析验证模块1301提取的安装条件和平台信息,确定是否安装目标应用程序。
当电子设备1300安装来自上述二级应用平台的目标应用程序时,电子设备1300的解析验证模块1301可以从目标应用程序的安装包中提取目标应用程序的开发者签名证书、一级应用平台和至少一个二级应用平台分别对目标应用程序设置的安装条件、一级应用平台和至少一个二级应用平台的平台信息,并根据提取的开发者签名证书验证目标应用程序的完整性。电子设备1300中的策略管控模块1302可以根据解析验证模块1301提取的安装条件和平台信息,确定是否安装目标应用程序。
本申请实施例还提供一种电子设备,该电子设备可以包括一个或者多个处理器1001、存储器1002和通信接口1003。
其中,存储器1002、通信接口1003与处理器1001耦合。例如,存储器1002、通信接口1003与处理器1001可以通过总线1004耦合在一起。
其中,通信接口1003用于与其他设备进行数据传输。存储器1002中存储有计算机程序代码。计算机程序代码包括计算机指令,当计算机指令被处理器1001执行时,使得电子设备执行本申请实施例中的应用程序的安装方法。
其中,处理器1001可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。处理器可以用于支持电子设备1300执行上述实施例中提供的方法步骤。例如,处理器可以用于支持电子设备1300执行图5中的S501-S503;和/或,用于支持电子设备1300执行图10中的S1001-S1002等。
其中,总线1004可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。上述总线1004可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请实施例并不限定。示例性地,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性地,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(AP设备plication specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(centralprocessor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controllerunit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供一种计算机可读存储介质,该计算机存储介质中存储有计算机程序代码,当上述处理器执行该计算机程序代码时,电子设备执行上述方法实施例中的相关方法步骤。
本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述方法实施例中的相关方法步骤。
另外,本申请实施例还提供一种装置。该装置具体可以是组件或模块,该装置可包括相连的一个或多个处理器和存储器。其中,存储器用于存储计算机程序。当该计算机程序被一个或多个处理器执行时,使得装置执行上述各方法实施例中的场景配置方法。
其中,本申请实施例提供的装置、计算机可读存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法。因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
结合本申请实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应地软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read only memory,ROM)、可擦除可编程只读存储器(erasable programmable ROM,EPROM)、电可擦可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(AP设备plication specific integrated circuit,ASIC)中。
通过以上的实施方式的描述,本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明。实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成;即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种应用程序的安装方法,应用于电子设备,其特征在于,包括:
接收安装操作,所述安装操作用于指示所述电子设备从第一应用平台安装目标应用程序;
响应于所述安装操作,获取预设信息,所述预设信息包括共享所述目标应用程序的应用平台的平台信息,所述应用平台包括所述第一应用平台;
根据所述预设信息,确定是否安装所述目标应用程序。
2.根据权利要求1所述的方法,其特征在于,所述根据所述预设信息,确定是否安装所述目标应用程序,包括:
若所述预设信息中不包括任何第二应用平台的平台信息,确定安装所述目标应用程序;其中,所述第二应用平台与所述第一应用平台不同。
3.根据权利要求2所述的方法,其特征在于,所述根据所述预设信息,确定是否安装所述目标应用程序,包括:
若所述预设信息中包括至少一个所述第二应用平台的平台信息,根据所述第一应用平台的平台信息和至少一个所述第二应用平台的平台信息确定是否安装所述目标应用程序。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一应用平台的平台信息和至少一个所述第二应用平台的平台信息确定是否安装所述目标应用程序,包括:
若所述第一应用平台和所述第二应用平台中不包括第三应用平台,确定安装所述目标应用程序;其中,所述第三应用平台是在所述电子设备上不具有安装权限的所述应用平台。
5.根据权利要求3所述的方法,其特征在于,所述根据所述第一应用平台的平台信息和至少一个所述第二应用平台的平台信息确定是否安装所述目标应用程序,包括:
若所述第一应用平台和所述第二应用平台的总数量小于预设阈值,确定安装所述目标应用程序。
6.根据权利要求1所述的方法,其特征在于,所述预设信息还包括所述目标应用程序的安装条件;所述目标应用程序的安装条件包括共享所述目标应用程序的应用平台设置的安装条件;
所述根据所述预设信息,确定是否安装所述目标应用程序,包括:
根据所述目标应用程序的安装条件,确定是否安装所述目标应用程序。
7.根据权利要求6所述的方法,其特征在于,所述根据所述目标应用程序的安装条件,确定是否安装所述目标应用程序,包括:
根据第一优先级规则,确定目标安装条件;其中,所述第一优先级规则用于对所述安装条件进行优先级排序,所述目标安装条件是具有最高优先级的所述安装条件;
根据所述目标安装条件,确定是否安装所述目标应用程序。
8.根据权利要求6所述的方法,其特征在于,所述根据所述目标应用程序的安装条件,确定是否安装所述目标应用程序,包括:
根据第二优先级规则,确定目标应用平台;其中,所述第二优先级规则用于对所述应用平台进行优先级排序,所述目标应用平台是具有最高优先级的所述应用平台;
根据所述目标应用平台设置的所述安装条件,确定是否安装所述目标应用程序。
9.根据权利要求6-8任一项所述的方法,其特征在于,所述安装条件包括:
若所述电子设备的设备参数与第一目标参数相同,确定安装所述目标应用程序,其中,所述第一目标参数包括预设电子设备的设备标识、设备型号、所述预设电子设备中登录的用户账号、所述预设电子设备接入的网络中的至少一项。
10.根据权利要求6-9任一项所述的方法,其特征在于,所述安装条件包括:
若所述电子设备中已安装的应用程序的参数与第二目标参数不同,确定安装所述目标应用程序,其中,所述第二目标参数包括预设应用程序的应用程序标识、应用程序类型以及开发者信息中的至少一项。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述平台信息包括所述应用平台的名称信息、开发者信息以及网络地址中的至少一种。
12.一种电子设备,其特征在于,包括:存储器、一个或多个处理器;所述存储器与所述处理器耦合;其中,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-11任一项所述的应用程序的安装方法。
13.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-11任一项所述的应用程序的安装方法。
14.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-11任一项所述的应用程序的安装方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211033004.0A CN117667115A (zh) | 2022-08-26 | 2022-08-26 | 应用程序的安装方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211033004.0A CN117667115A (zh) | 2022-08-26 | 2022-08-26 | 应用程序的安装方法及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117667115A true CN117667115A (zh) | 2024-03-08 |
Family
ID=90068565
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211033004.0A Pending CN117667115A (zh) | 2022-08-26 | 2022-08-26 | 应用程序的安装方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117667115A (zh) |
-
2022
- 2022-08-26 CN CN202211033004.0A patent/CN117667115A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160232374A1 (en) | Permission control method and apparatus | |
CN106874037B (zh) | 应用程序安装方法、装置及移动终端 | |
CN109726067B (zh) | 一种进程监控方法以及客户端设备 | |
CN113032766B (zh) | 应用权限管理的方法和装置 | |
EP3361417A1 (en) | Smart card read/write methods and devices | |
CN112230923A (zh) | 用户界面渲染方法、用户界面渲染装置及服务器 | |
CN111079125A (zh) | 一种应用程序调用第三方库动态提升权限的方法及装置 | |
CN115048642B (zh) | 多可信执行环境下可信应用间的通信方法及电子设备 | |
CN110995842A (zh) | 业务数据下载方法、装置、设备及存储介质 | |
CN114915618B (zh) | 升级包下载方法及装置 | |
CN112818270A (zh) | 数据跨域传递方法、装置及计算机设备 | |
CN114862398A (zh) | 一种基于分布式安全设备的风险控制方法以及相关装置 | |
US10839037B2 (en) | Connected application experience | |
CN112579191A (zh) | 一种组件加载方法、装置及系统 | |
CN117667115A (zh) | 应用程序的安装方法及电子设备 | |
CN114860295A (zh) | 资源文件更新方法、装置、设备及可读存储介质 | |
CN113850633B (zh) | 信息推送方法和装置 | |
WO2024032022A1 (zh) | 一种应用图标的可视化方法和设备 | |
CN116702100B (zh) | 权限管理方法和电子设备 | |
CN117724852B (zh) | 一种云电脑计算资源分配方法及装置 | |
CN113472840B (zh) | 一种云服务动态管理方法及装置 | |
CN114205099B (zh) | 网页鉴权方法、电子设备及系统 | |
CN116028433B (zh) | 数据迁移方法和电子设备 | |
CN110908958B (zh) | 一种文件处理方法、装置、终端及存储介质 | |
CN116974434A (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 |