CN113741949B - 一种应用程序安装包的生成方法、装置、设备及存储介质 - Google Patents
一种应用程序安装包的生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113741949B CN113741949B CN202111045345.5A CN202111045345A CN113741949B CN 113741949 B CN113741949 B CN 113741949B CN 202111045345 A CN202111045345 A CN 202111045345A CN 113741949 B CN113741949 B CN 113741949B
- Authority
- CN
- China
- Prior art keywords
- file
- application program
- current
- code
- customized
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000004806 packaging method and process Methods 0.000 claims abstract description 118
- 238000009434 installation Methods 0.000 claims abstract description 60
- 230000006870 function Effects 0.000 claims description 79
- 230000003993 interaction Effects 0.000 claims description 24
- 239000000463 material Substances 0.000 claims description 14
- 230000004069 differentiation Effects 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000007613 environmental effect Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000012856 packing Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013478 data encryption standard Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供了一种应用程序安装包的生成方法、装置、设备及存储介质,涉及计算机技术领域,尤其涉及计算机网络应用技术领域。具体实现方案为:获得待打包应用程序的当前定制打包目标,并获得与该打包目标对应的定制文件,定制文件中包含各差异化代码是否开启的开关参数和各差异化代码的差异化参数的功能配置文件;基于获得的通用代码、差异化代码和定制文件,对待打包应用程序打包,得到应用程序安装包。本公开实施例中,通过为差异化代码增加开关,由开关管理该差异化代码是否生效,可以将差异点作为配置内容,无需人工针对不同打包目标修改整个代码,降低代码发生错误的概率,提高定制化安装包的生成效率,降低人工成本。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及计算机网络应用技术领域中一种应用程序安装包的生成方法、应用程序的运行方法、装置、设备及存储介质。
背景技术
随着计算机网络应用技术领域的发展,不同的场合、渠道及用户对应用程序的安装包都产生了独特的需求,这些定制化的需求要求一个版本的应用程序可以产生多个带有不同内容的安装包。
发明内容
本公开提供了一种用于生成定制化安装包的应用程序安装包的生成方法、应用程序的运行方法、装置、设备以及存储介质。
根据本公开的一方面,提供了一种应用程序安装包的生成方法,包括:
获得待打包应用程序的当前定制打包目标;所述待打包应用程序包含:通用代码和差异化代码;
针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件;所述定制文件中包括:功能配置文件;所述功能配置文件包括:在该定制打包目标下,各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数;
基于所述通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的定制化应用程序安装包。
根据本公开的另一方面,提供了一种应用程序的运行方法,该应用程序的安装包为采用前述生成方法生成的,所述运行方法,包括:
在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件;
基于所述功能配置文件中各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启;
在当前差异化代码开启的情况下,从所述功能配置文件中读取当前差异化代码的当前差异化参数;
基于当前差异化参数,运行所述当前差异化代码。
根据本公开的另一方面,提供了一种应用程序安装包的生成装置,包括:
打包目标获取模块,用于获得待打包应用程序的当前定制打包目标;所述待打包应用程序包含:通用代码和差异化代码;
定制文件获取模块,用于针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件;所述定制文件中包括:功能配置文件;所述功能配置文件包括:在该定制打包目标下,各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数;
安装包生成模块,用于基于所述通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的定制化应用程序安装包。
根据本公开的另一方面,提供了一种应用程序的运行装置,该应用程序的安装包为所述的应用程序安装包的生成装置生成的,所述运行装置,包括:
功能配置文件读取模块,用于在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件;
差异化代码开启确定模块,用于基于所述功能配置文件中各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启;
差异化参数读取模块,用于在当前差异化代码开启的情况下,从所述功能配置文件中读取当前差异化代码的当前差异化参数;
差异化代码运行模块,用于基于当前差异化参数,运行所述当前差异化代码。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器运行的指令,所述指令被所述至少一个处理器运行,以使所述至少一个处理器能够运行所述应用程序安装包的生成方法。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器运行的指令,所述指令被所述至少一个处理器运行,以使所述至少一个处理器能够运行所述应用程序的运行方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机运行上述任一所述应用程序安装包的生成方法或应用程序的运行方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器运行时实现根据上述任一项所述应用程序安装包的生成方法或应用程序的运行方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开提供的应用程序安装包的生成方法的第一实施例的示意图;
图2是本公开中定制文件包括的内容的一种示意图;
图3是根据本公开提供的应用程序安装包的生成方法的第二实施例的示意图;
图4是根据本公开提供的应用程序安装包的生成方法的第三实施例的示意图;
图5是根据本公开提供的应用程序的运行方法的第一实施例的示意图;
图6是根据本公开提供的应用程序的运行方法的第二实施例的示意图;
图7是根据本公开提供的应用程序安装包的生成装置的第一实施例的示意图;
图8是根据本公开提供的应用程序的运行装置的第一实施例的示意图;
图9是根据本公开提供的应用程序的运行装置的第二实施例的示意图;
图10是用来实现本公开实施例的应用程序安装包的生成方法或应用程序的运行方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
为了生成定制化安装包,本公开提供了一种应用程序安装包的生成方法、应用程序的运行方法、装置、电子设备和存储介质。
参见图1,图1是根据本公开提供的应用程序安装包的生成方法的第一实施例的示意图,该方法可以包括以下步骤:
步骤S110、获得待打包应用程序的当前定制打包目标;所述待打包应用程序包含:通用代码和差异化代码;
步骤S120、针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件;所述定制文件中可以包括:功能配置文件;所述功能配置文件包括:在该定制打包目标下,各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数;
步骤S130、基于所述通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的定制化应用程序安装包。
本公开实施例提供的应用程序安装包的生成方法,首先获得待打包应用程序的当前定制打包目标,该打包目标中包含带打包应用程序的通用代码和和差异化代码,之后针对待打包应用程序,获得与当前定制打包目标对应的定制文件,该定制文件中包含功能配置文件,该功能配置文件中包括各差异化代码是否开启的开关参数和各差异化代码的差异化参数,最后基于获得的通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的应用程序安装包。本公开实施例中,通过为差异化代码增加开关,由开关管理该差异化代码是否生效,可以将差异点作为配置内容,无需人工针对不同打包目标不断修改整个代码,极大降低代码发生错误的概率,提高定制化安装包的生成效率,降低人工成本。
通常,不同打包目标之间的差异主要体现在功能类代码中,该种差异可能是一行代码的差异,也可以是一个功能类文件的差异。因此,本公开实施例中可以针对不同的打包目标编写对应的差异化代码,该差异化代码是对应打包目标所特有的代码,可以帮助实现该打包目标对应的功能,即该差异化代码可以是一种功能代码。该差异化代码可以是一行代码,也可以是一个功能类文件等等。
上述通用代码即应用程序的各打包目标均可使用的相同的代码。
本公开实施例中,开发人员编写好通用代码以及各差异化代码后,可以针对不同的打包目标为差异化代码配置是否开启的开关参数以及差异化参数,并将上述配置的各参数存储至打包目标对应的功能配置文件中。上述差异化参数可以包括差异化代码的传递参数等等,该传递参数可以被传递到差异化代码对应的执行方法中,进行相应方法的执行。
如图2所示,在本公开的一种实施例中,上述定制文件200除了可以包含上述功能配置文件210之外,还可以包含环境参量配置文件220;
上述环境参量配置文件220中可以包括:在该定制打包目标下,待打包应用程序依赖或调用的外部服务设备的配置信息。
本公开实施例中,上述环境参量可以包括程序依赖或调用的外部服务的服务器地址、端口、身份信息(如AK(Access Key),SK(Secret Access Key),用户名,密码,私钥等)和接口链接等等。上述AK/SK可以用于在通过对象存储服务API(一个提供存储能力的web服务接口)访问存储数据时,生成鉴权信息进行安全认证。
开发人员可以针对不同的打包目标将上述环境参量的值提取出来,并将该环境参量的赋值存储在对应的环境参量配置文件中。本公开实施例中,可以针对每个打包目标封装一个或多个环境参量配置文件。
可见,与现有技术中,在代码设计时将环境参量放置在一个或几个定义文件中,当应用程序面向多种不同打包目标时,使用宏定义的方式定义多个标签,依据某个标签是否存在决定一系列参数的赋值是否启用,可以较为灵活且快速的在程序定义文件内切换不同的目标所需参量,但仍需要对代码进行修改,从而导致重新编译和打包相比,本公开实施例将环境参量直接放置在配置文件中,针对不同打包目标定制安装包时,无需对应用程序代码进行修改以及重新编译,仅需从环境参量配置文件中读取环境参量赋值,就可以获取环境参量的值,进一步降低人工成本,提高定制化安装包的生成效率。
通常,在应用程序的用户交互界面(UI,User Interface)可以显示一些文字以及图片、视频、动画等来对应用程序中的一些内容进行说明、标注以及对用户进行引导、提示等等。
因此,作为本公开实施例的一种具体实施方式,如图2所示,上述定制文件200中,还可以包括文本素材文件和用户交互界面资源文件230;
所述文本素材文件中可以包括:在该定制打包目标下,待打包应用程序在用户交互界面输出的文本文字;所述用户交互界面资源文件中可以包括:在该定制打包目标下,待打包应用程序的用户交互界面布局文件以及在用户交互界面输出的图片资源或视频资源或音频资源。
本公开实施例中,上述用户界面中输出的文字可以包含多种语言。
与上述环境参量类似,现有技术中,通常会将文本素材以及资源文件等都定义在代码文件中。而程序在面向不同的定制打包目标时,可能出现相同位置和相同场景下输入不同文字的情况,此时若采用宏定义切换、代码注释等方式对文本素材、资源素材等进行切换和管理,会导致代码文件的大量累赘冗余,并且由于需要开发人员人为对代码进行修改,因此发生错误的概率也会大大增加。
而本公开实施例中,可以针对不同定制打包目标建立不同的文本素材文件以及用户交互界面资源文件,使得程序可以直接从对应的文本素材文件以及用户交互界面资源文件中获取正确的文本以及正确的资源文件,无需人工针对不同的打包目标修改应用代码,减少了代码的错误发生概率,提高了应用程序定制安装包的生成效率。
如图2所示,在本公开的其他实施例中,上述定制文件200还可以包括用户配置文件和用户策略文件240;
所述用户配置文件中可以包括:在该定制打包目标下,待打包应用程序中默认的初始用户配置信息;所述用户策略文件中可以包括:在该定制打包目标下,待打包应用程序中默认的初始用户策略信息。
通常,用户配置和策略是程序对于用户主动的个性化配置和服务下发的配置的记录文件,是应用程序实现更能和特性灵活变更的常用工具。为了使得应用程序在初始时可以正常运行,本公开中可以在安装包中内置开发人员预设的用户配置文件和策略文件,该初始文件中可以包含默认的配置和策略,来帮助应用程序进行功能和特性的初始选择。具体的,可以是针对不同的打包目标设置不同的用户配置文件和用户策略文件,提供给对应的打包目标使用。
本公开实施例中,可以针对应用程序的不同打包目标设置不同的用户配置文件和用户策略文件,无需用户针对不同打包目标对应用程序的代码进行修改,进一步降低代码发生错误的概率。
当然,本公开实施例中,上述定制文件还可以包含完整类或方法代码的源文件。且上述定制文件还可以是其他形式的文件,如图片文件、纯文本文件、格式化数据文件(XML、JSON等)等等。
本公开实施例中,上述应用程序打包目标的定制文件中可能包含有一些敏感数据,例如功能配置文件中功能的开关、环境参量配置文件中的依赖服务访问路径和Key(秘钥)等等。因此,作为本公开实施例的一种具体实施方式,可以采用对称和非对称加密的方式,对上述包含敏感数据的配置文件进行加密保存,该配置文件可以是上述功能配置文件、环境参量配置文件等。
对称加密即加密和解密使用同一个秘钥,如可以使用DES(Data EncryptionStandard,数据加密标准)、AES(Advanced Encryption Standard,高级加密标准)等算法对配置文件进行对称加密。非对称加密则是加密和解密使用不同的秘钥,一把作为公开的公钥,另一把作为私钥。公钥加密的信息,只有私钥才能解密。私钥加密的信息,只有公钥才能解密,本公开实施例中,可以使用RSA、ECC(椭圆加密算法)等非对称加密算法对配置文件进行加密。
当然,本公开实施例中也可以用自定义加解密方法或非自定义的常用加解密方法对配置文件进行加密与解密。对称加密和非对称加密可以挑选使用也可以混合使用,加密方法的数量可以自由选择,顺序也可以调换。本公开中不做具体限定。
通过将配置文件进行加密可以保护应用程序以及安装包不被用户解密和篡改,提高应用程序安装包的安全性。
作为本公开实施例的一种具体实施方式,基于图1,参见图3,上述步骤S120可以包括:
步骤S121、基于预设的不同定制打包目标与不同私有化路径的对应关系,确定所述当前定制打包目标对应的当前私有化路径。
本公开实施例中,开发人员针对应用程序不同的打包目标设置好定制文件后,可以将该定制文件存储至与其对应的私有化路径下,并可将该打包目标与私有化路径的对应关系存储,本公开实施例中不对打包目标与私有化路径的对应关系存储位置做具体限定。进行打包时,即可基于该对应关系获取对应的路径。
步骤S122、获得所述当前私有化路径中存储的定制文件。
本公开实施例中,确定打包目标对应的私有化路径后,即可从该路径内获取对应的定制文件,并将该定制文件拷贝替换至打包路径下,最后基于上述通用代码、差异化代码以及定制文件执行代码编译以及应用程序打包过程,生成针对打包目标的定制化安装包。
本公开实施例中,可以从应用程序不同的打包目标对应的私有化路径下获取对应的定制文件,完成定制化安装包的打包。使得安装包的生成更加具有针对性,提高了定制化安装包的打包效率与生成定制化安装包的成功率。
参见图4,图4是本公开实施例中对待打包应用程序进行打包的流程示意图;具体可以包括以下步骤:
步骤S410、清理打包路径,重新拉取最新代码和完整打包路径结构;
上述打包路径结构可以包括应用程序的各安装文件的安装路径、目录结构、描述文件等等。
步骤S420、获取打包目标的私有化路径;
如上所述,该私有化路径内可以包括打包目标对应的定制文件,该定制文件中可以包括打包目标的功能配置文件、环境参量配置文件、文本素材文件和用户交互界面资源文件、用户配置文件和用户策略文件等等。
步骤S430、将上述私有化路径下的所有文件拷贝替换至打包路径下;
步骤S440、执行代码编译及应用程序打包过程,生成定制化应用程序安装包。
作为本公开实施例的一种具体实施方式,可以通过执行shell脚本或其他形式的流水线程序,在一个可以连接和使用代码管理服务、编译服务、签名服务、打包服务、公正服务的打包服务器上执行上述打包流程。上述打包服务器可以是任何可承载和运行流水线脚本或程序,并能够连接和调用上述各项服务的计算机设备。
当然,上述流水线的实现方法也可以不在单一打包服务器上进行,而是在多个设备上流转进行,最终达到流水线式自动化生成安装包的目的即可。
通常,在生成定制化安装包时主要有两种实现方式:
一种是针对构建初期,即首先通过用户自选配置或预制渠道标识等方式对安装包生成之后的行为和特征进行预设,从而达到安装包结果的定制化效果。由于其局限于配置本身,因此可以定制的内容有明显的局限性,如只能预设安装后的用户配置或渠道特征,无法针对应用程序内部的功能或环境做出定制,并不能针对代码级别的方法差异和环境上的参量差异。
另一种是针对程序代码进行修改,如利用版本控制工具(如Git)建立多分支来管理,可以根据不同分支内代码方法的不同,定制打包对象独特的需求。这种方法使得开发者必须将通用化功能和bug修改同步到每一个分支,且需要判断修改部分是否会影响分支内的特殊逻辑,不仅增加了耗时,也增加了错漏的可能性,维护成本较高。另一种修改程序代码的方法是利用宏定义的方式定义不同打包目标的标签,在每个标签生效时可以连带定义一系列参数、变量和子标签,从而起到通过控制标签的定义使一系列对应打包对象的定制化参量生效的作用。这种方法在内容切换时必须经历人工参与,且需要重新将代码提交以便自动化处理,因而无法达到快速且自动的为多个对象生成定制化安装包的目标。
而本公开实施例提供的安装包生成方法,在代码中进行了相应的预改造,即将各个差异代码之间的差异点(如,功能配置文件中的各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数等等)提前提炼成为配置内容再用于定制化打包,可以完全覆盖所有目标的所有定制化差异点,能够处理编译前后所有差异。且可以有效的把人力从定制化打包工作中解放出来,如一次定制化打包的产出,可以节省至少0.5-1人日的工作量。同时极大降低了产出安装包的错漏概率。
另外,在版本更新场景下,集中打包所节省的时间和人力投入与定制化打包的目标数量以及订制化程度成正比,即打包目标越多,节省的成本越多;订制化程度越深,节省的成本越多。
本公开还提供了一种应用程序的运行方法,该应用程序的安装包可以采用上述安装包生成方法生成,参见图5,上述运行方法可以包括以下步骤:
步骤S510、在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件;
本公开实施例中,开发人员在编写应用程序的代码时,可以将定制文件中包含的各文件的存储路径写入代码,应用程序被安装后,即会将对应的定制文件安装在开发人员预设的路径中。当应用程序要运行到差异化代码部分时,首先可以在对应的路径中读取功能配置文件。如上所述,该功能配置文件中可以包括各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数。
步骤S520、基于所述功能配置文件中各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启;
步骤S530、在当前差异化代码开启的情况下,从所述功能配置文件中读取当前差异化代码的当前差异化参数;
如上所述,该差异化参数可以包括差异化代码的传递参数,即表明该差异化代码的执行方法,具体可以是读取到传递参数的值后,将其传递到差异化代码对应的方法中,执行该方法。
步骤S540、基于当前差异化参数,运行所述当前差异化代码。
本公开提供的应用程序的运行方法,在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件,并基于功能配置文件包含的各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启,若开启,则从功能配置文件中读取当前差异化代码的当前差异化参数,并基于该差异化参数,运行当前差异化代码。本公开实施例中,基于差异化代码的开关参数与差异化参数运行差异化代码,且开关参数与差异化参数存储于独立的功能配置文件中,开发人员无需针对不同用户需求对应用程序代码进行不同的修改,降低应用程序代码的出错概率,提高应用程序的运行成功概率。
如上所述,应用程序的定制化安装包中还可以包括环境参量配置文件,而环境参量配置文件中可以包括应用程序依赖或调用的外部服务设备的配置信息。因此,在本公开的一种实施例中,基于图5,参见图6,上述步骤S510之前,还可以包括以下步骤:
步骤S610、在接收到当前应用程序启动指令的情况下,读取当前应用程序的定制文件中的当前环境参量配置文件;
本公开实施例中,上述当前应用程序的启动指令可以由使用用户通过点击应用程序对应的应用图标发出。
如上所述,开发人员在编码时可以将定制文件的存储路径写入代码,因此应用程序开始运行后,即可以根据环境参量配置文件的存储路径读取相应的环境参量配置文件。
本公开实施例中,应用程序代码也可以在需要参量的模块初始化时读取参量配置文件来获得对应的赋值。
步骤S620、按照所述当前环境参量配置文件,对当前应用程序依赖或调用的外部服务设备进行环境参数配置;
如上所述,环境参量可以包括程序依赖或调用的外部服务的服务器地址、端口、身份信息(如AK,SK,用户名,密码,私钥等)和接口链接等等。获取到上述参量后,即可按照上述参量进行应用程序的环境配置。
步骤S630、在环境参数配置完成的情况下,运行当前应用程序。
本公开实施实例中,可以根据应用程序的环境参量配置文件先配置应用程序运行所需的环境条件,由于环境参量配置文件是开发人员针对不同需求单独配置的,且并未对原始代码进行改变,提高了环境参量配置成功率。
如上所述,定制文件中的功能配置文件和环境参量配置文件可以是加密后的功能配置文件和加密后的环境参量配置文件;
因此,上述运行方法,还可以包括:对加密后的功能配置文件和加密后的环境参量配置文件进行解密。
本公开实施例中,可以在读取环境参量配置文件时对加密后的环境参量配置文件进行解密,相应的,可以在读取功能配置文件时,对功能配置文件进行解密。
解密过程可以是,开发人员在编写应用程序的运行部分的程序代码时,将与加密算法对应的解密算法写进读取环境参量配置文件或功能配置文件的位置,以使应用程序代码运行至读取环境参量配置文件或功能配置文件时,对配置文件进行解密。
本公开实施例中,通过对配置文件进行加密,并在运行时对各配置文件进行解密,降低了应用程序以及安装包中的内容被用户获取以及篡改的风险,提高了应用程序运行的安全性。
参见图7,本公开还提供了一种应用程序安装包的生成装置,可以包括:
打包目标获取模块710,可以用于获得待打包应用程序的当前定制打包目标;所述待打包应用程序包含:通用代码和差异化代码;
定制文件获取模块720,可以用于针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件;所述定制文件中至少包括:功能配置文件;所述功能配置文件包括:在该定制打包目标下,各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数;
安装包生成模块730,可以用于基于所述通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的定制化应用程序安装包。
本公开实施例提供的应用程序安装包的生成装置,首先获得待打包应用程序的当前定制打包目标,该打包目标中包含带打包应用程序的通用代码和和差异化代码,之后针对待打包应用程序,获得与当前定制打包目标对应的定制文件,该定制文件中包含功能配置文件,该功能配置文件中包括各差异化代码是否开启的开关参数和各差异化代码的差异化参数,最后基于获得的通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的应用程序安装包。本公开实施例中,通过为差异化代码增加开关,由开关管理该差异化代码是否生效,可以将差异点作为配置内容,无需人工针对不同打包目标不断修改整个代码,极大降低代码发生错误的概率,提高定制化安装包的生成效率,降低人工成本。
在本公开的一种实施例中,所述定制文件中还可以包括:环境参量配置文件;所述环境参量配置文件中包括:在该定制打包目标下,待打包应用程序依赖或调用的外部服务设备的配置信息。
在本公开的一种实施例中,所述定制文件中还可以包括:文本素材文件和用户交互界面资源文件;所述文本素材文件中可以包括:在该定制打包目标下,待打包应用程序在用户交互界面输出的文本文字;所述用户交互界面资源文件中可以包括:在该定制打包目标下,待打包应用程序的用户交互界面布局文件以及在用户交互界面输出的图片资源或视频资源或音频资源。
在其他实施例中,所述定制文件中还可以包括:用户配置文件和用户策略文件;所述用户配置文件中可以包括:在该定制打包目标下,待打包应用程序中默认的初始用户配置信息;所述用户策略文件中可以包括:在该定制打包目标下,待打包应用程序中默认的初始用户策略信息。
在本公开的一种实施例中,所述定制文件获取模块720,可以具体用于:
基于预设的不同定制打包目标与不同私有化路径的对应关系,确定所述当前定制打包目标对应的当前私有化路径;
获得所述当前私有化路径中存储的定制文件。
参见图8,本公开实施例中还提供了一种应用程序的运行装置,该应用程序的安装包为采用上述应用程序安装包的生成装置生成的,所述运行装置,可以包括:
功能配置文件读取模块810,可以用于在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件;
差异化代码开启确定模块820,可以用于基于所述功能配置文件中各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启;
差异化参数读取模块830,可以用于在当前差异化代码开启的情况下,从所述功能配置文件中读取当前差异化代码的当前差异化参数;
差异化代码运行模块840,可以用于基于当前差异化参数,运行所述当前差异化代码。
本公开提供的应用程序的运行装置,在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件,并基于功能配置文件包含的各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启,若开启,则从功能配置文件中读取当前差异化代码的当前差异化参数,并基于该差异化参数,运行当前差异化代码。本公开实施例中,基于差异化代码的开关参数与差异化参数运行差异化代码,且开关参数与差异化参数存储于独立的功能配置文件中,开发人员无需针对不同用户需求对应用程序代码进行不同的修改,降低应用程序代码的出错概率,提高应用程序的运行成功概率。
如上所述,在本公开的一种实施例中,所述定制文件中还可以包括环境参量配置文件;所述环境参量配置文件中可以包括:应用程序依赖或调用的外部服务设备的配置信息;
基于图8,参见图9,在所述在当前应用程序运行到当前差异化代码的情况下,所述装置还可以包括:
环境参量配置文件读取模910,可以用于在接收到当前应用程序启动指令的情况下,读取当前应用程序的定制文件中的当前环境参量配置文件;
环境参数配置模块920,可以用于按照所述当前环境参量配置文件,对当前应用程序依赖或调用的外部服务设备进行环境参数配置;
应用程序运行模块930,可以用于在环境参数配置完成的情况下,运行当前应用程序。
在本公开的一种实施例中,所述定制文件中的功能配置文件和环境参量配置文件可以为加密后的功能配置文件和加密后的环境参量配置文件;
所述运行装置,还可以包括:
解密模块(图中未示出),可以用于对加密后的功能配置文件和加密后的环境参量配置文件进行解密。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来运行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001运行上文所描述的各个方法和处理,例如应用程序安装包的生成方法或应用程序的运行方法。例如,在一些实施例中,应用程序安装包的生成方法或应用程序的运行方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001运行时,可以运行上文描述的应用程序安装包的生成方法或应用程序的运行方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为运行应用程序安装包的生成方法或应用程序的运行方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上运行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器运行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上运行、部分地在机器上运行,作为独立软件包部分地在机器上运行且部分地在远程机器上运行或完全在远程机器或服务器上运行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令运行系统、装置或设备使用或与指令运行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地运行也可以顺序地运行也可以不同的次序运行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (17)
1.一种应用程序安装包的生成方法,包括:
获得待打包应用程序的当前定制打包目标;所述待打包应用程序包含:通用代码和差异化代码;
针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件;所述定制文件中包括:功能配置文件、文本素材文件和用户交互界面资源文件;所述功能配置文件包括:在该定制打包目标下,各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数;所述文本素材文件中包括:在该定制打包目标下,待打包应用程序在用户交互界面输出的文本文字;所述用户交互界面资源文件中包括:在该定制打包目标下,待打包应用程序的用户交互界面布局文件以及在用户交互界面输出的图片资源或视频资源或音频资源;
基于所述通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的定制化应用程序安装包。
2.根据权利要求1所述的生成方法,其中,
所述定制文件中还包括:环境参量配置文件;所述环境参量配置文件中包括:在该定制打包目标下,待打包应用程序依赖或调用的外部服务设备的配置信息。
3.根据权利要求1所述的生成方法,其中,
所述定制文件中还包括:用户配置文件和用户策略文件;所述用户配置文件中包括:在该定制打包目标下,待打包应用程序中默认的初始用户配置信息;所述用户策略文件中包括:在该定制打包目标下,待打包应用程序中默认的初始用户策略信息。
4.根据权利要求1所述的生成方法,其中,
所述针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件的步骤,包括:
基于预设的不同定制打包目标与不同私有化路径的对应关系,确定所述当前定制打包目标对应的当前私有化路径;
获得所述当前私有化路径中存储的定制文件。
5.一种应用程序的运行方法,该应用程序的安装包为采用权利要求1所述生成方法生成的,所述运行方法,包括:
在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件;
基于所述功能配置文件中各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启;
在当前差异化代码开启的情况下,从所述功能配置文件中读取当前差异化代码的当前差异化参数;
基于当前差异化参数,运行所述当前差异化代码。
6.根据权利要求5所述的运行方法,其中,
所述定制文件中还包括环境参量配置文件;所述环境参量配置文件中包括:应用程序依赖或调用的外部服务设备的配置信息;
在所述在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件的步骤之前,还包括:
在接收到当前应用程序启动指令的情况下,读取当前应用程序的定制文件中的当前环境参量配置文件;
按照所述当前环境参量配置文件,对当前应用程序依赖或调用的外部服务设备进行环境参数配置;
在环境参数配置完成的情况下,运行当前应用程序。
7.根据权利要求6所述的运行方法,其中,
所述定制文件中的功能配置文件和环境参量配置文件为加密后的功能配置文件和加密后的环境参量配置文件;
所述运行方法,还包括:对加密后的功能配置文件和加密后的环境参量配置文件进行解密。
8.一种应用程序安装包的生成装置,包括:
打包目标获取模块,用于获得待打包应用程序的当前定制打包目标;所述待打包应用程序包含:通用代码和差异化代码;
定制文件获取模块,用于针对待打包应用程序,获得与所述当前定制打包目标对应的定制文件;所述定制文件中包括:功能配置文件、文本素材文件和用户交互界面资源文件;所述功能配置文件包括:在该定制打包目标下,各个差异化代码是否开启的开关参数和各个差异化代码的差异化参数;所述文本素材文件中包括:在该定制打包目标下,待打包应用程序在用户交互界面输出的文本文字;所述用户交互界面资源文件中包括:在该定制打包目标下,待打包应用程序的用户交互界面布局文件以及在用户交互界面输出的图片资源或视频资源或音频资源;
安装包生成模块,用于基于所述通用代码、差异化代码和定制文件,对待打包应用程序进行打包,得到定制打包目标对应的定制化应用程序安装包。
9.根据权利要求8所述的装置,其中,
所述定制文件中还包括:环境参量配置文件;所述环境参量配置文件中包括:在该定制打包目标下,待打包应用程序依赖或调用的外部服务设备的配置信息。
10.根据权利要求8所述的装置,其中,
所述定制文件中还包括:用户配置文件和用户策略文件;所述用户配置文件中包括:在该定制打包目标下,待打包应用程序中默认的初始用户配置信息;所述用户策略文件中包括:在该定制打包目标下,待打包应用程序中默认的初始用户策略信息。
11.根据权利要求8所述的装置,其中,
所述定制文件获取模块,具体用于:
基于预设的不同定制打包目标与不同私有化路径的对应关系,确定所述当前定制打包目标对应的当前私有化路径;
获得所述当前私有化路径中存储的定制文件。
12.一种应用程序的运行装置,该应用程序的安装包为采用权利要求8所述生成装置生成的,所述运行装置,包括:
功能配置文件读取模块,用于在当前应用程序运行到当前差异化代码的情况下,读取当前应用程序的定制文件中的功能配置文件;
差异化代码开启确定模块,用于基于所述功能配置文件中各个差异化代码是否开启的开关参数,确定当前差异化代码是否开启;
差异化参数读取模块,用于在当前差异化代码开启的情况下,从所述功能配置文件中读取当前差异化代码的当前差异化参数;
差异化代码运行模块,用于基于当前差异化参数,运行所述当前差异化代码。
13.根据权利要求12所述的装置,其中,
所述定制文件中还包括环境参量配置文件;所述环境参量配置文件中包括:应用程序依赖或调用的外部服务设备的配置信息;
在所述在当前应用程序运行到当前差异化代码的情况下,所述装置还包括:
环境参量配置文件读取模块,用于在接收到当前应用程序启动指令的情况下,读取当前应用程序的定制文件中的当前环境参量配置文件;
环境参数配置模块,用于按照所述当前环境参量配置文件,对当前应用程序依赖或调用的外部服务设备进行环境参数配置;
应用程序运行模块,用于在环境参数配置完成的情况下,运行当前应用程序。
14.根据权利要求13所述的装置,其中,
所述定制文件中的功能配置文件和环境参量配置文件为加密后的功能配置文件和加密后的环境参量配置文件;
所述运行装置,还包括:
解密模块,用于对加密后的功能配置文件和加密后的环境参量配置文件进行解密。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器运行的指令,所述指令被所述至少一个处理器运行,以使所述至少一个处理器能够运行权利要求1-4中任一项所述的方法。
16.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器运行的指令,所述指令被所述至少一个处理器运行,以使所述至少一个处理器能够运行权利要求5-7中任一项所述的方法。
17.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机运行根据权利要求1-4中或5-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111045345.5A CN113741949B (zh) | 2021-09-07 | 2021-09-07 | 一种应用程序安装包的生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111045345.5A CN113741949B (zh) | 2021-09-07 | 2021-09-07 | 一种应用程序安装包的生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113741949A CN113741949A (zh) | 2021-12-03 |
CN113741949B true CN113741949B (zh) | 2023-09-29 |
Family
ID=78736805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111045345.5A Active CN113741949B (zh) | 2021-09-07 | 2021-09-07 | 一种应用程序安装包的生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113741949B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114527993A (zh) * | 2022-02-10 | 2022-05-24 | 富途网络科技(深圳)有限公司 | 应用程序部署方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050027462A (ko) * | 2003-09-15 | 2005-03-21 | (주)대컴정보기술 | Bibd 방법론을 이용하는 프로그램 자동 개발 장치 및방법 |
CN111290801A (zh) * | 2020-02-13 | 2020-06-16 | 北京字节跳动网络技术有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
WO2020233048A1 (zh) * | 2019-05-21 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 定制化软件生成方法、系统、电子设备及存储介质 |
CN112596746A (zh) * | 2020-12-24 | 2021-04-02 | 苏州达家迎信息技术有限公司 | 应用安装包生成方法、装置、计算机设备和存储介质 |
CN112631618A (zh) * | 2020-12-16 | 2021-04-09 | 平安普惠企业管理有限公司 | 应用程序打包方法、应用程序测试方法、终端及存储介质 |
-
2021
- 2021-09-07 CN CN202111045345.5A patent/CN113741949B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050027462A (ko) * | 2003-09-15 | 2005-03-21 | (주)대컴정보기술 | Bibd 방법론을 이용하는 프로그램 자동 개발 장치 및방법 |
WO2020233048A1 (zh) * | 2019-05-21 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 定制化软件生成方法、系统、电子设备及存储介质 |
CN111290801A (zh) * | 2020-02-13 | 2020-06-16 | 北京字节跳动网络技术有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN112631618A (zh) * | 2020-12-16 | 2021-04-09 | 平安普惠企业管理有限公司 | 应用程序打包方法、应用程序测试方法、终端及存储介质 |
CN112596746A (zh) * | 2020-12-24 | 2021-04-02 | 苏州达家迎信息技术有限公司 | 应用安装包生成方法、装置、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
基于敏捷方式的Java代码生成方法的设计;赵跃华;王凌;;计算机工程与设计(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113741949A (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2962193B1 (en) | Compiler based obfuscation | |
CN104717198B (zh) | 安全元件上的软件更新方法和设备 | |
US20150161384A1 (en) | Secured execution of a web application | |
CN107480478B (zh) | 一种java应用程序的加密方法及运行方法 | |
CN109885990B (zh) | 脚本管理方法 | |
US10970264B2 (en) | Supporting secure layer extensions for communication protocols | |
CN111695166A (zh) | 磁盘加密保护方法及装置 | |
CN113741949B (zh) | 一种应用程序安装包的生成方法、装置、设备及存储介质 | |
CN115795513A (zh) | 文件加密和文件解密方法、装置以及设备 | |
CN116170180A (zh) | 加密方法、装置、存储介质以及电子设备 | |
CN113794706B (zh) | 数据的处理方法、装置、电子设备及可读存储介质 | |
CN109711178B (zh) | 一种键值对的存储方法、装置、设备及存储介质 | |
CN113630412B (zh) | 资源下载方法、资源下载装置、电子设备以及存储介质 | |
CN113032741B (zh) | 类文件加密方法、类文件运行方法、装置、设备及介质 | |
CN117786726A (zh) | 一种源码文件处理方法、装置、电子设备和存储介质 | |
CN111400743B (zh) | 基于区块链网络的事务处理方法、装置、电子设备和介质 | |
WO2019134278A1 (zh) | 聊天加密方法、聊天解密方法、装置、电子终端及可读存储介质 | |
CN114154123B (zh) | 应用于Python项目的加密保护方法 | |
CN115361132A (zh) | 密钥生成方法、装置、片上系统、设备及存储介质 | |
CN115333851A (zh) | 自动驾驶数据的传输方法、装置和电子设备 | |
CN111931222B (zh) | 应用数据加密方法、装置、终端及存储介质 | |
CN110888646B (zh) | 部署方法、装置、系统和存储介质 | |
WO2019066883A1 (en) | DEPLOYMENT OF READY-TO-USE DECLARATIVE SECURITY FUNCTIONALITY FOR ENGINEERING PLATFORM | |
CN111460464B (zh) | 数据加解密方法、装置、电子设备及计算机存储介质 | |
CN113420313A (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 |