CN109840109A - 用于生成软件开发工具包的方法和装置 - Google Patents

用于生成软件开发工具包的方法和装置 Download PDF

Info

Publication number
CN109840109A
CN109840109A CN201910107648.1A CN201910107648A CN109840109A CN 109840109 A CN109840109 A CN 109840109A CN 201910107648 A CN201910107648 A CN 201910107648A CN 109840109 A CN109840109 A CN 109840109A
Authority
CN
China
Prior art keywords
software development
development kit
component
target
mentioned
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.)
Granted
Application number
CN201910107648.1A
Other languages
English (en)
Other versions
CN109840109B (zh
Inventor
袁欢
崔亚楠
王启威
熊勋泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN201910107648.1A priority Critical patent/CN109840109B/zh
Publication of CN109840109A publication Critical patent/CN109840109A/zh
Application granted granted Critical
Publication of CN109840109B publication Critical patent/CN109840109B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本公开的实施例公开了用于生成软件开发工具包的方法和装置。该方法的具体实施方式包括:建立模拟应用,其中,该模拟应用在运行过程中调用预设组件集合中的组件;将该模拟应用所调用的、该预设组件集合中的组件,确定为目标组件;将至少一个目标组件,打包为目标软件开发工具包。该实施方式提供了新的生成软件开发工具包的方式。

Description

用于生成软件开发工具包的方法和装置
技术领域
本公开的实施例涉及计算机技术领域,具体涉及用于生成软件开发工具包的方法和装置。
背景技术
随着计算机技术的发展,各种利用计算机技术实现的功能不断增多优化。软件开发工具包(Software Development Kit,SDK),一般都是一些被软件工程师用于为特定的软件包、软件架构、硬件平台、操作系统等建立应用软件的开发工具的集合。随着技术的不断发展,软件开发工具包可能具有某项功能,如推送功能、图像识别功能、移动支付功能、语音识别分析功能。开发者不需要再对产品的每个功能进行开发,选择合适稳定的软件开发工具包就可以在产品中集成某项功能。
发明内容
本公开的实施例提出了用于生成软件开发工具包的方法和装置。
第一方面,本公开的实施例提供了一种用于生成软件开发工具包的方法,该方法包括:建立模拟应用,其中,上述模拟应用在运行过程中调用预设组件集合中的组件;将上述模拟应用所调用的、上述预设组件集合中的组件,确定为目标组件;将至少一个目标组件,打包为目标软件开发工具包。
在一些实施例中,上述将至少一个目标组件,打包为目标软件开发工具包,包括:根据预先建立的组件标识与组件下载地址之间的对应关系,确定目标组件的组件下载地址;根据所确定的组件下载地址,下载目标组件;将下载到的目标组件,打包为上述目标软件开发工具包。
在一些实施例中,上述方法还包括:获取预设组件集合;对于上述预设组件集合中的组件,生成该组件的调用接口;对上述模拟应用提供所生成的调用接口。
在一些实施例中,上述方法还包括:将打包得到的目标软件开发工具包,与上述模拟应用所模拟的应用建立对应关系。
在一些实施例中,上述方法还包括:将打包得到的目标软件开发工具包,上传到云端服务器。
在一些实施例中,上述方法还包括:接收终端发送的下载请求,其中,上述下载请求用于请求下载软件开发工具包,上述下载请求包括应用标识;根据第一对应关系表,确定上述下载请求中的应用标识对应的软件开发工具包标识,其中,上述第一对应关系表用于表征应用标识和软件开发工具包标识之间的对应关系;根据对应得到的软件开发工具包标识,向上述终端提供软件开发工具包。
在一些实施例中,上述根据对应得到的软件开发工具包标识,向上述终端提供软件开发工具包,包括:根据第二对应关系表,确定对应得到的软件开发工具包标识对应的目标软件开发工具包下载地址,其中,上述第二对应关系表用于表征软件开发工具包标识与软件开发工具包下载地址之间的对应关系;根据所确定的软件开发工具包下载地址,向上述终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
在一些实施例中,上述根据对应得到的软件开发工具包标识,向上述终端提供软件开发工具包,包括:根据对应得到的软件开发工具包标识,从预设的软件开发工具包集合中,查找对应得到的软件开发工具包标识指示的软件开发工具包;将查找到的软件开发工具包,发送至上述终端。
第二方面,本公开的实施例提供了一种用于生成软件开发工具包的装置,该装置包括:建立单元,被配置成建立模拟应用,其中,上述模拟应用在运行过程中调用预设组件集合中的组件;第一确定单元,被配置成将上述模拟应用所调用的、上述预设组件集合中的组件,确定为目标组件;打包单元,被配置成将至少一个目标组件,打包为目标软件开发工具包。
在一些实施例中,上述打包单元,还被配置成:根据预先建立的组件标识与组件下载地址之间的对应关系,确定目标组件的组件下载地址;根据所确定的组件下载地址,下载目标组件;将下载到的目标组件,打包为上述目标软件开发工具包。
在一些实施例中,上述装置还包括:获取单元,被配置成获取预设组件集合;生成单元,被配置成对于上述预设组件集合中的组件,生成该组件的调用接口;第一提供单元,被配置成对上述模拟应用提供所生成的调用接口。
在一些实施例中,上述装置还包括:对应单元,被配置成将打包得到的目标软件开发工具包,与上述模拟应用所模拟的应用建立对应关系。
在一些实施例中,上述装置还包括:上传单元,被配置成将打包得到的目标软件开发工具包,上传到云端服务器。
在一些实施例中,上述装置还包括:接收单元,被配置成接收终端发送的下载请求,其中,上述下载请求用于请求下载软件开发工具包,上述下载请求包括应用标识;第二确定单元,被配置成根据第一对应关系表,确定上述下载请求中的应用标识对应的软件开发工具包标识,其中,上述第一对应关系表用于表征应用标识和软件开发工具包标识之间的对应关系;第二提供单元,被配置成根据对应得到的软件开发工具包标识,向上述终端提供软件开发工具包。
在一些实施例中,上述第二提供单元,还被配置成:根据第二对应关系表,确定对应得到的软件开发工具包标识对应的目标软件开发工具包下载地址,其中,上述第二对应关系表用于表征软件开发工具包标识与软件开发工具包下载地址之间的对应关系;根据所确定的软件开发工具包下载地址,向上述终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
在一些实施例中,上述第二提供单元,还被配置成:根据对应得到的软件开发工具包标识,从预设的软件开发工具包集合中,查找对应得到的软件开发工具包标识指示的软件开发工具包;将查找到的软件开发工具包,发送至上述终端。
第三方面,本公开的实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本公开的实施例提供的用于生成软件开发工具包的方法和装置,通过预设组件集合,然后建立模拟应用,再将模拟应用从预设组件集合中调用的组件,确定为目标组件,将所确定的至少一个目标组件,打包为目标软件开发工具包,技术效果至少可以包括:提供了一种新的生成软件开发工具包的方式。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开的一些实施例可以应用于其中的示例性系统架构图;
图2是根据本公开的用于生成软件开发工具包的方法的一个实施例的流程图;
图3是根据本公开的用于生成软件开发工具包的方法的一个应用场景的示意图;
图4是根据本公开的用于生成软件开发工具包的方法的再一个实施例的流程图;
图5是根据本公开的用于生成软件开发工具包的装置的一个实施例的结构示意图;
图6是适于用来实现本公开的实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的用于生成软件开发工具包的方法或用于生成软件开发工具包的装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104可以是用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如软件制作类应用、通话类应用、直播类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有通信功能的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上的软件制作类应用支持的后台服务器。终端设备101、102、103可以将生成软件开发工具包所用的一些参数(例如调用指令等)发送给服务器105。服务器105可以通过建立模拟应用以及控制模拟应用调用组件,然后打包组件生成目标软件开发工具包。
需要说明的是,本公开的实施例所提供的用于生成软件开发工具包的方法一般由服务器105执行,相应地,用于生成软件开发工具包的装置一般设置于服务器105中。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
请参考图2,其示出了用于生成软件开发工具包的方法的一个实施例的流程200。本实施例主要以该方法应用于有一定运算能力的电子设备中来举例说明,该电子设备可以是图1示出的服务器。该用于生成软件开发工具包的方法,包括以下步骤:
步骤201,建立模拟应用。
在本实施例中,用于生成软件开发工具包的方法的执行主体(例如图1所示的服务器)可以建立模拟应用。
在本实施例中,上述模拟应用可以用于模拟真实应用。上述模拟应用在运行过程中,可以调用预设组件集合中的组件。模拟应用可以理解为一个示例,模拟应用作为调用方,对预设组件集合中的组件进行调用。
在本实施例中,软件开发工具包(Software Development Kit,SDK),一般都是一些被软件工程师用于为特定的软件包、软件架构、硬件平台、操作系统等建立应用软件的开发工具的集合。
作为示例,软件开发工具包可能具有某项功能,如推送功能、图像识别功能、移动支付功能、语音识别分析功能。开发者不需要再对产品的每个功能进行开发,选择合适稳定的SDK就可以在产品中集成某项功能。
在本实施例中,上述执行主体可以预先设置上述预设组件集合。并且,预设组件集合可以包括一个或多个组件。
作为示例,上述执行主体可以通过执行工作人员编写的代码和/或给出的指令,建立模拟应用。
步骤202,将模拟应用所调用的、预设组件集合中的组件,确定为目标组件。
在本实施例中,上述执行主体可以将模拟应用所调用的、预设组件集合中的至少一个组件,确定为目标组件。
需要说明的是,可以将模拟应用理解为一个工厂。这个工厂的原材料可以是预设组件集合中的组件;这个工厂的产品,可以是目标软件开发工具包。
在这里,上述模拟应用可以在运行过程中,自动或者根据工作人员给出的指令,调用预设组件集合中的组件。
步骤203,将至少一个目标组件,打包为目标软件开发工具包。
在本实施例中,上述执行主体可以将至少一个目标组件,打包为目标软件开发工具包。预设组件集合中的组件,可以作为软件开发工具包的组成元素。上述至少一个目标组件进行耦合,可以生成软件开发工具包。
在这里,上述目标软件开发工具包与模拟应用所模拟的目标应用对应。
需要说明的是,现有技术中,通常对于不同的应用,作为一个独立工程,建立不同的软件开发工具包。但是,本申请的发明人想到,不同的应用需要的软件开发工具包之间,可能有些部分是交叉相同的。即当软件开发工具包的开发者面向的应用较多的时候,不同应用之间的功能可能是部分重合的。由此,发明人想到,将软件开发工具包的开发工作批量化,即通过预设组件集合,建立组件化的软件开发工具包,相对于独立开发软件开发工具包,可以避免重复开发,从而,可以在批量组建出多种软件开发工具包,可以缩短软件开发工具包的开发周期。
需要说明的是,通过上述方式,可以生成新的软件开发工具包。当应用需要该应用的软件开发工具包时,可以快速从已有的组件集合中,获取目标组件,打包为该应用对应的软件开发工具包。由此,可以从已有的软件开发工具包,快速生成目标软件开发工具包。
请继续参见图3,图3是根据图2所示实施例的用于生成软件开发工具包的方法的应用场景的示意图。具体地:
首先,服务器301可以建立模拟应用。
然后,服务器301可以运行模拟应用。模拟应用的运行过程中,可以调用预设组件集合中的组件。作为示例,上述预设的软件开发工具包可以设置在上述终端301,也可以设置在上述终端301之外的其它电子设备。
再后,服务器301可以将模拟应用所调用的、软件开发工具包中的组件,确定为目标组件。
最后,上述终端301可以将模拟应用所调用的至少一个目标组件,打包为目标软件开发工具包。作为示例,如果上述软件开发工具包设置在上述终端301上,上述终端301可以直接打包得到目标软件开发工具包;如果上述软件开发工具包设置在上述其它电子设备上,上述终端301可以将上述目标组件下载到本地后,打包目标组件得到目标软件开发工具包。
本公开的上述实施例提供的方法,通过预设组件集合,然后建立模拟应用,再将模拟应用从预设组件集合中调用的组件,确定为目标组件,将所确定的至少一个目标组件,打包为目标软件开发工具包,技术效果至少可以包括:提供了一种新的生成软件开发工具包的方式。
在一些实施例中,上述方法还可以包括:根据预先建立的组件标识与下载地址之间的对应关系,确定目标组件的下载地址;根据所确定的下载地址,下载目标组件;将下载到的目标组件,打包为上述目标软件开发工具包。
在这里,上述软件开发工具包中的组件,存储于不同于上述执行主体的其它电子设备。上述执行主体可以将目标组件,下载下来再打包。由此,上述执行主体可以不用存储上述软件开发工具包整体。当需要组件的时候,再将组件下载下来。从而,可以减少对上述执行主体的存储空间的占用。
在一些实施例中,上述方法还可以包括:获取预设组件集合,对于上述预设组件集合中的组件,生成该组件的调用接口;对上述模拟应用提供所生成的调用接口。在这里,上述预设组件集合可以由工作人员制作。上述执行主体可以获取预设组件集合。上述执行主体还可以将预设组件集合中的各个组件生成调用接口,将调用接口写入到模拟应用的配置文件中。由此,模拟应用可以进行对预设组件集合中的组件的调用。从而,上述执行主体的生成软件开发工具包的步骤,均可以在本地完成,实现快速生成软件开发工具包。
在一些实施例中,上述方法还可以包括:将打包得到的目标软件开发工具包,与上述模拟应用所模拟的应用建立对应关系。由此,可以实现:在上述目标软件开发工具包与上述模拟应用所模拟的目标应用之间,建立对应关系。由此,当应用需要软件开发工具包的时候,可以根据应用与软件开发工具包之间的对应关系,提供给应用相应的软件开发工具包。
在一些实施例中,上述方法还可以包括:将打包得到的目标软件开发工具包,上传到云端服务器。在这里,将打包得到的目标软件开发工具包,上传到云端服务器,可以供其它电子设备从云端服务器下载目标软件开发工具包。从而,可以实现为广泛的电子设备提供目标软件开发工具包,并且,减轻上述执行主体提供目标软件开发工具包而产生的负载。
进一步参考图4,其示出了用于生成软件开发工具包的方法的又一个实施例的流程400。该用于生成软件开发工具包的方法的流程400,包括以下步骤:
步骤401、步骤402和步骤403的实现方式,与步骤201、步骤202和步骤203的相同,在此不再赘述。
步骤404,接收终端发送的下载请求。
在本实施例中,用于生成软件开发工具包的方法的执行主体(例如图1所示的服务器)可以接收终端发送的下载请求。
在这里,上述下载请求可以用于请求下载软件开发工具包。
在这里,上述下载请求可以包括应用标识。在这里,可以将应用组件化,组件化的应用可以包括实现各种功能的组件。应用需要借助的软件开发工具包,可以以组件的形式成为应用的一部分。
步骤405,根据第一对应关系表,确定下载请求中的应用标识对应的软件开发工具包标识。
在本实施例中,上述执行主体可以根据预先建立的第一对应关系表,确定上述下载请求中的应用标识对应的软件开发工具包标识。
在这里,上述第一对应关系表用于表征应用标识和软件开发工具包标识之间的对应关系。
在这里,上述执行主体可以预先建立并存储第一对应关系表。在这里,可以通过步骤401到步骤403的多次执行,生成多个软件开发工具包;然后,将所生成的各个软件开发工具包,与模拟应用建立对应关系,从而,可以生成第一对应关系表。
步骤406,根据对应得到的软件开发工具包标识,向终端提供软件开发工具包。
在本实施例中,上述执行主体可以根据对应得到的软件开发工具包标识,向终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
在一些实现方式中,步骤406可以通过以下方式实现:根据第二对应关系表,确定对应得到的软件开发工具包标识对应的目标软件开发工具包下载地址,其中,上述第二对应关系表用于表征软件开发工具包标识与软件开发工具包下载地址之间的对应关系;根据所确定的软件开发工具包下载地址,向上述终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
在一些实现方式中,上述根据所确定的软件开发工具包下载地址,向上述终端提供对应得到的软件开发工具包标识指示的软件开发工具包,可以通过以下方式实现:将所确定的软件开发工具包下载地址,发送至上述终端。然后,上述终端可以根据接收到的软件开发工具包下载地址,下载软件开发工具包。可以理解,这是一种间接提供方式。
在一些实现方式中,上述根据所确定的软件开发工具包下载地址,向上述终端提供对应得到的软件开发工具包标识指示的软件开发工具包,可以通过以下方式实现:根据所确定的软件开发工具包下载地址,下载软件开发工具包;然后,将所下载的软件开发工具包,发送至上述终端。
在一些实现方式中,步骤406可以通过以下方式实现:上述执行主体可以根据对应得到的软件开发工具包标识,从预设的软件开发工具包集合中,查找对应得到的软件开发工具包标识指示的软件开发工具包;将查找到的软件开发工具包,发送至上述终端。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于生成软件开发工具包的方法的流程400突出了向终端提供生成的软件开发工具包的步骤。由此,本实施例描述的方案,技术效果至少可以包括:
第一,提供了一种新的向终端提供软件开发工具包的方式。
第二,现有技术中,由于为各个应用独立开发软件开发工具包,并不存在将多个软件开发工具包放到一起的情况。本申请中,由于软件开发工具包可以是从预设组件集合中得到的,所生成的多个软件开发工具放在一起,方便向已有和后续的应用提供。因此,本方案可以同时向不同的应用提供各个应用需要的软件开发工具包。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种用于生成软件开发工具包的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于生成软件开发工具包的装置500包括:建立单元501、第一确定单元502和打包单元503。其中,建立单元501,被配置成建立模拟应用,其中,上述模拟应用在运行过程中调用预设组件集合中的组件;第一确定单元502,被配置成将上述模拟应用所调用的、上述预设组件集合中的组件,确定为目标组件;打包单元503,被配置成将至少一个目标组件,打包为目标软件开发工具包。
在本实施例中,用于生成软件开发工具包的装置500的建立单元501、第一确定单元502和打包单元503的具体处理及其所带来的技术效果可分别参考图2对应实施例中步骤201、步骤202和步骤203的相关说明,在此不再赘述。
在一些实施例中,上述打包单元,还被配置成:根据预先建立的组件标识与组件下载地址之间的对应关系,确定目标组件的组件下载地址;根据所确定的组件下载地址,下载目标组件;将下载到的目标组件,打包为上述目标软件开发工具包。
在一些实施例中,上述装置还包括:获取单元(未示出),被配置成获取预设组件集合;生成单元(未示出),被配置成对于上述预设组件集合中的组件,生成该组件的调用接口;第一提供单元(未示出),被配置成对上述模拟应用提供所生成的调用接口。
在一些实施例中,上述装置还包括:对应单元(未示出),被配置成将打包得到的目标软件开发工具包,与上述模拟应用所模拟的应用建立对应关系。
在一些实施例中,上述装置还包括:上传单元(未示出),被配置成将打包得到的目标软件开发工具包,上传到云端服务器。
在一些实施例中,上述装置还包括:接收单元(未示出),被配置成接收终端发送的下载请求,其中,上述下载请求用于请求下载软件开发工具包,上述下载请求包括应用标识;第二确定单元(未示出),被配置成根据第一对应关系表,确定上述下载请求中的应用标识对应的软件开发工具包标识,其中,上述第一对应关系表用于表征应用标识和软件开发工具包标识之间的对应关系;第二提供单元(未示出),被配置成根据对应得到的软件开发工具包标识,向上述终端提供软件开发工具包。
在一些实施例中,上述第二提供单元,还被配置成:根据第二对应关系表,确定对应得到的软件开发工具包标识对应的目标软件开发工具包下载地址,其中,上述第二对应关系表用于表征软件开发工具包标识与软件开发工具包下载地址之间的对应关系;根据所确定的软件开发工具包下载地址,向上述终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
在一些实施例中,上述第二提供单元,还被配置成:根据对应得到的软件开发工具包标识,从预设的软件开发工具包集合中,查找对应得到的软件开发工具包标识指示的软件开发工具包;将查找到的软件开发工具包,发送至上述终端。
需要说明的是,本公开的实施例提供的用于生成软件开发工具包的装置中各单元的实现细节和技术效果可以参考本公开中其它实施例的说明,在此不再赘述。
下面参考图6,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的终端或服务器)600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:建立模拟应用,其中,上述模拟应用在运行过程中调用预设组件集合中的组件;将上述模拟应用所调用的、上述预设组件集合中的组件,确定为目标组件;将至少一个目标组件,打包为目标软件开发工具包。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,建立单元还可以被描述为“建立模拟应用的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (18)

1.一种用于生成软件开发工具包的方法,包括:
建立模拟应用,其中,所述模拟应用在运行过程中调用预设组件集合中的组件;
将所述模拟应用所调用的、所述预设组件集合中的组件,确定为目标组件;
将至少一个目标组件,打包为目标软件开发工具包。
2.根据权利要求1所述的方法,其中,所述将至少一个目标组件,打包为目标软件开发工具包,包括:
根据预先建立的组件标识与组件下载地址之间的对应关系,确定目标组件的组件下载地址;
根据所确定的组件下载地址,下载目标组件;
将下载到的目标组件,打包为所述目标软件开发工具包。
3.根据权利要求1所述的方法,其中,所述方法还包括:
获取预设组件集合;
对于所述预设组件集合中的组件,生成该组件的调用接口;
对所述模拟应用提供所生成的调用接口。
4.根据权利要求1所述的方法,其中,所述方法还包括:
将打包得到的目标软件开发工具包,与所述模拟应用所模拟的应用建立对应关系。
5.根据权利要求1所述的方法,其中,所述方法还包括:
将打包得到的目标软件开发工具包,上传到云端服务器。
6.根据权利要求1-5中任一项所述的方法,其中,所述方法还包括:
接收终端发送的下载请求,其中,所述下载请求用于请求下载软件开发工具包,所述下载请求包括应用标识;
根据第一对应关系表,确定所述下载请求中的应用标识对应的软件开发工具包标识,其中,所述第一对应关系表用于表征应用标识和软件开发工具包标识之间的对应关系;
根据对应得到的软件开发工具包标识,向所述终端提供软件开发工具包。
7.根据权利要求6所述的方法,其中,所述根据对应得到的软件开发工具包标识,向所述终端提供软件开发工具包,包括:
根据第二对应关系表,确定对应得到的软件开发工具包标识对应的目标软件开发工具包下载地址,其中,所述第二对应关系表用于表征软件开发工具包标识与软件开发工具包下载地址之间的对应关系;
根据所确定的软件开发工具包下载地址,向所述终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
8.根据权利要求6所述的方法,其中,所述根据对应得到的软件开发工具包标识,向所述终端提供软件开发工具包,包括:
根据对应得到的软件开发工具包标识,从预设的软件开发工具包集合中,查找对应得到的软件开发工具包标识指示的软件开发工具包;
将查找到的软件开发工具包,发送至所述终端。
9.一种用于生成软件开发工具包的装置,包括:
建立单元,被配置成建立模拟应用,其中,所述模拟应用在运行过程中调用预设组件集合中的组件;
第一确定单元,被配置成将所述模拟应用所调用的、所述预设组件集合中的组件,确定为目标组件;
打包单元,被配置成将至少一个目标组件,打包为目标软件开发工具包。
10.根据权利要求9所述的装置,其中,所述打包单元,还被配置成:
根据预先建立的组件标识与组件下载地址之间的对应关系,确定目标组件的组件下载地址;
根据所确定的组件下载地址,下载目标组件;
将下载到的目标组件,打包为所述目标软件开发工具包。
11.根据权利要求9所述的装置,其中,所述装置还包括:
获取单元,被配置成获取预设组件集合;
生成单元,被配置成对于所述预设组件集合中的组件,生成该组件的调用接口;
第一提供单元,被配置成对所述模拟应用提供所生成的调用接口。
12.根据权利要求9所述的装置,其中,所述装置还包括:
对应单元,被配置成将打包得到的目标软件开发工具包,与所述模拟应用所模拟的应用建立对应关系。
13.根据权利要求9所述的装置,其中,所述装置还包括:
上传单元,被配置成将打包得到的目标软件开发工具包,上传到云端服务器。
14.根据权利要求9-13中任一项所述的装置,其中,所述装置还包括:
接收单元,被配置成接收终端发送的下载请求,其中,所述下载请求用于请求下载软件开发工具包,所述下载请求包括应用标识;
第二确定单元,被配置成根据第一对应关系表,确定所述下载请求中的应用标识对应的软件开发工具包标识,其中,所述第一对应关系表用于表征应用标识和软件开发工具包标识之间的对应关系;
第二提供单元,被配置成根据对应得到的软件开发工具包标识,向所述终端提供软件开发工具包。
15.根据权利要求6所述的装置,其中,所述第二提供单元,还被配置成:
根据第二对应关系表,确定对应得到的软件开发工具包标识对应的目标软件开发工具包下载地址,其中,所述第二对应关系表用于表征软件开发工具包标识与软件开发工具包下载地址之间的对应关系;
根据所确定的软件开发工具包下载地址,向所述终端提供对应得到的软件开发工具包标识指示的软件开发工具包。
16.根据权利要求6所述的装置,其中,所述第二提供单元,还被配置成:
根据对应得到的软件开发工具包标识,从预设的软件开发工具包集合中,查找对应得到的软件开发工具包标识指示的软件开发工具包;
将查找到的软件开发工具包,发送至所述终端。
17.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
18.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
CN201910107648.1A 2019-02-02 2019-02-02 用于生成软件开发工具包的方法和装置 Active CN109840109B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910107648.1A CN109840109B (zh) 2019-02-02 2019-02-02 用于生成软件开发工具包的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910107648.1A CN109840109B (zh) 2019-02-02 2019-02-02 用于生成软件开发工具包的方法和装置

Publications (2)

Publication Number Publication Date
CN109840109A true CN109840109A (zh) 2019-06-04
CN109840109B CN109840109B (zh) 2022-04-19

Family

ID=66884551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910107648.1A Active CN109840109B (zh) 2019-02-02 2019-02-02 用于生成软件开发工具包的方法和装置

Country Status (1)

Country Link
CN (1) CN109840109B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855750A (zh) * 2019-10-21 2020-02-28 深圳市元征科技股份有限公司 一种软件开发工具包的下载方法及相关设备
CN111240657A (zh) * 2020-01-17 2020-06-05 北京字节跳动网络技术有限公司 用于生成sdk的方法、装置和电子设备
CN113687820A (zh) * 2021-08-06 2021-11-23 珠海格力电器股份有限公司 Sdk构建方法、装置和处理器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105049532A (zh) * 2015-08-28 2015-11-11 北京奇艺世纪科技有限公司 一种sdk包的打包方法及装置和下载方法及装置
WO2016058488A1 (zh) * 2014-10-17 2016-04-21 阿里巴巴集团控股有限公司 一种用于提供sdk文件的方法与设备
CN107066291A (zh) * 2017-02-09 2017-08-18 阿里巴巴集团控股有限公司 软件开发工具包的打包方法、装置及设备、可读介质
CN107704260A (zh) * 2017-10-31 2018-02-16 广东小天才科技有限公司 一种更新应用软件的软件开发工具包的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016058488A1 (zh) * 2014-10-17 2016-04-21 阿里巴巴集团控股有限公司 一种用于提供sdk文件的方法与设备
CN105049532A (zh) * 2015-08-28 2015-11-11 北京奇艺世纪科技有限公司 一种sdk包的打包方法及装置和下载方法及装置
CN107066291A (zh) * 2017-02-09 2017-08-18 阿里巴巴集团控股有限公司 软件开发工具包的打包方法、装置及设备、可读介质
CN107704260A (zh) * 2017-10-31 2018-02-16 广东小天才科技有限公司 一种更新应用软件的软件开发工具包的方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WEIXIN_33995481: ""组件化之路—集成组件SDK"", 《CSDN》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855750A (zh) * 2019-10-21 2020-02-28 深圳市元征科技股份有限公司 一种软件开发工具包的下载方法及相关设备
CN111240657A (zh) * 2020-01-17 2020-06-05 北京字节跳动网络技术有限公司 用于生成sdk的方法、装置和电子设备
CN113687820A (zh) * 2021-08-06 2021-11-23 珠海格力电器股份有限公司 Sdk构建方法、装置和处理器

Also Published As

Publication number Publication date
CN109840109B (zh) 2022-04-19

Similar Documents

Publication Publication Date Title
CN109981787B (zh) 用于展示信息的方法和装置
JP2021010156A (ja) 情報を生成する方法および装置
CN109840109A (zh) 用于生成软件开发工具包的方法和装置
CN108540831A (zh) 用于推送信息的方法和装置
CN109918146A (zh) 页面生成方法和装置
CN109829164A (zh) 用于生成文本的方法和装置
CN109815105A (zh) 基于Btrace的应用程序测试方法和装置
CN109803008A (zh) 用于显示信息的方法和装置
CN109819042A (zh) 用于提供软件开发工具包的方法和装置
CN110209315A (zh) 用户界面中字符的显示方法、装置、电子设备及存储介质
CN110084317A (zh) 用于识别图像的方法和装置
CN110059623A (zh) 用于生成信息的方法和装置
CN110007936A (zh) 数据处理方法和装置
CN110232920A (zh) 语音处理方法和装置
CN109828830A (zh) 用于管理容器的方法和装置
CN108494975A (zh) 来电响应方法和设备
CN109949806A (zh) 信息交互方法和装置
CN109840072A (zh) 信息处理方法和装置
JP2021009670A (ja) 情報を生成するための方法および装置
CN108733527A (zh) 用于测试服务器功能的系统、方法和装置
CN110223694A (zh) 语音处理方法、系统和装置
CN109947659A (zh) 用于测试应用的系统、方法和装置
CN111612135B (zh) 用于信息交互的方法和装置
CN108959102A (zh) 用于生成测试数据、测试待测试应用的方法和装置
CN115022328B (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