CN104539476A - 数据包获取方法和装置 - Google Patents
数据包获取方法和装置 Download PDFInfo
- Publication number
- CN104539476A CN104539476A CN201410756679.7A CN201410756679A CN104539476A CN 104539476 A CN104539476 A CN 104539476A CN 201410756679 A CN201410756679 A CN 201410756679A CN 104539476 A CN104539476 A CN 104539476A
- Authority
- CN
- China
- Prior art keywords
- code
- server
- packet
- information
- application parameter
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本公开是关于一种数据包获取方法和装置,属于网络技术领域。所述方法包括:接收中间服务器发送的应用参数信息;获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。本发明无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
Description
技术领域
本公开是关于网络技术领域,具体来说是关于数据包获取方法和装置。
背景技术
随着智能设备的快速发展,用户对智能设备的***要求越来越高,为了满足用户日益提升的要求,智能设备的供应商需要经常更新***。而***是以代码为基础构建的,如果要更新***,首先要对***的代码进行更新。
原***中包括很多原始代码,这些原始代码可以保存在代码服务器上。当开发人员要对其中的指定原始代码进行修改时,可以使用计算机从该代码服务器上下载该指定原始代码,并在该计算机上对该指定原始代码进行修改,该计算机获取修改后的代码,从该代码服务器上下载***的所有原始代码,根据开发人员手动输入的编译指令,对下载的所有原始代码和该修改后的代码进行编译,编译完成时得到数据包,该计算机可以向测试设备发送该数据包,该测试设备安装该数据包,开发人员即可在该测试设备上,查看该测试设备的运行状态,从而验证***的更新效果。
在实现本发明的过程中,发明人发现相关技术存在缺陷,例如:
上述下载代码和编译代码的过程会在很长时间内,占用计算机过多的资源,影响计算机的正常使用。其中编译代码的过程只能由开发人员通过手动输入编译指令完成,操作繁琐,很容易会出现错误,而且要求开发人员必须具有编译代码的技术背景,对开发人员的技术背景要求很高。
发明内容
为了解决相关技术中存在的问题,本公开提供了一种数据包获取方法和装置。所述技术方案如下:
根据本公开实施例的第一方面,提供了一种数据包获取方法,所述方法应用于编译服务器中,所述方法包括:
接收中间服务器发送的应用参数信息,所述应用参数信息由终端发送给所述中间服务器,所述中间服务器用于从多个编译服务器中,选择所述编译服务器,且所述应用参数信息至少包括代码版本信息;
获取所述代码版本信息对应的代码;
根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述获取所述代码版本信息对应的代码,包括:
当所述代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,所述第一类代码是指已确认的代码;或者,
当所述代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,所述审核服务器用于存储第二类代码,所述第二类代码是指未确认的代码;或者,
当所述代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,调用与所述审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,根据所述第二代码,对所述第一代码进行修改,得到修改后的代码。
在另一实施例中,所述获取所述代码版本信息对应的代码之前,所述方法还包括:
从代码服务器上,下载每个第一类代码,所述代码服务器用于存储第一类代码;
获取每个第一类代码的代码版本信息;
根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
在另一实施例中,所述根据所述第二代码,对所述第一代码进行修改,得到修改后的代码之后,所述方法还包括:
当所述应用参数信息还包括指定文件标识时,根据所述指定文件标识,获取所述指定文件,所述指定文件中包括代码修改后的路径;
按照所述指定文件中的路径,重新加载所述修改后的代码;
相应的,所述根据预设编译指令,对所述获取到的代码进行编译,得到数据包,包括:
根据所述预设编译指令,对重新加载的代码进行编译,得到数据包。
在另一实施例中,所述根据预设编译指令,对所述获取到的代码进行编译,得到数据包之前,所述方法还包括:
当所述应用参数信息还包括环境变量信息时,根据所述环境变量信息,配置环境变量;
相应的,所述根据预设编译指令,对所述获取到的代码进行编译,得到数据包,包括:
根据所述预设编译指令和所述环境变量,对所述获取到的代码进行编译,得到所述数据包。
根据本公开实施例的第二方面,提供了一种数据包获取方法,所述方法应用于终端中,所述方法包括:
显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述方法还包括:
当检测到对当前代码的编辑操作时,根据所述编辑操作,对当前代码进行编辑,得到编辑后的代码;
当接收到代码提交指令时,向审核服务器发送所述编辑后的代码,所述审核服务器用于存储所述编辑后的代码。
根据本公开实施例的第三方面,提供了一种数据包获取方法,所述方法应用于中间服务器中,所述方法包括:
接收终端发送的应用参数信息,所述应用参数信息至少包括代码版本信息;
从多个编译服务器中,选择一个处于空闲状态的编译服务器;
向所述选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
当接收到所述数据包时,存储所述数据包;
根据所述数据包的存储位置,生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述方法还包括:
当所述多个编译服务器中的每个编译服务器均处于繁忙状态时,每当接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列;
当任一编译服务器从繁忙状态切换至空闲状态时,按照所述任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息;
向所述从繁忙状态切换至空闲状态的编译服务器发送所述添加时间最早的应用参数信息。
根据本公开实施例的第四方面,提供了一种数据包获取装置,所述装置包括:
信息接收模块,用于接收中间服务器发送的应用参数信息,所述应用参数信息由终端发送给所述中间服务器,所述中间服务器用于从多个编译服务器中,选择所述编译服务器,且所述应用参数信息至少包括代码版本信息;
代码获取模块,用于获取所述代码版本信息对应的代码;
编译模块,用于根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
数据包发送模块,用于向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述代码获取模块用于当所述代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,所述第一类代码是指已确认的代码;或者,当所述代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,所述审核服务器用于存储第二类代码,所述第二类代码是指未确认的代码;或者,当所述代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,调用与所述审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,根据所述第二代码,对所述第一代码进行修改,得到修改后的代码。
在另一实施例中,所述装置还包括:
代码下载模块,用于从代码服务器上,下载每个第一类代码,所述代码服务器用于存储第一类代码;
版本信息获取模块,用于获取每个第一类代码的代码版本信息;
对应关系建立模块,用于根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
在另一实施例中,所述装置还包括:
指定文件获取模块,用于当所述应用参数信息还包括指定文件标识时,根据所述指定文件标识,获取所述指定文件,所述指定文件中包括代码修改后的路径;
加载模块,用于按照所述指定文件中的路径,重新加载所述修改后的代码;
相应的,所述编译模块用于根据所述预设编译指令,对重新加载的代码进行编译,得到数据包。
在另一实施例中,所述装置还包括:
配置模块,用于当所述应用参数信息还包括环境变量信息时,根据所述环境变量信息,配置环境变量;
相应的,所述编译模块用于根据所述预设编译指令和所述环境变量,对所述获取到的代码进行编译,得到所述数据包。
根据本公开实施例的第五方面,提供了一种数据包获取装置,所述装置包括:
界面显示模块,用于显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
信息获取模块,用于获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
发送模块,用于向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述装置还包括:
编辑模块,用于当检测到对当前代码的编辑操作时,根据所述编辑操作,对当前代码进行编辑,得到编辑后的代码;
提交模块,用于当接收到代码提交指令时,向审核服务器发送所述编辑后的代码,所述审核服务器用于存储所述编辑后的代码。
根据本公开实施例的第六方面,提供了一种数据包获取装置,所述装置包括:
信息接收模块,用于接收终端发送的应用参数信息,所述应用参数信息至少包括代码版本信息;
选择模块,用于从多个编译服务器中,选择一个处于空闲状态的编译服务器;
信息发送模块,用于向所述选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
存储模块,用于当接收到所述数据包时,存储所述数据包;
链接地址生成模块,用于根据所述数据包的存储位置,生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述装置还包括:
任务添加模块,用于当所述多个编译服务器中的每个编译服务器均处于繁忙状态时,每当接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列;
信息选取模块,用于当任一编译服务器从繁忙状态切换至空闲状态时,按照所述任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息;
所述信息发送模块,还用于向所述从繁忙状态切换至空闲状态的编译服务器发送所述添加时间最早的应用参数信息。
根据本公开实施例的第七方面,提供了一种数据包获取装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收中间服务器发送的应用参数信息,所述应用参数信息由终端发送给所述中间服务器,所述中间服务器用于从多个编译服务器中,选择所述编译服务器,且所述应用参数信息至少包括代码版本信息;
获取所述代码版本信息对应的代码;
根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
根据本公开实施例的第八方面,提供了一种数据包获取装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
根据本公开实施例的第九方面,提供了一种数据包获取装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收终端发送的应用参数信息,所述应用参数信息至少包括代码版本信息;
从多个编译服务器中,选择一个处于空闲状态的编译服务器;
向所述选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
当接收到所述数据包时,存储所述数据包;
根据所述数据包的存储位置,生成所述数据包的链接地址,以供所述数据包的下载。
本公开的实施例提供的技术方案可以包括以下有益效果:
本实施例提供的方法和装置,通过终端获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种数据包获取***的结构示意图;
图2是根据一示例性实施例示出的一种数据包获取方法的流程图;
图3是根据一示例性实施例示出的一种数据包获取方法的流程图;
图4是根据一示例性实施例示出的一种数据包获取方法的流程图;
图5是根据一示例性实施例示出的一种数据包获取方法的流程图;
图6是根据一示例性实施例示出的应用参数输入界面的示意图;
图7是根据一示例性实施例示出的一种数据包获取装置的框图;
图8是根据一示例性实施例示出的一种数据包获取装置的框图;
图9是根据一示例性实施例示出的一种数据包获取装置的框图;
图10是根据一示例性实施例示出的一种用于数据包获取的装置的框图;
图11是根据一示例性实施例示出的一种用于数据包获取的装置的框图;
图12是根据一示例性实施例示出的一种用于数据包获取的装置的框图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本公开做进一步详细说明。在此,本公开的示意性实施方式及其说明用于解释本公开,但并不作为对本公开的限定。
本公开实施例提供一种数据包获取方法和装置,以下结合附图对本公开进行详细说明。
图1是根据一示例性实施例示出的一种数据包获取***的结构示意图,如图1所示,该数据包获取***包括终端、中间服务器和多个编译服务器,该终端与该中间服务器之间通过网络连接,该中间服务器与该多个编译服务器之间通过网络连接。
其中,该终端用于显示应用参数输入界面,获取在该应用参数输入界面输入的应用参数信息,该应用参数信息至少包括代码版本信息,该终端还用于向该中间服务器发送该应用参数信息。该中间服务器用于当接收到该应用参数信息时,从多个编译服务器中,选择一个处于空闲状态的编译服务器,向该选择的编译服务器发送该应用参数信息。该多个编译服务器中的每个编译服务器用于当接收到该应用参数信息时,获取该代码版本信息对应的代码,根据预设编译指令,对该获取到的代码进行编译,得到数据包,向该中间服务器发送该数据包。该中间服务器还用于当接收到该数据包时,根据该数据包的存储位置,生成该数据包的链接地址,以供该数据包的下载。
在另一实施例中,该数据包获取***还可以包括代码服务器和审核服务器,该多个编译服务器与该代码服务器通过网络连接,且该多个编译服务器与该审核服务器通过网络连接。
其中,该代码服务器用于存储第一类代码,该审核服务器用于存储第二类代码。该第一类代码是指已确认的代码,该第二类代码是指还未确认的代码。该多个编译服务器中的每个编译服务器可以从该代码服务器下载第一类代码,还可以从该审核服务器获取第二类代码。
图2是根据一示例性实施例示出的一种数据包获取方法的流程图,如图2所示,该数据包获取方法用于编译服务器中,包括以下步骤:
在步骤201中,接收中间服务器发送的应用参数信息,该应用参数信息由终端发送给该中间服务器,该中间服务器用于从多个编译服务器中,选择该编译服务器,且该应用参数信息至少包括代码版本信息。
在步骤202中,获取该代码版本信息对应的代码。
在步骤203中,根据预设编译指令,对该获取到的代码进行编译,得到数据包。
在步骤204中,向该中间服务器发送该数据包,该中间服务器用于生成该数据包的链接地址,以供该数据包的下载。
本实施例提供的方法,通过终端获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
在另一实施例中,该获取该代码版本信息对应的代码,包括:
当该代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的第一代码,该第一类代码是指已确认的代码;或者,
当该代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取该第二代码版本信息对应的第二代码,该审核服务器用于存储第二类代码,该第二类代码是指未确认的代码;或者,
当该代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的第一代码,调用与该审核服务器之间的接口,获取该第二代码版本信息对应的第二代码,根据该第二代码,对该第一代码进行修改,得到修改后的代码。
在另一实施例中,该获取该代码版本信息对应的代码之前,该方法还包括:
从代码服务器上,下载每个第一类代码,该代码服务器用于存储第一类代码;
获取每个第一类代码的代码版本信息;
根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
在另一实施例中,该根据该第二代码,对该第一代码进行修改,得到修改后的代码之后,该方法还包括:
当该应用参数信息还包括指定文件标识时,根据该指定文件标识,获取该指定文件,该指定文件中包括代码修改后的路径;
按照该指定文件中的路径,重新加载该修改后的代码;
相应的,该根据预设编译指令,对该获取到的代码进行编译,得到数据包,包括:
根据该预设编译指令,对重新加载的代码进行编译,得到数据包。
在另一实施例中,该根据预设编译指令,对该获取到的代码进行编译,得到数据包之前,该方法还包括:
当该应用参数信息还包括环境变量信息时,根据该环境变量信息,配置环境变量;
相应的,该根据预设编译指令,对该获取到的代码进行编译,得到数据包,包括:
根据该预设编译指令和该环境变量,对该获取到的代码进行编译,得到该数据包。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
图3是根据一示例性实施例示出的一种数据包获取方法的流程图,如图3所示,该数据包获取方法用于终端中,包括以下步骤:
在步骤301中,显示应用参数输入界面,该应用参数输入界面用于输入在获取数据包过程中所需的参数。
在步骤302中,获取在该应用参数输入界面输入的应用参数信息,该应用参数信息至少包括代码版本信息。
在步骤303中,向中间服务器发送该应用参数信息,该中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送该应用参数信息,该选择的编译服务器用于获取该代码版本信息对应的代码;根据预设编译指令,对该获取到的代码进行编译,得到数据包,向该中间服务器发送该数据包,该中间服务器用于生成该数据包的链接地址,以供该数据包的下载。
本实施例提供的方法,通过终端获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
在另一实施例中,该方法还包括:
当检测到对当前代码的编辑操作时,根据该编辑操作,对当前代码进行编辑,得到编辑后的代码;
当接收到代码提交指令时,向审核服务器发送该编辑后的代码,该审核服务器用于存储该编辑后的代码。
图4是根据一示例性实施例示出的一种数据包获取方法的流程图,如图4所示,该数据包获取方法用于中间服务器中,包括以下步骤:
在步骤401中,接收终端发送的应用参数信息,该应用参数信息至少包括代码版本信息。
在步骤402中,从多个编译服务器中,选择一个处于空闲状态的编译服务器。
在步骤403中,向该选择的编译服务器发送该应用参数信息,该选择的编译服务器用于获取该代码版本信息对应的代码;根据预设编译指令,对该获取到的代码进行编译,得到数据包。
在步骤404中,当接收到该数据包时,存储该数据包。
在步骤405中,根据该数据包的存储位置,生成该数据包的链接地址,以供该数据包的下载。
本实施例提供的方法,通过终端获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
在另一实施例中,该方法还包括:
当该多个编译服务器中的每个编译服务器均处于繁忙状态时,每当接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列;
当任一编译服务器从繁忙状态切换至空闲状态时,按照该任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息;
向该从繁忙状态切换至空闲状态的编译服务器发送该添加时间最早的应用参数信息。
图5是根据一示例性实施例示出的一种数据包获取方法的流程图,如图5所示,本实施例的交互主体为终端、中间服务器和编译服务器,包括以下步骤:
在步骤501中,该终端显示应用参数输入界面,获取在该应用参数输入界面输入的应用参数信息,该应用参数信息至少包括代码版本信息。
在本实施例中,该终端可以为计算机、手机等设备,该应用参数输入界面用于输入在获取数据包过程中所需的参数,输入的参数可以包括代码版本信息、环境变量信息、指定文件标识、开发人员的联系方式等,相应的,该应用参数输入界面可以包括每种参数对应的信息输入栏,开发人员在信息输入栏中输入相应的参数。
其中,该代码版本信息用于表示待编译代码的版本,该待编译代码可以为第一类代码,该第一类代码是指已确认的代码,则该代码版本信息可以包括该待编译代码所适用设备的版本信息,如该待编译代码所适用设备的型号、该待编译代码的版本号等等。该待编译代码还可以为第二类代码,该第二类代码是指未确认的代码,则该代码版本信息可以包括该待编译代码的版本信息,如该待编译代码的文件名称、版本号等。该环境变量信息用于指示待配置的环境变量,后续编译服务器可以根据该环境变量信息配置环境变量,该指定文件标识用于唯一确定指定文件,可以为该指定文件的名称、编号等,而该指定文件是指用于存储代码路径的文件,该指定文件中包括每个代码在编译时的路径,可以为manifest(清单)文件等,该联系方式可以为开发人员的电话号码或者邮箱地址等,本实施例对此均不做限定。
该终端还可以在该应用参数输入界面中提供确认提交选项,当该终端检测到对该确认提交选项的点击操作时,表示开发人员输入参数完成,则该终端获取开发人员在该应用参数输入界面输入的应用参数信息,向该中间服务器发送该应用参数信息。
例如,该应用参数输入界面可以如图6所示,开发人员可以在该应用参数输入界面输入已确认代码所适用设备的机型“手机4s(CDMA)”、代码版本“v5-jb-dev”、用户类型“调试人员”、联系方式“XXXX126.com”。当开发人员已上传未确认的代码时,可以在“Check out方式获取代码”的输入栏中输入该未确认的代码的版本“124614”,当该未确认的代码“124614”对manifest文件进行了修改时,可以在“修改的manifest文件”的输入栏中输入被修改的manifest文件标识“jb-5.xml”,当要编译的代码对环境变量有要求时,开发人员在“定义环境变量”的输入栏中输入环境变量信息“foo=bar”。当开发人员输入完成时,点击“确认提交”选项,则该终端获取输入的应用参数信息。
另外,该应用参数输入界面可以由中间服务器预先发送给该终端,该终端可以提供编译选项,当该终端检测到对该编译选项的点击操作时,可以显示该应用参数输入界面。
在该步骤501之前,该方法还可以包括步骤500:该终端获取当前代码,当检测到对当前代码的编辑操作时,根据该编辑操作,对当前代码进行编辑,得到编辑后的代码。当该终端接收到代码提交指令时,向审核服务器发送该编辑后的代码,当该审核服务器接收到该编辑后的代码时,存储该编辑后的代码。
开发人员可以在该终端上对代码进行编辑,得到编辑后的代码。该终端还可以提供代码提交选项,该代码提交指令可以由对该代码提交选项的点击操作触发。当开发人员确定代码编辑完成,需要进行编译时,可以点击该代码提交选项,则该终端接收到代码提交指令,向该审核服务器发送该编辑后的代码,该审核服务器存储该编辑后的代码,以便后续该编译服务器能够从该审核服务器获取该编辑后的代码。
当然,该步骤500还可以在其他终端上执行,即执行步骤500的终端和执行步骤501终端可以为同一终端,也可以为不同终端,本实施例对此不做限定。以第一终端和第二终端为例,该第一终端执行步骤500,向该审核服务器上传该编辑后的代码,当要对该编辑后的代码进行编译,生成数据包时,可以由该第二终端执行步骤501,以发起生成数据包的过程。
在本实施例中,该审核服务器用于存储该第二类代码,可以为gerrit codereview(格里特代码审查)服务器等,而代码服务器用于存储该第一类代码。每当开发人员对代码进行编辑后,都可以使用终端将编辑后的代码上传至该审核服务器,该审核服务器存储每个终端上传的、未确认的代码。之后,对于每个未确认的代码,多个开发人员都可以访问该审核服务器,对该代码进行审核,当该多个开发人员确定该代码审核通过时,触发对该代码的确认指令,当该审核服务器接收到对该代码的确认指令时,表示该代码已确认,则该审核服务器向该代码服务器发送该代码,由该代码服务器存储该代码。相应的,该编译服务器可以从该审核服务器获取第二类代码,从该代码服务器获取第一类代码。
在步骤502中,该终端向该中间服务器发送该应用参数信息。
其中,该中间服务器用于对多个编译服务器进行调度,每当终端获取到应用参数信息时,可以向该中间服务器发送该应用参数信息,该中间服务器接收到终端的应用参数信息时,可以为该终端选择一个编译服务器,由选择的编译服务器为该终端执行编译代码以生成数据包的过程,也即是为该终端执行编译任务。
在步骤503中,当该中间服务器接收到该应用参数信息时,从多个编译服务器中,选择一个处于空闲状态的编译服务器。
在步骤504中,该中间服务器向该编译服务器发送该应用参数信息。
在本实施例中,当该编译服务器正在执行编译任务时,表示该编译服务器处于繁忙状态,当该编译服务器未执行编译任务时,表示该编译服务器处于空闲状态。该中间服务器可以与多个编译服务器连接,根据该中间服务器向该编译服务器发送应用参数信息的时间和接收该编译服务器返回的数据包的时间,确定该编译服务器当前的状态。
当该中间服务器接收到该应用参数信息时,可以从该多个编译服务器中,选择一个处于空闲状态的编译服务器,向该处于空闲状态的编译服务器发送该应用参数信息,由该处于空闲状态的编译服务器为该终端执行编译任务。
另外,如果每个编译服务器都处于繁忙状态,该中间服务器可以建立任务队列,每当该中间服务器接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列,当任一编译服务器从繁忙状态切换至空闲状态时,该中间服务器可以按照该任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息,向该从繁忙状态切换至空闲状态的编译服务器发送该添加时间最早的应用参数信息,由该编译服务器根据该添加时间最早的应用参数信息,执行编译任务。
在步骤505中,当该编译服务器接收到该应用参数信息时,获取该代码版本信息对应的代码。
在本实施例中,该步骤505可以包括以下步骤(1)-(3)中的任一项:
(1)当该代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的第一代码,该第一类代码是指已确认的代码。
当该代码版本信息中包括第一类代码的第一代码版本信息时,表示开发人员请求对第一类代码进行编译,则该编译服务器获取该第一代码版本信息对应的第一代码。为了节省编译时间,该编译服务器可以预先下载每个第一类代码,当接收到该应用参数信息时,可以根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的代码,作为第一代码。
例如,每当该编译服务器下载第一类代码时,按照该第一类代码的第一代码版本信息,确定该第一类代码的路径,将该第一类代码保存在该路径下。当后续该编译服务器获取到该应用参数信息时,根据该第一代码版本信息确定代码的路径,根据该路径获取到对应的第一代码。
相应的,该步骤(1)之前,该方法还包括:该编译服务器从该代码服务器上,下载每个第一类代码,获取每个第一类代码的代码版本信息,根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
另外,该编译服务器可以在指定时间段,从该代码服务器上下载更新的第一类代码。其中,该指定时间段可以根据该编译服务器的空闲时段确定,可以为每天的下班时间、节假日等,如每天的0点至6点,本实施例对此不做限定。通过每个编译服务器在空闲时段,从该代码服务器上下载最近更新的第一类代码,能够获取到该代码服务器中所有的第一类代码,当该编译服务器接收到该第一类代码的版本信息时,即可直接从下载的第一类代码中获取代码,无需等待下载代码,节省了编译时间。
(2)当该代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取该第二代码版本信息对应的第二代码,该审核服务器用于存储第二类代码,该第二类代码是指未确认的代码。
当该代码版本信息包括第二类代码的第二代码版本信息时,表示开发人员请求对第二类代码进行编译,则该编译服务器调用与该审核服务器之间的接口,获取该第二代码版本信息对应的代码,作为第二代码。
(3)当该代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的第一代码,调用与该审核服务器之间的接口,获取该第二代码版本信息对应的第二代码,根据该第二代码,对该第一代码进行修改,得到修改后的代码。
当该代码版本信息包括该第一代码版本信息和该第二代码版本信息时,表示开发人员已上传第二类代码,并请求根据第二类代码,对第一类代码进行修改后编译,则该编译服务器获取该第一代码版本信息对应的代码,作为第一代码,获取该第二代码版本信息对应的代码,作为第二代码。根据该第二代码,对该第一代码进行修改,得到修改后的代码。其中,该编译服务器可以采用cherrypick(选择)的方式或者check out(检查)的方式,根据该第二代码,对该第一代码进行修改,本实施例对此不做限定。
对于一个***来说,该***中可能包括很多第一类代码。而为了对***进行更新,开发人员可能会对该***中的一个或几个代码进行编辑,得到编辑后的代码,该编辑后的代码为第二类代码,则开发人员可以将编辑后的代码上传至该审核服务器。当该开发人员希望验证编辑后的代码的运行效果时,可以在该应用参数界面中,输入该编辑后代码的第二代码版本信息,并输入该***所适用设备的第一代码版本信息,则该编译服务器可以根据第一代码版本信息,获取到该***的所有第一类代码,根据该第二代码版本信息,获取到该编辑后的代码,则可以根据该编辑后的代码,对该第一类代码中与该编辑后的代码对应的代码进行修改,再对修改后的代码进行编译。即将该第一类代码中与该编辑后的代码对应的代码替换为该编辑后的代码,对替换后的代码进行编译。
另外,该编译服务器可能曾经执行过编译任务,本地下载的第一类代码可能会在之前的编译过程中被修改或者添加了新的代码,则在本次编译过程中,当该编译服务器获取到该第一代码时,可以先执行清除命令,清除之前的编译过程对该第一代码的影响,再根据该第二代码,对该第一代码进行修改,得到修改后的代码。该清除命令可以为repo forall–c git reset––hard或者为其他命令,本实施例对此不做限定。
在步骤506中,该编译服务器根据预设编译指令,对该获取到的代码进行编译,得到数据包。
在本实施例中,该编译服务器预先获取该预设编译指令,当要对代码进行编译时,根据该预设编译指令,对该代码进行编译即可。
其中,当该应用参数信息中包括该环境变量信息时,该编译服务器先根据该环境变量信息,配置环境变量,根据该预设编译指令和配置的环境变量,对获取到的代码进行编译,得到数据包。
另外,在上述步骤(3)修改代码的过程中,该编译服务器可能会对该指定文件进行修改,即对该指定文件中代码的路径进行修改。当该应用参数信息中包括该指定文件标识时,表示该指定文件已被修改,该指定文件中包括每个代码修改后的路径,则该编译服务器根据该指定文件标识,获取该指定文件,按照该指定文件中每个代码修改后的路径,重新加载修改后的代码,使得修改后的代码的路径与该指定文件中代码的路径相同,该修改后的代码在编译时能够生效。之后,该编译服务器可以根据该预设编译指令,对重新加载的代码进行编译,得到数据包。
当然,当该应用参数信息中包括该环境变量信息和该指定文件标识时,该编译服务器根据该环境变量信息,配置环境变量,根据该指定文件标识,获取该指定文件,按照该指定文件中每个代码修改后的路径,重新加载修改后的代码,再根据该预设编译指令和该环境变量,对重新加载的代码进行编译,得到数据包。
在步骤507中,该编译服务器向该中间服务器发送该数据包。
在步骤508中,当该中间服务器接收到该数据包时,存储该数据包,根据该数据包的存储位置,生成该数据包的链接地址,以供该数据包的下载。
当该中间服务器生成该数据包的链接地址时,可以发布该链接地址,则其他终端访问该中间服务器时,可以获取到该链接地址,根据该链接地址,下载该数据包,以便将该数据包发送给测试设备。或者,当该应用参数信息中包括开发人员的联系方式时,该中间服务器可以基于该联系方式,向该联系方式对应的终端发送该链接地址,该终端即可根据该链接地址,下载该数据包,以便将该数据包发送给测试设备。或者,该测试设备可以直接访问该中间服务器,获取该链接地址,根据该链接地址,下载该数据包。后续过程中,该测试设备获取该数据包时,安装该数据包,则开发人员即可在该测试设备上,查看该测试设备的运行状态,验证代码的运行效果。
需要说明的是,上述实施例中以该中间服务器用于与该终端和多个编译服务器分别进行交互为例进行说明,而在实际应用中,该中间服务器可以包括一个服务器,也可以包括多个服务器,本实施例对此不做限定。以该中间服务器包括第一服务器和第二服务器为例,该第一服务器用于与该终端进行交互,该第二服务器用于与多个编译服务器进行交互。
当该终端获取到该应用参数信息时,向该第一服务器发送该应用参数信息,该第一服务器接收该应用参数信息,将该应用参数信息打包成JSON(JavaScriptObject Notation,JavaScript对象表示法)格式的应用参数数据包,向该第二服务器发送该应用参数数据包。例如,该第一服务器可以建立关联数组,该关联数组中包括键值对,其中的键(key)为参数名称,值(value)为参数值,对于该应用参数信息中的每个参数,建立该参数的键值对,添加至该关联数组,当已将该应用参数信息中的每个参数的键值对添加至该关联数组时,调用PHP(Hypertext Preprocessor,超文本预处理器)的json_encode函数,将该关联数组转换成JSON格式,得到该应用参数数据包,再调用PHP的curl函数,向该第二服务器发送该应用参数数据包。
当该第二服务器接收到该应用参数数据包时,根据JSON格式,对该应用参数数据包进行解析,得到该应用参数信息,从多个编译服务器中选择一个处于空闲状态的编译服务器,向该编译服务器发送该应用参数信息,由该编译服务器根据该应用参数信息,生成数据包,返回给该第二服务器。当该第二服务器接收到该编译服务器返回的数据包时,向该第一服务器发送该数据包,该第一服务器存储该数据包,根据该数据包的存储位置,生成该数据包的链接地址,向该终端发送该链接地址。其中,该第一服务器可以为Web(网页)服务器或者其他服务器,该第二服务器可以为jenkins(詹金斯)服务器或者其他服务器,本实施例对此不做限定。
在本实施例中,该中间服务器采用网页的形式,为该终端提供图形化的应用参数输入界面,便于开发人员部署编译任务,操作简单,降低了出现错误的概率,开发人员只需获知编译过程中所需的参数即可,无需具备编译代码的技术背景,降低了对开发人员技术背景的要求,节省了人力成本。在后端采用专门的多个编译服务器进行编译,通过该多个编译服务器实现了多个开发人员的编译需求,实现了资源公用,解放了开发人员自己的终端的资源,使得开发人员在提交编译任务之后还可以使用自己的终端进行其他工作,减少了资源浪费。且每个编译服务器预先下载更新的第一类代码,在进行编译时无需等待下载代码,节省了编译时间,提高了编译效率。
相关技术中,编译过程对终端工作环境的要求与开发过程对终端工作环境的要求可能不同,则在开发完成时,为了编译成功,需要由开发人员手动对该终端的工作环境进行切换,使得当前工作环境符合编译过程的要求,能够进行编译,操作繁琐,而且会耗费很长时间。如终端在开发时的工作环境为JDK(JavaDevelopment Kit,Java开发工具包)版本8,而在编译代码时的工作环境为JDK版本6,则要将终端的工作环境从JDK版本8切换为版本6。
而在本实施例中,该编译服务器预先根据编译过程的要求,配置好工作环境,在该工作环境下进行编译即可。另外,对于不同开发人员所发起的编译任务,编译过程对工作环境的要求也可能不同,则该编译服务器可以自动的切换工作环境,使得当前工作环境符合当前编译过程的要求,无需开发人员手动切换,操作简便。
本实施例提供的方法,通过终端获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,减小了资源浪费,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。该编译服务器预先下载第一类代码,节省了编译时间,提高了编译效率。
图7是根据一示例性实施例示出的一种数据包获取装置的框图。参见图7,该装置包括信息接收模块701,代码获取模块702,编译模块703和数据包发送模块704。
信息接收模块701被配置为用于接收中间服务器发送的应用参数信息,该应用参数信息由终端发送给该中间服务器,该中间服务器用于从多个编译服务器中,选择该编译服务器,且该应用参数信息至少包括代码版本信息;
代码获取模块702被配置为用于获取该代码版本信息对应的代码;
编译模块703被配置为用于根据预设编译指令,对该获取到的代码进行编译,得到数据包;
数据包发送模块704被配置为用于向该中间服务器发送该数据包,该中间服务器用于生成该数据包的链接地址,以供该数据包的下载。
本实施例提供的装置,通过终端获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的数据包获取装置,由该选择的数据包获取装置根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
在另一实施例中,该代码获取模块702被配置为用于当该代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的第一代码,该第一类代码是指已确认的代码;或者,当该代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取该第二代码版本信息对应的第二代码,该审核服务器用于存储第二类代码,该第二类代码是指未确认的代码;或者,当该代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取该第一代码版本信息对应的第一代码,调用与该审核服务器之间的接口,获取该第二代码版本信息对应的第二代码,根据该第二代码,对该第一代码进行修改,得到修改后的代码。
在另一实施例中,该装置还包括:
代码下载模块被配置为用于从代码服务器上,下载每个第一类代码,该代码服务器用于存储第一类代码;
版本信息获取模块被配置为用于获取每个第一类代码的代码版本信息;
对应关系建立模块被配置为用于根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
在另一实施例中,该装置还包括:
指定文件获取模块被配置为用于当该应用参数信息还包括指定文件标识时,根据该指定文件标识,获取该指定文件,该指定文件中包括代码修改后的路径;
加载模块被配置为用于按照该指定文件中的路径,重新加载该修改后的代码;
相应的,该编译模块703被配置为用于根据该预设编译指令,对重新加载的代码进行编译,得到数据包。
在另一实施例中,该装置还包括:
配置模块被配置为用于当该应用参数信息还包括环境变量信息时,根据该环境变量信息,配置环境变量;
相应的,该编译模块703被配置为用于根据该预设编译指令和该环境变量,对该获取到的代码进行编译,得到该数据包。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
图8是根据一示例性实施例示出的一种数据包获取装置的框图。参见图8,该装置包括界面显示模块801,信息获取模块802和发送模块803。
界面显示模块801被配置为用于显示应用参数输入界面,该应用参数输入界面用于输入在获取数据包过程中所需的参数;
信息获取模块802被配置为用于获取在该应用参数输入界面输入的应用参数信息,该应用参数信息至少包括代码版本信息;
发送模块803被配置为用于向中间服务器发送该应用参数信息,该中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送该应用参数信息,该选择的编译服务器用于获取该代码版本信息对应的代码;根据预设编译指令,对该获取到的代码进行编译,得到数据包,向该中间服务器发送该数据包,该中间服务器用于生成该数据包的链接地址,以供该数据包的下载。
本实施例提供的装置,通过获取应用参数信息,中间服务器从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
在另一实施例中,该装置还包括:
编辑模块被配置为用于当检测到对当前代码的编辑操作时,根据该编辑操作,对当前代码进行编辑,得到编辑后的代码;
提交模块被配置为用于当接收到代码提交指令时,向审核服务器发送该编辑后的代码,该审核服务器用于存储该编辑后的代码。
图9是根据一示例性实施例示出的一种数据包获取装置的框图。参见图9,该装置包括信息接收模块901,选择模块902,信息发送模块903,存储模块904和链接地址生成模块905。
信息接收模块901被配置为用于接收终端发送的应用参数信息,该应用参数信息至少包括代码版本信息;
选择模块902被配置为用于从多个编译服务器中,选择一个处于空闲状态的编译服务器;
信息发送模块903被配置为用于向该选择的编译服务器发送该应用参数信息,该选择的编译服务器用于获取该代码版本信息对应的代码;根据预设编译指令,对该获取到的代码进行编译,得到数据包;
存储模块904被配置为用于当接收到该数据包时,存储该数据包;
链接地址生成模块905被配置为用于根据该数据包的存储位置,生成该数据包的链接地址,以供该数据包的下载。
本实施例提供的装置,通过终端获取应用参数信息,发送给数据包获取装置,该数据包获取装置从多个编译服务器中选择一个处于空闲状态的编译服务器,由该选择的编译服务器根据该应用参数信息所包括的代码版本信息获取代码,根据预设编译指令,对获取到的代码进行编译,得到数据包。无需耗费终端的资源,不会影响到终端的正常使用。对于开发人员来说,只需开发人员输入编译过程中所需的参数,无需手动输入编译指令,简化了操作,降低了出现错误的概率,且降低了对技术背景的要求,节省了人力成本。
在另一实施例中,该装置还包括:
任务添加模块被配置为用于当该多个编译服务器中的每个编译服务器均处于繁忙状态时,每当接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列;
信息选取模块被配置为用于当任一编译服务器从繁忙状态切换至空闲状态时,按照该任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息;
该信息发送模块,还被配置为用于向该从繁忙状态切换至空闲状态的编译服务器发送该添加时间最早的应用参数信息。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是:上述实施例提供的数据包获取装置在获取数据包时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将编译服务器、终端和中间服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据包获取装置与数据包获取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是根据一示例性实施例示出的一种用于数据包获取的装置1000的框图。例如,装置1000可以被提供为一服务器。参照图10,装置1000包括处理组件1022,其进一步包括一个或多个处理器,以及由存储器1032所代表的存储器资源,用于存储可由处理部件1022的执行的指令,例如应用程序。存储器1032中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1022被配置为执行指令,以执行上述数据包获取方法中编译服务器所执行的步骤。
装置1000还可以包括一个电源组件1026被配置为执行装置1000的电源管理,一个有线或无线网络接口1050被配置为将装置1000连接到网络,和一个输入输出(I/O)接口1058。装置1000可以操作基于存储在存储器1032的操作***,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
图11是根据一示例性实施例示出的一种用于数据包获取的装置1100的框图。例如,装置1100可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图11,装置1100可以包括以下一个或多个组件:处理组件1102,存储器1104,电源组件1106,多媒体组件1108,音频组件1110,输入/输出(I/O)的接口1112,传感器组件1114,以及通信组件1116。
处理组件1102通常控制装置1100的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件1102可以包括一个或多个处理器1120来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1102可以包括一个或多个模块,便于处理组件1102和其他组件之间的交互。例如,处理部件1102可以包括多媒体模块,以方便多媒体组件1108和处理组件1102之间的交互。
存储器1104被配置为存储各种类型的数据以支持在装置1100的操作。这些数据的示例包括用于在装置1100上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1104可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件1106为装置1100的各种组件提供电力。电力组件1106可以包括电源管理***,一个或多个电源,及其他与为装置1100生成、管理和分配电力相关联的组件。
多媒体组件1108包括在所述装置1100和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1108包括一个前置摄像头和/或后置摄像头。当装置1100处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件1110被配置为输出和/或输入音频信号。例如,音频组件1110包括一个麦克风(MIC),当装置1100处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1104或经由通信组件1116发送。在一些实施例中,音频组件1110还包括一个扬声器,用于输出音频信号。
I/O接口1112为处理组件1102和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件1114包括一个或多个传感器,用于为装置1100提供各个方面的状态评估。例如,传感器组件1114可以检测到装置1100的打开/关闭状态,组件的相对定位,例如所述组件为装置1100的显示器和小键盘,传感器组件1114还可以检测装置1100或装置1100一个组件的位置改变,用户与装置1100接触的存在或不存在,装置1100方位或加速/减速和装置1100的温度变化。传感器组件1114可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1114还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1114还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件1116被配置为便于装置1100和其他设备之间有线或无线方式的通信。装置1100可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件1116经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件1116还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置1100可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1104,上述指令可由装置1100的处理器1120执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种数据包获取方法,所述方法包括:
显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
在另一实施例中,所述方法还包括:
当检测到对当前代码的编辑操作时,根据所述编辑操作,对当前代码进行编辑,得到编辑后的代码;
当接收到代码提交指令时,向审核服务器发送所述编辑后的代码,所述审核服务器用于存储所述编辑后的代码。
图12是根据一示例性实施例示出的一种用于数据包获取的装置1200的框图。例如,装置1200可以被提供为一服务器。参照图12,装置1200包括处理组件1222,其进一步包括一个或多个处理器,以及由存储器1232所代表的存储器资源,用于存储可由处理部件1222的执行的指令,例如应用程序。存储器1232中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1222被配置为执行指令,以执行上述数据包获取方法中的中间服务器所执行的步骤。
装置1200还可以包括一个电源组件1226被配置为执行装置1200的电源管理,一个有线或无线网络接口1250被配置为将装置1200连接到网络,和一个输入输出(I/O)接口1258。装置1200可以操作基于存储在存储器1232的操作***,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (21)
1.一种数据包获取方法,其特征在于,所述方法应用于编译服务器中,所述方法包括:
接收中间服务器发送的应用参数信息,所述应用参数信息由终端发送给所述中间服务器,所述中间服务器用于从多个编译服务器中,选择所述编译服务器,且所述应用参数信息至少包括代码版本信息;
获取所述代码版本信息对应的代码;
根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
2.根据权利要求1所述的方法,其特征在于,所述获取所述代码版本信息对应的代码,包括:
当所述代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,所述第一类代码是指已确认的代码;或者,
当所述代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,所述审核服务器用于存储第二类代码,所述第二类代码是指未确认的代码;或者,
当所述代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,调用与所述审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,根据所述第二代码,对所述第一代码进行修改,得到修改后的代码。
3.根据权利要求2所述的方法,其特征在于,所述获取所述代码版本信息对应的代码之前,所述方法还包括:
从代码服务器上,下载每个第一类代码,所述代码服务器用于存储第一类代码;
获取每个第一类代码的代码版本信息;
根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
4.根据权利要求2所述的方法,其特征在于,所述根据所述第二代码,对所述第一代码进行修改,得到修改后的代码之后,所述方法还包括:
当所述应用参数信息还包括指定文件标识时,根据所述指定文件标识,获取所述指定文件,所述指定文件中包括代码修改后的路径;
按照所述指定文件中的路径,重新加载所述修改后的代码;
相应的,所述根据预设编译指令,对所述获取到的代码进行编译,得到数据包,包括:
根据所述预设编译指令,对重新加载的代码进行编译,得到数据包。
5.根据权利要求1所述的方法,其特征在于,所述根据预设编译指令,对所述获取到的代码进行编译,得到数据包之前,所述方法还包括:
当所述应用参数信息还包括环境变量信息时,根据所述环境变量信息,配置环境变量;
相应的,所述根据预设编译指令,对所述获取到的代码进行编译,得到数据包,包括:
根据所述预设编译指令和所述环境变量,对所述获取到的代码进行编译,得到所述数据包。
6.一种数据包获取方法,其特征在于,所述方法应用于终端中,所述方法包括:
显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当检测到对当前代码的编辑操作时,根据所述编辑操作,对当前代码进行编辑,得到编辑后的代码;
当接收到代码提交指令时,向审核服务器发送所述编辑后的代码,所述审核服务器用于存储所述编辑后的代码。
8.一种数据包获取方法,其特征在于,所述方法应用于中间服务器中,所述方法包括:
接收终端发送的应用参数信息,所述应用参数信息至少包括代码版本信息;
从多个编译服务器中,选择一个处于空闲状态的编译服务器;
向所述选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
当接收到所述数据包时,存储所述数据包;
根据所述数据包的存储位置,生成所述数据包的链接地址,以供所述数据包的下载。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述多个编译服务器中的每个编译服务器均处于繁忙状态时,每当接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列;
当任一编译服务器从繁忙状态切换至空闲状态时,按照所述任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息;
向所述从繁忙状态切换至空闲状态的编译服务器发送所述添加时间最早的应用参数信息。
10.一种数据包获取装置,其特征在于,所述装置包括:
信息接收模块,用于接收中间服务器发送的应用参数信息,所述应用参数信息由终端发送给所述中间服务器,所述中间服务器用于从多个编译服务器中,选择所述编译服务器,且所述应用参数信息至少包括代码版本信息;
代码获取模块,用于获取所述代码版本信息对应的代码;
编译模块,用于根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
数据包发送模块,用于向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
11.根据权利要求10所述的装置,其特征在于,所述代码获取模块用于当所述代码版本信息包括第一类代码的第一代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,所述第一类代码是指已确认的代码;或者,当所述代码版本信息包括第二类代码的第二代码版本信息时,调用与审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,所述审核服务器用于存储第二类代码,所述第二类代码是指未确认的代码;或者,当所述代码版本信息包括第一类代码的第一代码版本信息和第二类代码的第二代码版本信息时,根据代码版本信息与第一类代码之间的对应关系,从预先下载的第一类代码中,获取所述第一代码版本信息对应的第一代码,调用与所述审核服务器之间的接口,获取所述第二代码版本信息对应的第二代码,根据所述第二代码,对所述第一代码进行修改,得到修改后的代码。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:
代码下载模块,用于从代码服务器上,下载每个第一类代码,所述代码服务器用于存储第一类代码;
版本信息获取模块,用于获取每个第一类代码的代码版本信息;
对应关系建立模块,用于根据每个第一类代码的代码版本信息,建立代码版本信息与第一类代码之间的对应关系。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
指定文件获取模块,用于当所述应用参数信息还包括指定文件标识时,根据所述指定文件标识,获取所述指定文件,所述指定文件中包括代码修改后的路径;
加载模块,用于按照所述指定文件中的路径,重新加载所述修改后的代码;
相应的,所述编译模块用于根据所述预设编译指令,对重新加载的代码进行编译,得到数据包。
14.根据权利要求10所述的装置,其特征在于,所述装置还包括:
配置模块,用于当所述应用参数信息还包括环境变量信息时,根据所述环境变量信息,配置环境变量;
相应的,所述编译模块用于根据所述预设编译指令和所述环境变量,对所述获取到的代码进行编译,得到所述数据包。
15.一种数据包获取装置,其特征在于,所述装置包括:
界面显示模块,用于显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
信息获取模块,用于获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
发送模块,用于向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
16.根据权利要求15所述的装置,其特征在于,所述装置还包括:
编辑模块,用于当检测到对当前代码的编辑操作时,根据所述编辑操作,对当前代码进行编辑,得到编辑后的代码;
提交模块,用于当接收到代码提交指令时,向审核服务器发送所述编辑后的代码,所述审核服务器用于存储所述编辑后的代码。
17.一种数据包获取装置,其特征在于,所述装置包括:
信息接收模块,用于接收终端发送的应用参数信息,所述应用参数信息至少包括代码版本信息;
选择模块,用于从多个编译服务器中,选择一个处于空闲状态的编译服务器;
信息发送模块,用于向所述选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
存储模块,用于当接收到所述数据包时,存储所述数据包;
链接地址生成模块,用于根据所述数据包的存储位置,生成所述数据包的链接地址,以供所述数据包的下载。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:
任务添加模块,用于当所述多个编译服务器中的每个编译服务器均处于繁忙状态时,每当接收到应用参数信息时,将当前接收到的应用参数信息添加至任务队列;
信息选取模块,用于当任一编译服务器从繁忙状态切换至空闲状态时,按照所述任务队列中每个应用参数信息的添加时间,获取添加时间最早的应用参数信息;
所述信息发送模块,还用于向所述从繁忙状态切换至空闲状态的编译服务器发送所述添加时间最早的应用参数信息。
19.一种数据包获取装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收中间服务器发送的应用参数信息,所述应用参数信息由终端发送给所述中间服务器,所述中间服务器用于从多个编译服务器中,选择所述编译服务器,且所述应用参数信息至少包括代码版本信息;
获取所述代码版本信息对应的代码;
根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
20.一种数据包获取装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
显示应用参数输入界面,所述应用参数输入界面用于输入在获取数据包过程中所需的参数;
获取在所述应用参数输入界面输入的应用参数信息,所述应用参数信息至少包括代码版本信息;
向中间服务器发送所述应用参数信息,所述中间服务器用于从多个编译服务器中选择一个处于空闲状态的编译服务器,向选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包,向所述中间服务器发送所述数据包,所述中间服务器用于生成所述数据包的链接地址,以供所述数据包的下载。
21.一种数据包获取装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收终端发送的应用参数信息,所述应用参数信息至少包括代码版本信息;
从多个编译服务器中,选择一个处于空闲状态的编译服务器;
向所述选择的编译服务器发送所述应用参数信息,所述选择的编译服务器用于获取所述代码版本信息对应的代码;根据预设编译指令,对所述获取到的代码进行编译,得到数据包;
当接收到所述数据包时,存储所述数据包;
根据所述数据包的存储位置,生成所述数据包的链接地址,以供所述数据包的下载。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410756679.7A CN104539476A (zh) | 2014-12-10 | 2014-12-10 | 数据包获取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410756679.7A CN104539476A (zh) | 2014-12-10 | 2014-12-10 | 数据包获取方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104539476A true CN104539476A (zh) | 2015-04-22 |
Family
ID=52854945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410756679.7A Pending CN104539476A (zh) | 2014-12-10 | 2014-12-10 | 数据包获取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104539476A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105068855A (zh) * | 2015-08-19 | 2015-11-18 | 北京奇虎科技有限公司 | 一种编译安卓包开发文件的方法、服务器和*** |
CN105653449A (zh) * | 2015-12-28 | 2016-06-08 | 湖南蚁坊软件有限公司 | 一种基于容器虚拟化的持续集成方法 |
CN105843623A (zh) * | 2016-03-29 | 2016-08-10 | 乐视控股(北京)有限公司 | 目标程序的生成方法和装置 |
CN106528196A (zh) * | 2016-09-23 | 2017-03-22 | 邵阳学院 | 智能设备的app加载方法及应用该方法的智能设备、*** |
CN107402780A (zh) * | 2017-05-15 | 2017-11-28 | 梁亚柳 | 半自动更新版本软件工具 |
CN109684203A (zh) * | 2018-11-27 | 2019-04-26 | 平安科技(深圳)有限公司 | 程序运行参数配置方法、装置、计算机设备及存储介质 |
CN109885391A (zh) * | 2018-12-28 | 2019-06-14 | 北京城市网邻信息技术有限公司 | 一种资源打包方法、装置、电子设备及介质 |
CN110035322A (zh) * | 2018-01-11 | 2019-07-19 | 中兴通讯股份有限公司 | 一种启动***的方法、装置及计算机可读存储介质 |
CN110888639A (zh) * | 2018-09-10 | 2020-03-17 | 北京京东尚科信息技术有限公司 | 一种业务代码编译打包方法和装置 |
CN111694573A (zh) * | 2020-05-29 | 2020-09-22 | Oppo(重庆)智能科技有限公司 | 程序编译文件获取方法、装置、存储介质与电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074037A1 (en) * | 2005-09-06 | 2007-03-29 | Andreas Eckleder | Method for signing a data package and signing apparatus |
CN101290581A (zh) * | 2008-05-16 | 2008-10-22 | 北京星网锐捷网络技术有限公司 | 编译***及方法 |
CN103677814A (zh) * | 2013-11-29 | 2014-03-26 | 广州视源电子科技股份有限公司 | 一种程序获取方法、装置及*** |
US20140208309A1 (en) * | 2013-01-24 | 2014-07-24 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus, and communication system for implementing internet application |
-
2014
- 2014-12-10 CN CN201410756679.7A patent/CN104539476A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070074037A1 (en) * | 2005-09-06 | 2007-03-29 | Andreas Eckleder | Method for signing a data package and signing apparatus |
CN101290581A (zh) * | 2008-05-16 | 2008-10-22 | 北京星网锐捷网络技术有限公司 | 编译***及方法 |
US20140208309A1 (en) * | 2013-01-24 | 2014-07-24 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus, and communication system for implementing internet application |
CN103677814A (zh) * | 2013-11-29 | 2014-03-26 | 广州视源电子科技股份有限公司 | 一种程序获取方法、装置及*** |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105068855A (zh) * | 2015-08-19 | 2015-11-18 | 北京奇虎科技有限公司 | 一种编译安卓包开发文件的方法、服务器和*** |
CN105068855B (zh) * | 2015-08-19 | 2021-06-18 | 北京奇虎科技有限公司 | 一种编译安卓包开发文件的方法、服务器和*** |
CN105653449A (zh) * | 2015-12-28 | 2016-06-08 | 湖南蚁坊软件有限公司 | 一种基于容器虚拟化的持续集成方法 |
CN105843623A (zh) * | 2016-03-29 | 2016-08-10 | 乐视控股(北京)有限公司 | 目标程序的生成方法和装置 |
CN106528196A (zh) * | 2016-09-23 | 2017-03-22 | 邵阳学院 | 智能设备的app加载方法及应用该方法的智能设备、*** |
CN106528196B (zh) * | 2016-09-23 | 2019-11-26 | 邵阳学院 | 智能设备的app加载方法及应用该方法的智能设备、*** |
CN107402780A (zh) * | 2017-05-15 | 2017-11-28 | 梁亚柳 | 半自动更新版本软件工具 |
CN110035322A (zh) * | 2018-01-11 | 2019-07-19 | 中兴通讯股份有限公司 | 一种启动***的方法、装置及计算机可读存储介质 |
CN110888639A (zh) * | 2018-09-10 | 2020-03-17 | 北京京东尚科信息技术有限公司 | 一种业务代码编译打包方法和装置 |
CN109684203A (zh) * | 2018-11-27 | 2019-04-26 | 平安科技(深圳)有限公司 | 程序运行参数配置方法、装置、计算机设备及存储介质 |
CN109885391A (zh) * | 2018-12-28 | 2019-06-14 | 北京城市网邻信息技术有限公司 | 一种资源打包方法、装置、电子设备及介质 |
CN111694573A (zh) * | 2020-05-29 | 2020-09-22 | Oppo(重庆)智能科技有限公司 | 程序编译文件获取方法、装置、存储介质与电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104539476A (zh) | 数据包获取方法和装置 | |
KR101770931B1 (ko) | 통신 모듈 펌웨어와 플러그인 생성 방법, 장치, 프로그램 및 컴퓨터 판독가능한 기록매체 | |
CN105163366B (zh) | 无线网络连接方法和装置 | |
CN105117337B (zh) | 应用调试方法、客户端及调试平台 | |
CN105160854A (zh) | 设备控制方法、装置和终端设备 | |
CN103986969B (zh) | 应用管理方法、装置和*** | |
CN105204894A (zh) | 安装智能设备的插件的方法和装置 | |
CN104469741A (zh) | 终端配置方法和装置 | |
US20220052866A1 (en) | Smart home system control method and apparatus, electronic device | |
CN105450655A (zh) | 设备绑定方法和装置 | |
CN107423106A (zh) | 支持多框架语法的方法和装置 | |
CN104951336A (zh) | 应用程序安装方法及装置 | |
CN105652671A (zh) | 智能设备工作模式的设置方法和装置 | |
CN105094830B (zh) | 一种执行目标功能的方法和装置 | |
CN104616241A (zh) | 进行视频截图的方法和装置 | |
CN105808305A (zh) | 静态资源的加载方法和装置 | |
CN104281478A (zh) | 更新应用程序的方法及装置 | |
CN106126025A (zh) | 复制粘贴的交互方法及装置 | |
CN111031124B (zh) | 家居设备联网的部署方法及装置、电子设备和存储介质 | |
CN105183493A (zh) | 网络信息的显示方法和装置 | |
CN106413129A (zh) | 终端绑定智能设备的方法及装置 | |
CN107105339A (zh) | 一种播放直播视频的方法、装置和*** | |
CN106095405A (zh) | 图标更新方法及装置 | |
CN105554087A (zh) | 信息设置方法及装置 | |
CN109426578A (zh) | 处理客户端故障的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150422 |
|
RJ01 | Rejection of invention patent application after publication |