CN109947426A - 应用程序的生成方法、装置及电子设备 - Google Patents

应用程序的生成方法、装置及电子设备 Download PDF

Info

Publication number
CN109947426A
CN109947426A CN201910183367.4A CN201910183367A CN109947426A CN 109947426 A CN109947426 A CN 109947426A CN 201910183367 A CN201910183367 A CN 201910183367A CN 109947426 A CN109947426 A CN 109947426A
Authority
CN
China
Prior art keywords
interface
code
description information
application program
type
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
CN201910183367.4A
Other languages
English (en)
Other versions
CN109947426B (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.)
Tianjin ByteDance Technology Co Ltd
Original Assignee
Tianjin ByteDance 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 Tianjin ByteDance Technology Co Ltd filed Critical Tianjin ByteDance Technology Co Ltd
Priority to CN201910183367.4A priority Critical patent/CN109947426B/zh
Publication of CN109947426A publication Critical patent/CN109947426A/zh
Application granted granted Critical
Publication of CN109947426B publication Critical patent/CN109947426B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本公开提出一种应用程序的生成方法、装置及电子设备,该方法包括接收对应用程序界面的描述信息;确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型;根据与第一类型对应的描述信息,生成对应的界面样例图片;根据与第二类型对应的描述信息,结合界面样例图片对应的初始程序代码,生成目标界面代码;根据目标界面代码生成目标应用程序。通过本公开能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。

Description

应用程序的生成方法、装置及电子设备
技术领域
本公开涉及计算机技术领域,尤其涉及一种应用程序的生成方法、装置及电子设备。
背景技术
随着对应用程序的市场应用需要的逐渐多样化,为了制作应用程序,开发人员需要花费大量时间来编写应用程序的界面代码。
这种方式下,耗费较多的人力成本,应用程序的开发效率较低。
发明内容
本公开旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本公开的目的在于提出一种应用程序的生成方法、装置及电子设备,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
为达到上述目的,本公开第一方面实施例提出的应用程序的生成方法,包括:接收对应用程序界面的描述信息;确定所述描述信息的类型,其中,所述类型包括:用于描述所述界面的控件信息的第一类型,和用于描述所述界面的样式信息的第二类型;根据与所述第一类型对应的描述信息,生成对应的界面样例图片;根据与所述第二类型对应的描述信息,结合所述界面样例图片对应的初始程序代码,生成目标界面代码;根据所述目标界面代码生成目标应用程序。
本公开第一方面实施例提出的应用程序的生成方法,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
为达到上述目的,本公开第二方面实施例提出的应用程序的生成装置,包括:接收模块,用于接收对应用程序界面的描述信息;第一生成模块,用于确定所述描述信息的类型,其中,所述类型包括:用于描述所述界面的控件信息的第一类型,和用于描述所述界面的样式信息的第二类型;根据与所述第一类型对应的描述信息,生成对应的界面样例图片;根据与所述第二类型对应的描述信息,结合所述界面样例图片对应的初始程序代码,生成目标界面代码;第二生成模块,用于根据所述目标界面代码生成目标应用程序。
本公开第二方面实施例提出的应用程序的生成装置,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
为达到上述目的,本公开第三方面实施例提出的计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器被执行时,使得移动终端能够执行一种应用程序的生成方法,所述方法包括:本公开第一方面实施例提出的应用程序的生成方法。
本公开第三方面实施例提出的计算机可读存储介质,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
为达到上述目的,本公开第四方面实施例提出的计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,执行一种应用程序的生成方法,所述方法包括:接收对应用程序界面的描述信息;确定所述描述信息的类型,其中,所述类型包括:用于描述所述界面的控件信息的第一类型,和用于描述所述界面的样式信息的第二类型;根据与所述第一类型对应的描述信息,生成对应的界面样例图片;根据与所述第二类型对应的描述信息,结合所述界面样例图片对应的初始程序代码,生成目标界面代码;根据所述目标界面代码生成目标应用程序。
本公开第四方面实施例提出的计算机程序产品,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
本公开第五方面实施例还提出一种电子设备,该电子设备包括至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行本公开第一方面实施例提出的应用程序的生成方法。
本公开第五方面实施例提出的电子设备,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本公开一实施例提出的应用程序的生成方法的流程示意图;
图2为本公开实施例中的界面样例图片示意图;
图3为本公开实施例中GAN网络训练过程示意图;
图4为本公开实施例中VAEs网络训练过程示意图;
图5是本公开一实施例提出的应用程序的生成装置的结构示意图;
图6是本公开一个实施例提出的电子设备的结构示意图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能理解为对本公开的限制。相反,本公开的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本公开一实施例提出的应用程序的生成方法的流程示意图。
本实施例以应用程序的生成方法被配置为应用程序的生成装置中来举例说明。
本实施例中应用程序的生成方法可以被配置在应用程序的生成装置中,应用程序的生成装置可以设置在服务器中,或者也可以设置在电子设备中,本公开实施例对此不作限制。
本实施例以应用程序的生成方法被配置在电子设备中为例。
其中,应用程序可以是指运行在电子设备上的软件程序,电子设备例如为个人电脑(Personal Computer,PC),云端设备或者移动设备,移动设备例如智能手机,或者平板电脑等。
需要说明的是,本公开实施例的执行主体,在硬件上可以例如为服务器或者电子设备中的中央处理器(Central Processing Unit,CPU),在软件上可以例如为服务器或者电子设备中的相关的后台服务,对此不作限制。
随着对应用程序的市场应用需要的逐渐多样化,为了制作应用程序,开发人员需要花费大量时间来编写应用程序的界面代码。
这种方式下,耗费较多的人力成本,应用程序的开发效率较低。
为了解决上述技术问题,本公开实施例中提供一种应用程序的生成方法,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
参见图1,该方法包括:
S101:接收对应用程序界面的描述信息。
其中,该描述信息用于生成对应的应用程序界面。
描述信息例如为,红色背景,白色粗体文字,商务风格,标题为:和谐商务,描述:一种商品展示软件;浅绿背景,白色细体文字,文艺风格,标题为:一种植物,描述:一个不多见的物体,对此不作限制。
描述信息输入的方式可以例如为,用户直接输入文字,且用户直接输入的文字是依据标准的格式,例如,针对上述描述信息的举例,可以依据以下字段顺序输入描述信息:<描述背景样式>,<描述文字样式>,<风格>,<标题>,<描述>,或者也可以是用户通过选择选项输入,例如,针对<描述背景样式>字段,可以通过选择背景颜色的描述信息,例如,【黑色】,【红色】,【绿色】等,而标题和描述可以由用户输入文字,对此不作限制。
S102:确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型。
其中,用于描述界面的控件信息的类型可以被称为第一类型,第一类型例如为描述控件的布局尺寸的描述信息,或者,描述控件的名称的描述信息,控件的名称可以例如为按钮控件、图片控件,以及导航栏控件等,对此不作限制。
其中,用于描述界面的样式信息的类型可以被称为第二类型,第二类型例如为描述界面背景样式的描述信息,或者,描述界面的风格的描述信息,对此不作限制。
S103:根据与第一类型对应的描述信息,生成对应的界面样例图片。
本公开实施例在具体执行的过程中,为了从技术上实现根据描述信息生成应用,可以根据第一类型对应的描述信息,生成文本词向量;根据文本词向量生成对应的界面样例图片。
例如,将第一类型对应的描述信息输入至文字解码模块,经由文字解码模块对该描述信息进行解码处理,以生成对应的文本词向量,而后根据文本词向量生成对应的界面样例图片。
本公开实施例中,在生成对应的文本词向量之后,可以将该文本词向量输入至GAN网络(生成式对抗网络,Generative Adversarial Networks),经由该GAN网络的运算处理,根据文本词向量生成对应的界面样例图片。
参见图2,图2为本公开实施例中的界面样例图片示意图,其中包括多个控件21。
本公开实施例中的GAN网络,主要实现根据描述信息生成对应的界面样例图片,GAN网络主要由两个网络组成,一个是生成网络,另外一个是鉴别网络,生成网络主要由全连接层组成。
下面给出训练一个初始的GAN网络以生成本公开实施例中所应用的GAN网络的举例:
1、预先配置描述信息库和关联的Flutter界面库,其中,每条描述信息对应一个界面样例图片。
2、文字编码模块,将描述信息库中的各描述信息解析为Token,即,单词,例如,风格的单词有,<活泼>、<文艺>等,而后将token输入Word2vec网络,得到描述信息对应的向量M。
3、生成网络的结构,使用之前的向量M,和一个噪声矩阵N,其中N是一个由用户定义大小,且其内包含任意数的矩阵。
4、将M、N合并,作为生成网络的输入,生成网络输出一张模拟图片FP。
5、鉴别网络的训练,将模拟图片FP、M合并作为负样本,将描述信息对应的界面样例图片和M合并作为正样本输入到鉴别网络中,并以对数损失函数来衡量预测值与输出值的差距,并据此差距对鉴别网络模型进行参数调整,参数调整通过反向传播算法调整,该鉴别网络的输出即只有真和假,以得到准确的网络D(FP,M)->{0,1}。
6、生成网络的训练,以生成网络和鉴别网络为整体,将M、N合并,作为整个网络的输入,而后鉴别网络的输出为总输出,并以对数损失函数来衡量预测值与输出值的差距,并据此差距对生成网络进行参数调整,参数调整通过反向传播算法调整,以鉴别网络输出为真为正样本训练生成网络,以得到一个准确的网络G(N,M)->FP,当生成网络的训练的准确率满足需求时,停止该训练过程。
参见图3,图3为本公开实施例中GAN网络训练过程示意图。
S104:根据与第二类型对应的描述信息,结合界面样例图片对应的初始程序代码,生成目标界面代码。
本公开实施例在具体执行的过程中,可以将GAN网络生成的界面样例图片,输入VAEs(变分自编码器,Variational auto-encoder)网络,输出应用程序的目标界面代码,即,Flutter界面代码。
其中,Flutter是谷歌的移动用户界面框架,可以快速在iOS和Android操作系统上构建高质量的原生用户界面,Flutter界面代码即基于Flutter界面框架的,且与界面样例图片对应的程序代码。
本公开实施例在具体执行的过程中,可以将界面样例图片输入预设网络,得到预设网络输出的与界面样例图片对应的初始程序代码;根据与第二类型对应的描述信息,对初始程序代码中的目标代码进行调整,并将调整后的程序代码作为目标界面代码。
其中的预设网络为VAEs网络。
下面给出训练一个初始的VAEs网络以生成本公开实施例中所应用的VAEs网络的举例:
1、预先配置应用程序的界面样例图片库和关联的Flutter界面代码库,其中,每个应用程序的界面样例图片对应一个Flutter界面代码,应用程序界面样例图片库与训练GAN网络时的界面样例图片库为相同库。
2、将Flutter界面代码,解析为预设的多个token,即,单词,该多个token可以形成为一个单词组,例如,文本标签可以解析为单词组,<Text>、x、y、width、height、content,</Text>,其中,<text>代表为文本,x,y为该标签在应用程序界面中坐标系的位置,width,height为该标签的宽和高,</Text>代表该标签结束,则对应的Flutter界面代码可以解析为如下单词组,<PAD>,<START>,<Text>,20,30,20,30,test,</Text>,<END>,其中,<PAD>表示空白,起到占位符的作用,<START>表示Flutter界面代码开始,<END>表示Flutter界面代码结束,各token均有对应的index,即,序列号,比如<Text>对应的index可以为1。
3、将应用程序界面样例图片的图片矩阵输入CNN网络(卷积神经网络,(Convolutional Neural Networks),输出i,为图片的特征。
4、将应用程序界面样例图片对应的Flutter界面代码的tokens分别输入RNN网络(循环神经网络,Recurrent Neural Network),输出t,为各token对应的特征。
5、将i和t合并为rel(i,t),即将i和t连接起来放到一个同一个图像数据中。
6、将rel(i,t)输入另外一个RNN网络,输出预测的一个token。
7、VAEs网络的模型的功能总结为:一个输入图像数据和一个token的序列号从而输出下一个token的序列号的h(i,t),i为输入图像,
8、可以采用预先配置的应用程序界面样例图片库和关联的Flutter界面代码库来对VAEs网络的模型进行训练,训练时将应用程序界面样例图片转化为矩阵输入为i,将对应的Flutter界面代码的一个token输入为t,而后,将Flutter界面代码的下一个token作为验证结果,而后,使用交叉熵代价函数来衡量预测值与输出值的差距,并据此差距对VAEs网络的模型进行参数调整,参数调整时可以采用反向传播算法调整,之后,可以得到一个准确的VAEs网络的模型。
本公开实施例在具体执行的过程中,可以输入图像矩阵为i,第一次输入t为<START>,而后,采用VAEs网络的模型的输出值作为第二次输入的t,直至某次VAEs网络的模型的输出值为<END>,收集该VAEs网络的模型从第一次输入到结束输出的所有结果,即,需要的描述Flutter界面代码的token的序列号的序列,而后,根据该序列号的序列推导出token序列,进而,将token序列中的各token转为Flutter界面代码即可,对于使用该VAEs网络的模型的用户来讲,只用输入界面样例图片,而另外输入的token是VAEs网络的模型自动输入。
参见图4,图4为本公开实施例中VAEs网络训练过程示意图。
进一步地,本公开实施例在执行根据与第二类型对应的描述信息,对初始程序代码中的目标代码进行调整,并将调整后的程序代码作为目标界面代码时,具体举例如下:
本公开实施例在具体执行的过程中,考虑到有些特定的描述使用神经网络可能不够精准,为了有效保障所生成的目标界面代码的精准度,还可以根据用户的描述信息中的背景样式,字体样式,采用直接替换法,将Flutter界面代码中记录字体样式的字段,替换成用户描述信息中的字段,将背景颜色字段,替换成用户描述信息中的字段,将标题对应的Flutter界面代码的内容,替换成用户描述信息中的标题内容等,而后将调整后的程序代码作为目标界面代码。
S105:根据目标界面代码生成目标应用程序。
本公开实施例在具体执行的过程中,将目标界面代码写入预设页面模板代码中,编译写入后的页面模板代码以生成目标应用程序,使得开发人员可以通过描述,进而快速得到一个拥有较完整界面的应用程序,完成产品验证,使得开发人员可以通过描述,快速得到代码初始模板,并可以基于该代码初始模板进行功能开发,有效提高了开发效率。
作为一种示例,预设页面模板代码示例如下:
本实施例中,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
图5是本公开一实施例提出的应用程序的生成装置的结构示意图。
参见图5,该装置500包括:
接收模块501,用于接收对应用程序界面的描述信息;
第一生成模块502,用于确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型;根据与第一类型对应的描述信息,生成对应的界面样例图片;根据与第二类型对应的描述信息,结合界面样例图片对应的初始程序代码,生成目标界面代码;
第二生成模块503,用于根据目标界面代码生成目标应用程序。
可选地,一些实施例中,第一生成模块502,具体用于:
根据第一类型对应的描述信息,生成文本词向量;
根据文本词向量生成对应的界面样例图片。
可选地,一些实施例中,第一生成模块502,具体用于:
将界面样例图片输入预设网络,得到预设网络输出的与界面样例图片对应的初始程序代码;
根据与第二类型对应的描述信息,对初始程序代码中的目标代码进行调整,并将调整后的程序代码作为目标界面代码。
可选地,一些实施例中,第二生成模块503,具体用于:
将目标界面代码写入预设页面模板代码中;
编译写入后的页面模板代码以生成目标应用程序。
需要说明的是,前述图1-图4实施例中对应用程序的生成方法实施例的解释说明也适用于该实施例的应用程序的生成装置500,其实现原理类似,此处不再赘述。
本实施例中,通过接收对应用程序界面的描述信息,并确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型,根据描述信息生成对应的目标界面代码,以及根据目标界面代码生成目标应用程序,能够有效缩短应用程序的生成周期,有效释放部分人力成本,有效提升应用程序的开发效率。
下面参考图6,图6是本公开一个实施例提出的电子设备的结构示意图。其示出了适于用来实现本公开实施例的电子设备600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。
图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示应用程序的生成方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例应用程序的生成方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收对应用程序界面的描述信息;确定描述信息的类型,其中,类型包括:用于描述界面的控件信息的第一类型,和用于描述界面的样式信息的第二类型;根据与第一类型对应的描述信息,生成对应的界面样例图片;根据与第二类型对应的描述信息,结合界面样例图片对应的初始程序代码,生成目标界面代码;根据目标界面代码生成目标应用程序。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,接收模块还可以被描述为“用于接收对应用程序界面的描述信息的模块”。
需要说明的是,在本公开的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本公开的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本公开的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本公开的实施例所属技术领域的技术人员所理解。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本公开各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (10)

1.一种应用程序的生成方法,其特征在于,包括以下步骤:
接收对应用程序界面的描述信息;
确定所述描述信息的类型,其中,所述类型包括:用于描述所述界面的控件信息的第一类型,和用于描述所述界面的样式信息的第二类型;
根据与所述第一类型对应的描述信息,生成对应的界面样例图片;
根据与所述第二类型对应的描述信息,结合所述界面样例图片对应的初始程序代码,生成目标界面代码;
根据所述目标界面代码生成目标应用程序。
2.如权利要求1所述的应用程序的生成方法,其特征在于,所述根据与所述第一类型对应的描述信息,生成对应的界面样例图片,包括:
根据所述第一类型对应的描述信息,生成文本词向量;
根据所述文本词向量生成对应的界面样例图片。
3.如权利要求2所述的应用程序的生成方法,其特征在于,所述根据与所述第二类型对应的描述信息,结合所述界面样例图片对应的初始程序代码,生成目标界面代码,包括:
将所述界面样例图片输入预设网络,得到所述预设网络输出的与所述界面样例图片对应的初始程序代码;
根据与所述第二类型对应的描述信息,对所述初始程序代码中的目标代码进行调整,并将调整后的程序代码作为目标界面代码。
4.如权利要求2所述的应用程序的生成方法,其特征在于,所述根据所述目标界面代码生成目标应用程序,包括:
将所述目标界面代码写入预设页面模板代码中;
编译写入后的页面模板代码以生成所述目标应用程序。
5.一种应用程序的生成装置,其特征在于,包括:
接收模块,用于接收对应用程序界面的描述信息;
第一生成模块,用于确定所述描述信息的类型,其中,所述类型包括:用于描述所述界面的控件信息的第一类型,和用于描述所述界面的样式信息的第二类型;根据与所述第一类型对应的描述信息,生成对应的界面样例图片;根据与所述第二类型对应的描述信息,结合所述界面样例图片对应的初始程序代码,生成目标界面代码;
第二生成模块,用于根据所述目标界面代码生成目标应用程序。
6.如权利要求5所述的应用程序的生成装置,其特征在于,所述第一生成模块,具体用于:
根据所述第一类型对应的描述信息,生成文本词向量;
根据所述文本词向量生成对应的界面样例图片。
7.如权利要求6所述的应用程序的生成装置,其特征在于,所述第一生成模块,具体用于:
将所述界面样例图片输入预设网络,得到所述预设网络输出的与所述界面样例图片对应的初始程序代码;
根据与所述第二类型对应的描述信息,对所述初始程序代码中的目标代码进行调整,并将调整后的程序代码作为目标界面代码。
8.如权利要求6所述的应用程序的生成装置,其特征在于,所述第二生成模块,具体用于:
将所述目标界面代码写入预设页面模板代码中;
编译写入后的页面模板代码以生成所述目标应用程序。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一项所述的应用程序的生成方法。
10.一种电子设备,其特征在于,包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述权利要求1-4任一项所述的应用程序的生成方法。
CN201910183367.4A 2019-03-12 2019-03-12 应用程序的生成方法、装置及电子设备 Active CN109947426B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910183367.4A CN109947426B (zh) 2019-03-12 2019-03-12 应用程序的生成方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910183367.4A CN109947426B (zh) 2019-03-12 2019-03-12 应用程序的生成方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN109947426A true CN109947426A (zh) 2019-06-28
CN109947426B CN109947426B (zh) 2022-06-17

Family

ID=67009639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910183367.4A Active CN109947426B (zh) 2019-03-12 2019-03-12 应用程序的生成方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN109947426B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457620A (zh) * 2019-08-15 2019-11-15 深圳乐信软件技术有限公司 一种页面访问的方法、装置、设备及存储介质
CN111008009A (zh) * 2019-11-05 2020-04-14 贝壳技术有限公司 基于Flutter的业务组件化方法及系统
CN111045675A (zh) * 2019-12-20 2020-04-21 深圳乐信软件技术有限公司 一种基于Flutter的页面生成方法、装置、设备和存储介质
CN111464858A (zh) * 2020-03-09 2020-07-28 五八有限公司 一种视频播放方法和装置
CN111736840A (zh) * 2019-09-19 2020-10-02 北京沃东天骏信息技术有限公司 小程序应用的编译方法、运行方法、存储介质及电子设备
CN114489409A (zh) * 2022-02-14 2022-05-13 北京高途云集教育科技有限公司 一种图片处理方法、装置、电子设备以及存储介质
CN115269058A (zh) * 2022-09-29 2022-11-01 广州市保伦电子有限公司 一种wpf资源加载方法及装置
CN116107574A (zh) * 2023-04-12 2023-05-12 南京数睿数据科技有限公司 应用界面自动构建方法、装置、电子设备和可读介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105094768A (zh) * 2014-05-06 2015-11-25 北大方正集团有限公司 应用界面生成方法和应用界面生成装置
CN105930159A (zh) * 2016-04-20 2016-09-07 中山大学 一种基于图像的界面代码生成的方法及系统
CN107220600A (zh) * 2017-05-17 2017-09-29 清华大学深圳研究生院 一种基于深度学习的图片生成方法及生成对抗网络
CN108288078A (zh) * 2017-12-07 2018-07-17 腾讯科技(深圳)有限公司 一种图像中字符识别方法、装置和介质
US10049308B1 (en) * 2017-02-21 2018-08-14 A9.Com, Inc. Synthesizing training data
CN108875818A (zh) * 2018-06-06 2018-11-23 西安交通大学 基于变分自编码机与对抗网络结合的零样本图像分类方法
CN109117228A (zh) * 2018-08-01 2019-01-01 浙江口碑网络技术有限公司 图形界面的生成方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105094768A (zh) * 2014-05-06 2015-11-25 北大方正集团有限公司 应用界面生成方法和应用界面生成装置
CN105930159A (zh) * 2016-04-20 2016-09-07 中山大学 一种基于图像的界面代码生成的方法及系统
US10049308B1 (en) * 2017-02-21 2018-08-14 A9.Com, Inc. Synthesizing training data
CN107220600A (zh) * 2017-05-17 2017-09-29 清华大学深圳研究生院 一种基于深度学习的图片生成方法及生成对抗网络
CN108288078A (zh) * 2017-12-07 2018-07-17 腾讯科技(深圳)有限公司 一种图像中字符识别方法、装置和介质
CN108875818A (zh) * 2018-06-06 2018-11-23 西安交通大学 基于变分自编码机与对抗网络结合的零样本图像分类方法
CN109117228A (zh) * 2018-08-01 2019-01-01 浙江口碑网络技术有限公司 图形界面的生成方法及装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457620A (zh) * 2019-08-15 2019-11-15 深圳乐信软件技术有限公司 一种页面访问的方法、装置、设备及存储介质
CN111736840A (zh) * 2019-09-19 2020-10-02 北京沃东天骏信息技术有限公司 小程序应用的编译方法、运行方法、存储介质及电子设备
CN111008009A (zh) * 2019-11-05 2020-04-14 贝壳技术有限公司 基于Flutter的业务组件化方法及系统
CN111008009B (zh) * 2019-11-05 2023-02-24 贝壳技术有限公司 基于Flutter的业务组件化方法及系统
CN111045675A (zh) * 2019-12-20 2020-04-21 深圳乐信软件技术有限公司 一种基于Flutter的页面生成方法、装置、设备和存储介质
CN111045675B (zh) * 2019-12-20 2023-06-06 深圳乐信软件技术有限公司 一种基于Flutter的页面生成方法、装置、设备和存储介质
CN111464858A (zh) * 2020-03-09 2020-07-28 五八有限公司 一种视频播放方法和装置
CN114489409A (zh) * 2022-02-14 2022-05-13 北京高途云集教育科技有限公司 一种图片处理方法、装置、电子设备以及存储介质
CN114489409B (zh) * 2022-02-14 2024-03-26 北京高途云集教育科技有限公司 一种图片处理方法、装置、电子设备以及存储介质
CN115269058A (zh) * 2022-09-29 2022-11-01 广州市保伦电子有限公司 一种wpf资源加载方法及装置
CN116107574A (zh) * 2023-04-12 2023-05-12 南京数睿数据科技有限公司 应用界面自动构建方法、装置、电子设备和可读介质
CN116107574B (zh) * 2023-04-12 2023-06-13 南京数睿数据科技有限公司 应用界面自动构建方法、装置、电子设备和可读介质

Also Published As

Publication number Publication date
CN109947426B (zh) 2022-06-17

Similar Documents

Publication Publication Date Title
CN109947426A (zh) 应用程序的生成方法、装置及电子设备
CN109460276A (zh) 页面和页面配置文件生成方法、装置、终端设备及介质
CN109388399A (zh) 页面和通用页面配置文件生成方法、装置、设备及介质
CN110189394B (zh) 口型生成方法、装置及电子设备
US20230206420A1 (en) Method for detecting defect and method for training model
CN109725948A (zh) 一种动画资源的配置方法及装置
CN108989882A (zh) 用于输出视频中的音乐片段的方法和装置
CN109740018A (zh) 用于生成视频标签模型的方法和装置
CN109300179A (zh) 动画制作方法、装置、终端和介质
CN109815448A (zh) 幻灯片生成方法及装置
US10360886B2 (en) Mobile device and method for executing music-related application
CN109919244A (zh) 用于生成场景识别模型的方法和装置
CN109829432A (zh) 用于生成信息的方法和装置
CN109961032A (zh) 用于生成分类模型的方法和装置
CN110021052A (zh) 用于生成眼底图像生成模型的方法和装置
CN114339392B (zh) 视频剪辑方法、装置、计算机设备及存储介质
CN115965840A (zh) 图像风格迁移和模型训练方法、装置、设备和介质
CN109359727A (zh) 神经网络的结构确定方法、装置、设备及可读介质
CN110188871A (zh) 运算方法、装置及相关产品
CN109816023A (zh) 用于生成图片标签模型的方法和装置
US9424757B2 (en) Method of playing music based on chords and electronic device implementing the same
CN113077815B (zh) 一种音频评估方法及组件
CN112734631A (zh) 基于微调模型的视频图像换脸方法、装置、设备及介质
CN110059739B (zh) 图像合成方法、装置、电子设备和计算机可读存储介质
CN116227629A (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