一种RN混合式APP的批量打包方法及装置制造方法及图纸

技术编号:28870859 阅读:10 留言:0更新日期:2021-06-15 23:03
本发明专利技术公开了一种RN混合式APP的批量打包方法及装置,其中,所述批量打包方法包括:获取待打包应用程序的源代码;获取待替换的用户配置;通过Python下载所述用户配置,在所述源代码中找到需要被替换的部分,进行替换;在RN工程下执行安装node‑modules,接着python工程在执行npm install;执行与应用平台相对应的打包工具将替换后的应用程序打包好;将打包好的应用程序安装包上传到指定服务器位置,并将下载地址回写到执行地址;该批量打包方法通过Python下载所述用户配置,在代码中找到需要被替换的部分进行替换,接着在RN工程下执行安装node‑modules,最后利用应用平台对应的打包工具进行打包,解决RN混合式APP的批量打包问题,释放了开发人员大量的时间。

【技术实现步骤摘要】
一种RN混合式APP的批量打包方法及装置
本专利技术涉及计算机
,特别涉及一种RN混合式APP的批量打包方法及装置。
技术介绍
在移动应用开发的过程中,开发人员在应用程序的源代码编写好之后,将应用程序的源代码打包成安装包,以便于线上发布该应用程序,或者便于测试人员通过将该安装包安装在电子设备上进行运行,以测试该应用程序是否存在问题,如该应用程序在运行时是否出现错误,该应用程序在不同系统的设备中的兼容性、运行该应用程序时显示的界面布局是否可以根据不同设备型号机型自适应调整等。目前很多SAAS系统用户,有强烈的品牌意识,比如(需要有个性化的APP名称和Logo、需要支付到商户自己的微信商户平台),于是开发人员会手动修改代码中的Logo图片和APP名称,但是大量用户都有这样的需求,如果采用手动打包的方式,那么开发人员将投入大量的时间做重复无意义的工作,如何通过自动化来释放开放人员的时间,就成了急迫需求。本专利在MAC服务器上部署Python工程,结合APP工程代码(原生部分+RN部分),可以实现批量自动化打包个性化的安装包。既实现了客户的个性化需求,又释放了开发人员宝贵的时间。另外,目前很多APP为了快速试错和交付,都采用混合式的开发方式,比如本专利文档里提到的RN方式的混合APP(简称RN混合式APP)。但是目前RN混合式APP的批量打包方案在业内几乎没有方案。
技术实现思路
为了解决上述问题,本专利技术提供一种能够解决混合式APP批量打包个性化APP的方法及装置。为了实现上述目的,本专利技术一方面提供一种RN混合式APP的批量打包方法,包括:获取待打包应用程序的源代码;获取待替换的用户配置;通过Python下载所述用户配置,在所述源代码中找到需要被替换的部分,进行替换;在RN工程下执行安装node-modules,接着python工程在执行npminstall;执行与应用平台相对应的打包工具将替换后的应用程序打包好;将打包好的应用程序安装包上传到指定服务器位置,并将下载地址回写到执行地址。作为一种可选的技术方案,python工程在执行npminstall之前,将所述node-modules拷贝到不同应用程序的文件夹中。作为一种可选的技术方案,所述用户配置包括启动图、LOGO、微信APPID中的一种或多种。作为一种可选的技术方案,所述应用平台包括Android和IOS。作为一种可选的技术方案,执行与应用平台相对应的打包工具将替换后的应用程序打包好,进一步包括:若应用平台为Android,则使用adb工具执行打包,生成Apk安装包;若应用平台为IOS,则使用xcode的命令工具执行打包,生成IPA安装包。另一方面,本专利技术提供一种RN混合式APP的批量打包装置,包括:第一获取单元,用于获取待打包应用程序的源代码;第二获取单元,用于获取待替换的用户配置;替换单元,用于通过Python下载所述用户配置,在所述源代码中找到需要被替换的部分,进行替换;安装单元,用于在RN工程下执行安装node-modules,接着python工程在执行npminstall;打包单元,用于执行与应用平台相对应的打包工具将替换后的应用程序打包好;上传单元,用于将打包好的应用程序安装包上传到指定服务器位置,并将下载地址回写到执行地址。在上述批量打包装置中,可选的,所述批量打包装置还包括:拷贝单元,用于python工程在执行npminstall之前,将所述node-modules拷贝到不同应用程序的文件夹中。在上述批量打包装置中,可选的,所述用户配置包括启动图、LOGO、微信APPID中的一种或多种。在上述批量打包装置中,可选的,所述打包单元包括:Android打包模块,用于使用adb工具执行打包,生成Apk安装包;IOS打包模块,用于使用xcode的命令工具执行打包,生成IPA安装包。本专利技术相对于现有技术的有益效果是:该批量打包方法通过Python下载所述用户配置,在代码中找到需要被替换的部分,进行替换,接着在RN工程下执行安装node-modules,最后利用应用平台对应的打包工具进行打包,解决RN混合式APP的批量打包问题,释放了开发人员大量的时间,同时也能够满足用户个性化的需求。附图说明图1是本专利技术一实施例提供的一种RN混合式APP的批量打包方法的流程图;图2是本专利技术一实施例提供的一种RN混合式APP的批量打包装置的结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。在此需要说明的是,在本实施例中所出现的因为缩写,分别表示:RN(React-Native,反应本机)、APP(Application,应用软件)、LOGO(Logotype,商标)、Apk(Androidapplicationpackage,安卓应用程序包)、IPA(iPhoneApplication,苹果应用程序包)。参照图1,本实施例提供一种RN混合式APP的批量打包方法,具体包括以下步骤包括:S10:获取待打包应用程序的源代码;具体的,应用程序可以是为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面,对应于不同的系统平台,应用程序可以通过不同的编写语言构建,例如对于安卓平台,可以通过Java语言进行编写,其源代码可以为JavaScript代码。应用程序的源代码在待打包应用程序所在的服务器中获取其源代码,可以从应用程序的开发文档中直接读取,也可以是对已打包过的应用程序进行解压后进行反汇编获取应用程序的源代码,本申请实施例对应用程序的源代码的获取方式不加以限制。S20:获取待替换的用户配置;具体的,用户配置包括但不局限于启动图、LOGO、微信APPID中的一种或多种,用户配置用于后续的替换,另外,本申请实施例对应用程序的源代码的获取方式不加以限制,可以通过用户直接录入,也可以通过从独立的服务器中获取。S30:通过Python下载所述用户配置,在所述源代码中找到需要被替换的部分,进行替换;具体的,在应用程序的源代码中找到需要替换的部分,然后将获取到的用户配置替换对应的部分即可。S40:在RN工程下执行安装node-modules,接着python工程在执行npminstall;具体的,准备单独的node-modules,在RN工程下执行安装node-modules,第一版node-modules下载安装完毕之后,理论上很少会变动。每个商户打包时都会生成独立的文本文档来自技高网...

【技术保护点】
1.一种RN混合式APP的批量打包方法,其特征在于,包括:/n获取待打包应用程序的源代码;/n获取待替换的用户配置;/n通过Python下载所述用户配置,在所述源代码中找到需要被替换的部分,进行替换;/n在RN工程下执行安装node-modules,接着python工程在执行npminstall;/n执行与应用平台相对应的打包工具将替换后的应用程序打包好;/n将打包好的应用程序安装包上传到指定服务器位置,并将下载地址回写到执行地址。/n

【技术特征摘要】
1.一种RN混合式APP的批量打包方法,其特征在于,包括:
获取待打包应用程序的源代码;
获取待替换的用户配置;
通过Python下载所述用户配置,在所述源代码中找到需要被替换的部分,进行替换;
在RN工程下执行安装node-modules,接着python工程在执行npminstall;
执行与应用平台相对应的打包工具将替换后的应用程序打包好;
将打包好的应用程序安装包上传到指定服务器位置,并将下载地址回写到执行地址。


2.根据权利要求1所述的批量打包方法,其特征在于:python工程在执行npminstall之前,将所述node-modules拷贝到不同应用程序的文件夹中。


3.根据权利要求1所述的批量打包方法,其特征在于:所述用户配置包括启动图、LOGO、微信APPID中的一种或多种。


4.根据权利要求1-3中任意一项所述的的批量打包方法,其特征在于:所述应用平台包括Android和IOS。


5.根据权利要求4所述的批量打包方法,其特征在于,执行与应用平台相对应的打包工具将替换后的应用程序打包好,进一步包括:
若应用平台为Android,则使用adb工具执行打包,生成Apk安装包;若应用平台为IOS,则使用xcode的命令工具执行打包,生成IPA安装包。


6.一种RN混合式APP的批量打包装置,其特征在于,...

【专利技术属性】
技术研发人员:杨成龙王园园
申请(专利权)人:江苏斑马软件技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1