实现iOS应用自动编译的方法及系统的制作方法

文档序号:7769398阅读:147来源:国知局
实现iOS应用自动编译的方法及系统的制作方法
【专利摘要】本申请提供了一种实现iOS应用自动编译的方法,其包括:至少一个Web服务器根据从客户端接收的用于构建iOS应用的请求,向客户端返回相应的构建服务信息,以使得客户端基于构建服务信息返回输入信息;根据返回的输入信息,Web服务器获取相应的程序代码并修改程序代码的配置信息,相应的程序代码预存在Web服务器中;Web服务器根据修改后的配置信息对程序代码进行打包,并对打包后的程序代码进行备份;以及Web服务器向客户端发出构建iOS应用完成的提示信息,并向客户端提供打包后的程序代码的下载。本申请还提供了一种实现iOS应用自动编译的系统。
【专利说明】实现丨03应用自动编译的方法及系统

【技术领域】
[0001]本申请涉及103应用编译、构建的领域,具体地,涉及一种实现103应用自动编译的方法及系统。

【背景技术】
[0002]103是由苹果公司开发的手持设备操作系统。随着苹果手持设备(
的普及,用于103操作系统的应用也日渐增多。但是,通过常规的方法编译、构建一个103应用非常繁琐,而且容易出错。例如,常规的构建103应用的过程如下:找到要编译应用的代码库地址、在命令行使用命令签出代码、打开工程、找出当前代码库的版本号、找到并修改配置信息、选择编译目标、修改编译类型、执行清理命令、执行构建命令、执行打包命令、向代码库提交修改等,中间需要投入大量的人力来做重复性的劳动,而且只能在本机中进行发布,无法通过166方式进行发布。此外,构建应用时的签名需要的证书需要发布到每台计算机上才能进行发布,因此不利于证书的安全,无法防止证书的滥用。


【发明内容】

[0003]本申请提供了一种至少能够部分改善上述现有技术中的缺陷的实现103应用自动编译的方法和系统。
[0004]根据本申请的一方面,提供了一种实现103应用自动编译的方法,其包括:至少一个1613服务器根据从客户端接收的用于构建103应用的请求,向客户端返回相应的构建服务信息,以使得客户端基于构建服务信息返回输入信息;根据返回的输入信息,^服务器获取相应的程序代码并修改程序代码的配置信息,相应的程序代码预存在服务器中;^服务器根据修改后的配置信息对程序代码进行打包,并对打包后的程序代码进行备份;以及166服务器向客户端发出构建103应用完成的提示信息,并向客户端提供打包后的程序代码的下载。
[0005]根据本申请的另一方面,提供了一种实现103应用自动编译的系统,该系统包括:至少一个客户端和至少一个服务器。其中,服务器包括接收模块、任务生成模块、任务处理模块和发送模块。在服务器中,接收模块用于接收来自所述客户端的构建103应用的请求以及客户端基于1613服务器返回的构建服务信息而返回的输入信息;任务生成模块根据输入信息生成新的构建任务;任务处理模块用于根据构建任务获取相应的程序代码并修改程序代码的配置信息,在修改之后,任务处理模块还根据构建任务对程序代码进行打包,并对打包后的程序代码进行备份,同时将构建任务的状态修改为完成;发送模块用于向客户端返回相应的构建服务信息以及发出构建103应用完成的提示信息,并向客户端提供打包后的程序代码的下载。
[0006]如上所述,通过本申请提供的实现103应用自动编译的方法及系统,所有的编译构建信息通过166方式提交或修改,用户不用去了解具体的编译配置在底层是如何修改的,仅需通过页面,以图形界面、信息填入或勾选的方式,提交必要的编译信息即可,降低了对用户专业方面的要求。此外,编译时不用人力每次手动进行证书的绑定,也不用人力手动对编译器进行操作或对配置信息进行修改,从而实现了整个编译流程的自动化。

【专利附图】

【附图说明】
[0007]图1为根据本申请示例性实施方式的实现103应用自动编译的系统的示意图;
[0008]图2为根据本申请示例性实施方式的服务器的示意图;以及
[0009]图3为根据本申请示例性实施方式的实现103应用自动编译的方法的流程图。

【具体实施方式】
[0010]为了更好地理解本申请,将参考附图对本申请的各个方面做出更详细的说明。可以理解,所述附图和详细说明只是对本申请优选实施方案的描述,而非以任何方式限制本申请的范围。
[0011]图1示例性地示出了根据本申请一个实施方式的实现103应用自动编译的系统1000。如图1所示,系统1000可包括至少一个客户端100以及至少一个16?服务器200。
[0012]在一个实施方式中,16^服务器200可接收来自客户端100的构建103应用的请求,并向客户端100返回相应的构建服务信息。其中,客户端100可例如通过访问证1 (统一资源定位符)向166服务器200发出构建请求。服务器200可通过页面的方式向客户端100返回相应的构建服务信息,其中构建服务信息可至少包括构建列表信息、构建进度信息、构建结果信息以及新建构建信息等。根据客户端100基于构建服务信息返回的输入信息,服务器200可获取相应的程序代码并修改程序代码的配置信息,相应的程序代码可预存在服务器200中。根据一个实施方式,输入信息可至少包括构建名称、代码证1、构建类型、版本号、编译证书、编译证书密码等,其中构建类型包括企业版构建和八卯义01~6构建。
[0013]根据一个实施方式,服务器200还可根据修改后的配置信息对程序代码进行编译、签名与打包,并对打包后的程序代码进行备份。服务器200可例如将打包后的程序代码备份至代码库。在备份打包后的程序代码之后,服务器200向客户端100发出构建103应用完成的提示信息,并可例如通过代码库向客户端100提供打包后的程序代码的下载。打包后的程序代码可例如为I?八包。
[0014]下面参照图2对16^服务器200进行进一步的描述。如图2所示,16^服务器200包括接收模块201、任务生成模块202、任务处理模块203以及发送模块204。
[0015]在一个实施方式中,接收模块201被配置成接收来自客户端100的构建103应用的请求以及客户端100基于构建服务信息返回的输入信息。其中,所接收的请求以及输入信息可存储至数据库中。任务生成模块202根据输入信息生成新的构建任务。新的构建任务也可存储至数据库中以便任务调度。任务处理模块203根据构建任务获取相应的程序代码并修改程序代码的配置信息。在修改之后,任务处理模块203还可根据构建任务调用编译器、签名打包器来对程序代码进行编译、签名与打包,并对打包后的程序代码进行备份,同时将构建任务的状态修改为完成。发送模块204用于向客户端100返回相应的构建服务信息以及发出构建103应用完成的提示信息,并向客户端100提供打包后的程序代码的下载。
[0016]此外,根据另一实施方式,如果存在多个1613服务器200-1、200-2、…200-11 (11为自然数,以下统称为166服务器200),则服务器200还可包括任务调度模块205,其用于将所生成的构建任务分配至至少一个服务器中处于空闲状态的服务器。
[0017]下面将参照图3对如何实现103应用自动编译的方法3000进行详细描述。
[0018]根据一个实施方式中,在步骤3301中,至少一个服务器200可根据从客户端100接收的用于构建103应用的请求,向客户端100返回相应的构建服务信息,以使得客户端100基于构建服务信息返回输入信息。在步骤3302中,根据返回的输入信息,服务器200获取相应的程序代码并修改程序代码的配置信息,相应的程序代码预存在服务器200中。其中,服务器200可根据客户端100返回的输入信息生成新的构建任务,并根据该构建任务获取相应的程序代码并修改程序代码的配置信息。然后,在步骤3303中,16^服务器200可根据修改后的配置信息对程序代码进行打包,并对打包后的程序代码进行备份。其中,服务器200根据构建任务对程序代码进行编译和签名操作,并对经过编译和签名操作后的程序代码进行打包操作,然后对打包的程序代码进行备份,同时将构建任务的状态修改为完成。在步骤3304中,16^服务器200向客户端100发出构建103应用完成的提示信息,并向客户端100提供打包后的程序代码的下载。
[0019]根据另一实施方式,如果存在多个166服务器200-1、200-2、…200-11 6为自然数,以下统称为服务器200),则在生成新的构建任务之后以及根据构建任务获取相应的程序代码之前,服务器200还将所生成的构建任务分配至多个服务器中处于空闲状态的166服务器。
[0020]以上参照示例性的实施方式对本申请进行了描述,应该理解,上述的实施方式并不应视为对本申请范围的限制。本领域技术人员可在不偏离本申请的精神和范围的前提下对上述的实施方式进行各种修改与变形。本申请的保护范围由权利要求限定。
【权利要求】
1.一种实现1s应用自动编译的方法,包括: 至少一个Web服务器根据从客户端接收的用于构建所述1S应用的请求,向所述客户端返回相应的构建服务信息,以使得所述客户端基于所述构建服务信息返回输入信息; 根据返回的输入信息,所述Web服务器获取相应的程序代码并修改所述程序代码的配置信息,所述相应的程序代码预存在所述Web服务器中; 所述Web服务器根据修改后的配置信息对所述程序代码进行打包,并对打包后的程序代码进行备份;以及 所述Web服务器向客户端发出构建所述1S应用完成的提示信息,并向客户端提供所述打包后的程序代码的下载。
2.如权利要求1所述的方法,其中,所述Web服务器获取相应的程序代码并修改所述程序代码的配置信息的步骤包括: 根据所述客户端返回的输入信息生成新的构建任务;以及 根据所述构建任务获取相应的程序代码并修改所述程序代码的配置信息。
3.如权利要求2所述的方法,其中,所述Web服务器对所述程序代码进行打包,并对打包后的程序代码进行备份的步骤包括: 根据所述构建任务对所述程序代码进行编译和签名操作; 对经过编译和签名操作后的程序代码进行打包操作; 对打包的程序代码进行备份;以及 将所述构建任务的状态修改为完成。
4.如权利要求1所述的方法,其中,所述构建服务信息至少包括以下之一: 构建列表信息、构建进度信息、构建结果信息以及新建构建信息。
5.如权利要求1所述的方法,其中,所述输入信息至少包括以下之一: 构建名称、代码url、构建类型、版本号、编译证书、编译证书密码。
6.如权利要求2或3所述的方法,其中,如果存在多个Web服务器,则在生成新的构建任务与根据所述构建任务获取相应的程序代码的步骤之间还包括:将所生成的构建任务分配至所述多个Web服务器中处于空闲状态的Web服务器。
7.一种实现1S应用自动编译的系统,包括: 至少一个客户端;以及 至少一个Web服务器; 其中,所述Web服务器包括: 接收模块,用于接收来自所述客户端的构建所述1S应用的请求以及客户端基于所述Web服务器返回的构建服务信息而返回的输入信息; 任务生成模块,根据所述输入信息生成新的构建任务; 任务处理模块,用于根据所述构建任务获取相应的程序代码并修改所述程序代码的配置信息,在修改之后,所述任务处理模块还根据所述构建任务对所述程序代码进行打包,并对打包后的程序代码进行备份,同时将所述构建任务的状态修改为完成;以及 发送模块,用于向客户端返回相应的构建服务信息以及发出构建所述1S应用完成的提示信息,并向客户端提供所述打包后的程序代码的下载。
8.如权利要求7所述的系统,其中,所述构建服务信息至少包括以下之一:构建列表信息、构建进度信息、构建结果信息以及新建构建信息。
9.如权利要求7所述的系统,其中,所述输入信息至少包括以下之一:构建名称、代码url、构建类型、版本号、编译证书、编译证书密码。
10.如权利要求7所述的系统,其中,所述Web服务器还包括: 任务调度模块,用于将所生成的构建任务分配至所述至少一个Web服务器中处于空闲状态的Web服务器。
【文档编号】H04L29/08GK104423955SQ201310400030
【公开日】2015年3月18日 申请日期:2013年9月5日 优先权日:2013年9月5日
【发明者】赵晨 申请人:北大方正集团有限公司, 方正信息产业控股有限公司, 北京北大方正电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1