CN111367516B - 应用界面生成方法、装置及电子设备 - Google Patents
应用界面生成方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111367516B CN111367516B CN201811593103.8A CN201811593103A CN111367516B CN 111367516 B CN111367516 B CN 111367516B CN 201811593103 A CN201811593103 A CN 201811593103A CN 111367516 B CN111367516 B CN 111367516B
- Authority
- CN
- China
- Prior art keywords
- application interface
- information
- layout
- code information
- configuration file
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供了一种应用界面生成方法、装置及电子设备,应用于应用开发技术领域,其中该方法包括:获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验。此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
Description
技术领域
本公开涉及应用开发技术领域,具体而言,本公开涉及一种应用界面生成方法、装置及电子设备。
背景技术
随着移动终端设备相关技术的发展,人们可以在移动终端设备(如手机、PAD等)上安装相应的APP(Application,应用程序),以使用相应APP提供的对应功能,如观看短视频、通信等,XML(Extensible Markup Language,可扩展标记语言)作为一种可扩展标记语言,可用于传输和存储数据,通过XML文件可以对APP的应用界面包含的组件(如按钮、文本框等)进行布局。
目前,APP的应用界面的组件的布局主要是通过XML文件进行解析来实现的,即当用户打开相应的APP时,获取本地存储的对应的定义应用界面组件布局的XML文件,并在通过相应的XML文件解析器对对应的XML文件进行解析的同时绘制生成相应的应用界面,其中,XML文件是用户通过安装相应的APK(AndroidPackage,安装包)而存储在本地的,相应的APK是通过将包含XML文件的项目文件进行打包得到的。然而,根据现有的通过获取并解析XML文件生成应用界面的方式,对XML文件进行解析的同时绘制生成相应应用界面的过程非常耗时,用户需要等待较长的时间才能看到生成的完整的应用界面,造成用户体验差,此外,加载XML解析器也要占用较多的内存资源。因此,现有的通过解析XML文件生成应用界面的方式,存在生成应用界面的时间较长,用户体验较差,生成应用界面时占用内存资源过多的问题。
发明内容
本公开提供了一种应用界面生成方法、装置及电子设备,用于减少生成应用界面的耗时,提升应用界面的生成速度,进而提升用户体验,以及减少生成应用界面时占用的内存资源,本公开采用的技术方案如下:
第一方面,提供了一种应用界面生成方法,该方法包括:
获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
基于控制应用界面布局的代码信息生成目标应用界面。
第二方面,提供了一种应用界面生成装置,该装置包括:
获取模块,用于获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
界面生成模块,用于基于获取模块获取到的控制应用界面布局的代码信息生成目标应用界面。
第三方面,提供了一种电子设备,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行第一方面所示的应用界面生成方法。
第四方面,提供了一种计算机可读存储介质,计算机存储介质用于存储计算机指令,当其在计算机上运行时,使得计算机可以执行第一方面所示的应用界面生成方法。
本公开提供了一种应用界面生成方法、装置及电子设备,与现有技术在对XML文件进行解析的同时绘制生成相应的应用界面相比,本公开通过获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验。此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
本公开附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本公开实施例的一种应用界面生成方法的流程示意图;
图2为本公开实施例的一种应用界面生成装置的结构示意图;
图3为本公开实施例的另一种应用界面生成装置的结构示意图;
图4为本公开实施例的一种电子设备的结构示意图。
具体实施方式
下面详细描述本公开的实施例,各实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本公开,而不能解释为对本公开的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”和“该”也可包括复数形式。应该进一步理解的是,本公开的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。
本公开的一个实施例中提供了一种应用界面生成方法,如图1所示,该方法可以包括以下步骤:
步骤S101,获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
对于本实施例,可扩展标记语言(XML,Extensible Markup Language)作为一种可扩展标记语言,被设计用来传输和存储数据,通过XML配置文件可以对APP的应用界面包含的组件(如按钮、文本框等)进行布局,其中,XML配置文件可以是相应软件工程师编写生成的,用于定义相应应用界面中的各个组件的属性信息。
具体地,在将相应APP的项目文件打包生成APK时,对XML文件进行相应的处理得到控制应用界面布局的代码信息,将包含该控制应用界面布局的代码信息的项目文件打包成APK,用户可以通过下载安装相应的APK,而将控制应用界面布局的代码信息存储至本地,其中,该控制应用界面布局的代码信息可以是控制应用界面布局的java代码信息。
具体地,当用户点击相应的APP的应用图标时或者通过相应的语言控制方式打开相应的APP时,通过相应的资源调用方法获取控制应用界面布局的代码信息。
步骤S102,基于控制应用界面布局的代码信息生成目标应用界面。
具体地,可以是相应的处理器对控制应用界面布局的代码信息进行编译处理,生成目标应用界面,具体地,可以是相应的处理器对控制应用界面布局的java代码信息进行编译处理,生成目标应用界面。
本公开实施例提供了一种应用界面生成方法,与现有技术在对XML文件进行解析的同时绘制生成相应的应用界面相比,本公开实施例通过获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验。此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
本公开的一个实施例提供了一种可能的实现方式,具体地,步骤S101中的基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息的方式,包括:
步骤S1011(图中未示出),获取可扩展标记语言配置文件中各个组件分别对应的标准代码段;
具体地,应用界面中的各个组件都对应有标准代码段,其中,该标准代码段可以是通过java代码方式生成应用界面的控制各个组件布局的标准java代码段。
具体地,通过组件与标准代码段之间的映射匹配关系,获取可扩展标记语言配置文件中各个组件对应的标准代码段。
步骤S1012(图中未示出),基于各个组件的属性信息分别对对应的标准代码段进行转换处理,得到各个组件分别对应的转换处理后的标准代码段;
具体地,基于各个组件的属性信息,分别对对应的标准代码段进行转换处理,其中,该转换处理可以是将标准代码段中的相应参数信息替换为对应的组件的相应属性信息。
步骤S1013(图中未示出),基于得到的各个组件分别对应的转换处理后的标准代码段确定控制应用界面布局的代码信息。
具体地,将得到的各个组件分别对应的转换处理后的标准代码段进行合并处理确定控制应用界面布局的代码信息,也可以是将得到的各个组件分别对应的转换处理后的标准代码段分别嵌套进相应其他项目文件中,确定控制应用界面布局的代码信息。
对于本公开实施例,根据各个组件的属性信息分别对对应的标准代码段进行转换处理,并基于得到的各个转换处理后的标准代码段确定控制应用界面布局的代码信息,从而解决了如何快速确定控制应用界面布局的代码信息的问题,进而为基于控制应用界面布局的代码信息生成目标应用界面提供了基础。
本公开的一个实施例提供了一种可能的实现方式,具体地,步骤S1011包括:
步骤S10111(图中未示出),确定可扩展标记语言配置文件中各个表示组件名称的关键字符信息;
具体地,可扩展标记语言配置文件可通过一行或多行语句定义一个组件的属性信息,其中,该一行或多行语句中有相应的关键字符信息表示定义的某一组件的名称,通过相应的字符匹配方法,可以确定各个表示组件名称的关键字符信息。
步骤S10112(图中未示出),基于各个表示组件名称的关键字符信息确定各个组件分别对应的标准代码段。
具体地,基于关键字符信息与标准代码段的映射匹配关系,确定各个组件分别对应的标准代码段。
对于本公开实施例,通过各个表示组件名称的关键字符信息确定各个组件分别对应的标准代码段,从而解决了各个组件分别对应的标准代码段的确定问题。
其中,组件的属性信息包括以下至少一项:位置信息;名称信息;类型信息;尺寸信息;背景色;字体信息;对齐方式信息。
其中,组件的属性信息包括但不限于位置信息、名称信息、类型信息、尺寸信息、背景色、字体信息、对齐方式信息。
对于本公开实施例,组件的属性信息包含不同维度的多个信息,从而能生成用户体验较佳的目标应用界面。
本公开一个实施例提供了一种可能的实现方式,该方法还包括:
步骤S103(图中未示出),基于控制应用界面布局的代码信息生成目标应用界面时,生成表征关键字与组件对应关系的键值对列表,键值对列表用于当监听到目标应用界面上有触发事件发生时确定触发事件对应的组件的组件信息。
具体地,各个组件对应的标准代码段包含相应的代码信息用于建立关键字(可以是一个ID值)与组件的对应关系。
具体地,通过对控制应用界面布局的代码信息进行相应处理,在生成目标应用界面的同时,生成表征关键字与组件对应关系的键值对列表,其中,通过该键值对列表用于当监听到目标应用界面上有触发事件发生时确定触发事件对应的组件的组件信息。
对于本公开实施例,基于控制应用界面布局的代码信息生成目标应用界面时,生成表征关键字与组件对应关系的键值对列表,从而当监听到目标应用界面上有触发事件发生时,能根据该键值对列表确定触发事件对应的组件的组件信息,不需要通过遍历组件的方式确定触发事件对应的组件的组件信息,减少了确定触发事件对应的组件的组件信息的时间。
图2为本公开的一个实施例中提供的一种应用界面生成装置,该装置20包括:获取模块201及界面生成模块202,其中,
获取模块201,用于获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
界面生成模块202,用于基于获取模块201获取到的控制应用界面布局的代码信息生成目标应用界面。
本公开的一个实施例提供了一种应用界面生成装置,与现有技术在对XML文件进行解析的同时绘制生成相应的应用界面相比,本公开实施例通过获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验,此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
本实施例的装置可执行本公开上述实施例中提供的一种应用界面生成方法,其实现原理相类似,此处不再赘述。
本公开实施例提供了一种可能的应用界面生成装置,如图3所示,本实施例装置30可以包括:获取模块301及界面生成模块302,其中,
获取模块301,用于获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
其中,图3中的获取模块301与图2中的获取模块201的功能相同或者相似。
界面生成模块302,用于基于获取模块301获取到的控制应用界面布局的代码信息生成目标应用界面。
其中,图3中的界面生成模块302与图2中的界面生成模块202的功能相同或者相似。
本公开实施例提供了一种可能的应用界面生成装置,进一步地,该装置30还包括代码确定模块303,代码确定模块包括获取单元3031、转换单元3032及确定单元3033;
获取单元3031,用于获取可扩展标记语言配置文件中各个组件分别对应的标准代码段;
转换单元3032,用于基于各个组件的属性信息分别对对应的获取单元获取的标准代码段进行转换处理,得到各个组件分别对应的转换处理后的标准代码段;
确定单元3033,用于基于得到的各个组件分别对应的转换单元转换处理得到的转换处理后的标准代码段确定控制应用界面布局的代码信息。
对于本公开实施例,根据各个组件的属性信息分别对对应的标准代码段进行转换处理,并基于得到的各个转换处理后的标准代码段确定控制应用界面布局的代码信息,从而解决了如何快速确定控制应用界面布局的代码信息的问题,进而为基于控制应用界面布局的代码信息生成目标应用界面提供了基础。
本公开实施例提供了一种可能的装置,获取单元3031,还用于确定可扩展标记语言配置文件中各个表示组件名称的关键字符信息;
以及用于基于各个表示组件名称的关键字符信息确定各个组件分别对应的标准代码段。
对于本公开实施例,通过各个表示组件名称的关键字符信息确定各个组件分别对应的标准代码段,从而解决了各个组件分别对应的标准代码段的确定问题。
其中,组件的属性信息包括以下至少一项:位置信息;名称信息;类型信息;尺寸信息;背景色;字体信息;对齐方式信息。
对于本公开实施例,组件的属性信息包含不同维度的多个信息,从而能生成用户体验较佳的目标应用界面。
本公开实施例提供了一种可能的装置,该装置还包括:列表生成模块304;
列表生成模块304,用于基于控制应用界面布局的代码信息生成目标应用界面时,生成表征关键字与组件对应关系的键值对列表,键值对列表用于当监听到目标应用界面上有触发事件发生时确定触发事件对应的组件的组件信息。
对于本公开实施例,基于控制应用界面布局的代码信息生成目标应用界面时,生成表征关键字与组件对应关系的键值对列表,从而当监听到目标应用界面上有触发事件发生时,能根据该键值对列表确定触发事件对应的组件的组件信息,不需要通过遍历组件的方式确定触发事件对应的组件的组件信息,减少了确定触发事件对应的组件的组件信息的时间。
本公开实施例提供了一种应用界面生成装置,与现有技术在对XML文件进行解析的同时绘制生成相应的应用界面相比,本公开实施例通过获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验。此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
本公开实施例提供的应用界面生成装置,适用于上述实施例所示的方法,在此不再赘述。
在一个可选的实施例中,提供了一种电子设备,如图4所示,其示出了适于用来实现本公开实施例的电子设备40的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图4示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图4所示,电子设备40可以包括处理装置(例如中央处理器、图形处理器等)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储装置408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM 403中,还存储有电子设备40操作所需的各种程序和数据。处理装置401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
通常,以下装置可以连接至I/O接口405:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置406;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置407;包括例如磁带、硬盘等的存储装置408;以及通信装置409。通信装置409可以允许电子设备40与其他设备进行无线或有线通信以交换数据。虽然图4示出了具有各种装置的电子设备40,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
本公开一个实施例提供了一种电子设备,与现有技术在对XML文件进行解析的同时绘制生成相应的应用界面相比,本公开实施例通过获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验。此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
本实施例提供了一种电子设备适用于上述方法实施例,在此不再赘述。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置409从网络上被下载和安装,或者从存储装置408被安装,或者从ROM 402被安装。在该计算机程序被处理装置401执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:执行上述方法实施例所示的应用界面生成方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本公开一个实施例提供了一种计算机可读存储介质,与现有技术在对XML文件进行解析的同时绘制生成相应的应用界面相比,本公开实施例通过获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息,然后基于控制应用界面布局的代码信息生成目标应用界面。即本公开预先基于可扩展标记语言配置文件得到控制应用界面布局的代码信息,然后基于得到的控制应用界面布局的代码信息生成应用界面,不需要对XML文件进行解析,从而减少了生成应用界面的耗时,提升了用户体验。此外,内存中也不需要加载XML文件解析器,从而减少了生成应用界面时占用的内存资源。
本实施例提供了一种计算机可读存储介质适用于上述方法实施例,在此不再赘述。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种应用界面生成方法,其特征在于,包括:
获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,所述可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
基于所述控制应用界面布局的代码信息生成目标应用界面;
所述获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,之前还包括:
应用程序开发端生成应用程序APK文件时,对可扩展标记语言配置文件进行处理,得到所述代码信息,将包含所述代码信息的项目文件打包成所述APK文件;所述代码信息为java代码信息;
所述获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,包括:下载并安装所述APK文件,获得所述代码信息。
2.根据权利要求1所述的方法,其特征在于,基于可扩展标记语言配置文件得到控制应用界面布局的代码信息的方式,包括:
获取所述可扩展标记语言配置文件中各个组件分别对应的标准代码段;
基于各个组件的属性信息分别对对应的所述标准代码段进行转换处理,得到各个组件分别对应的转换处理后的标准代码段;
基于得到的各个组件分别对应的所述转换处理后的标准代码段确定所述控制应用界面布局的代码信息。
3.根据权利要求2所述的方法,其特征在于,所述获取所述可扩展标记语言配置文件中各个组件分别对应的标准代码段,包括:
确定所述可扩展标记语言配置文件中各个表示组件名称的关键字符信息;
基于各个表示组件名称的关键字符信息确定各个组件分别对应的标准代码段。
4.根据权利要求1所述的方法,其特征在于,所述组件的属性信息包括以下至少一项:位置信息;名称信息;类型信息;尺寸信息;背景色;字体信息;对齐方式信息。
5.根据权利要求1所述的方法,其特征在于,该方法还包括:
基于所述控制应用界面布局的代码信息生成目标应用界面时,生成表征关键字与组件对应关系的键值对列表,所述键值对列表用于当监听到所述目标应用界面上有触发事件发生时确定所述触发事件对应的组件。
6.一种应用界面生成装置,其特征在于,包括:
获取模块,用于获取预先基于可扩展标记语言配置文件得到的控制应用界面布局的代码信息,所述可扩展标记语言配置文件用于定义应用界面中各个组件的属性信息;
界面生成模块,用于基于所述获取模块获取到的所述控制应用界面布局的代码信息生成目标应用界面;
所述应用界面生成装置还包括:
准备模块,用于应用程序开发端生成应用程序APK文件时,对可扩展标记语言配置文件进行处理,得到所述代码信息,将包含所述代码信息的项目文件打包成所述APK文件;所述代码信息为java代码信息;
所述获取模块包括下载并安装所述APK文件,获得所述代码信息。
7.根据权利要求6所述的应用界面生成装置,其特征在于,该装置还包括代码确定模块,所述代码确定模块包括获取单元、转换单元及确定单元;
所述获取单元,用于获取所述可扩展标记语言配置文件中各个组件分别对应的标准代码段;
所述转换单元,用于基于各个组件的属性信息分别对对应的所述获取单元获取的所述标准代码段进行转换处理,得到各个组件分别对应的转换处理后的标准代码段;
所述确定单元,用于基于得到的各个组件分别对应的所述转换单元转换处理得到的所述转换处理后的标准代码段确定所述控制应用界面布局的代码信息。
8.根据权利要求7所述的应用界面生成装置,其特征在于,
所述获取单元,还用于确定所述可扩展标记语言配置文件中各个表示组件名称的关键字符信息;
以及用于基于各个表示组件名称的关键字符信息确定各个组件分别对应的标准代码段。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1至5任一项所述的应用界面生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读 存储介质用于存储计算机指令,当其在计算机上运行时,使得计算机执行上述权利要求1至5中任一项所述的应用界面生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811593103.8A CN111367516B (zh) | 2018-12-25 | 2018-12-25 | 应用界面生成方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811593103.8A CN111367516B (zh) | 2018-12-25 | 2018-12-25 | 应用界面生成方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111367516A CN111367516A (zh) | 2020-07-03 |
CN111367516B true CN111367516B (zh) | 2021-08-10 |
Family
ID=71206114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811593103.8A Active CN111367516B (zh) | 2018-12-25 | 2018-12-25 | 应用界面生成方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111367516B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857720B (zh) * | 2020-07-31 | 2023-08-22 | 抖音视界有限公司 | 用户界面状态信息的生成方法、装置、电子设备及介质 |
CN112099793B (zh) * | 2020-09-25 | 2023-08-22 | 成都极米科技股份有限公司 | 界面生成方法、装置、电子设备及存储介质 |
CN112631588A (zh) * | 2020-12-28 | 2021-04-09 | 北京五八信息技术有限公司 | 文件生成方法、装置、电子设备和计算机可读介质 |
CN112835579B (zh) * | 2021-02-04 | 2024-07-19 | 北京百度网讯科技有限公司 | 确定界面代码的方法、装置、电子设备和存储介质 |
CN112860259B (zh) * | 2021-03-31 | 2024-02-06 | 中国工商银行股份有限公司 | 界面处理方法、装置、电子设备、存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101202665B (zh) * | 2007-12-06 | 2011-04-13 | 中兴通讯股份有限公司 | 图形用户界面的生成方法 |
US8356252B2 (en) * | 2009-09-02 | 2013-01-15 | Synchronoss Technologies, Inc. | System and method for providing a computer display form layout |
CN104090749B (zh) * | 2014-05-30 | 2015-09-16 | 爱培科科技开发(深圳)有限公司 | 一种WinCE产品界面主题更新变换处理方法及系统 |
CN106970926A (zh) * | 2016-01-14 | 2017-07-21 | 卓望数码技术(深圳)有限公司 | 一种移动应用界面动态生成方法及系统 |
CN106371825B (zh) * | 2016-08-23 | 2019-08-13 | 武大吉奥信息技术有限公司 | 一种移动端应用界面表单动态生成方法及装置 |
CN107992304B (zh) * | 2017-12-29 | 2021-01-08 | 北京远特科技股份有限公司 | 一种生成显示界面的方法和装置 |
-
2018
- 2018-12-25 CN CN201811593103.8A patent/CN111367516B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111367516A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111367516B (zh) | 应用界面生成方法、装置及电子设备 | |
CN109582310B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN111338623B (zh) | 一种开发用户界面的方法、装置、介质和电子设备 | |
CN109947431B (zh) | 一种代码生成方法、装置、设备及存储介质 | |
CN112214408B (zh) | 依赖冲突检测方法、装置、电子设备及计算机可读介质 | |
CN111309304B (zh) | 一种生成idl文件的方法、装置、介质和电子设备 | |
CN111338944B (zh) | 远程过程调用rpc接口测试方法、装置、介质及设备 | |
CN111324376B (zh) | 功能配置方法、装置、电子设备及计算机可读介质 | |
CN111400068B (zh) | 接口的控制方法、装置、可读介质和电子设备 | |
CN112416303B (zh) | 软件开发工具包热修复方法、装置及电子设备 | |
CN110442419B (zh) | Android应用的界面布局方法及装置 | |
CN110489180B (zh) | 一种埋点上报方法、装置、介质和电子设备 | |
CN109857503B (zh) | 页面交互效果自适应方法、装置与电子设备 | |
CN109815455B (zh) | 项目文件处理方法和装置 | |
CN111752644A (zh) | 接口模拟方法、装置、设备及存储介质 | |
CN109669720B (zh) | 基于Promise的链式异步请求处理方法、装置及电子设备 | |
CN111240801A (zh) | 生成堆内存快照文件的方法、装置、介质和电子设备 | |
CN113448585B (zh) | 一种线程池的编译方法、装置、电子设备和存储介质 | |
CN114064376B (zh) | 一种页面监测方法、装置、电子设备及介质 | |
CN111625326B (zh) | 任务管线执行方法、装置及电子设备 | |
CN111399902B (zh) | 客户端源文件处理方法、装置、可读介质与电子设备 | |
CN111381813B (zh) | 前端页面调试方法、装置、计算机设备和存储介质 | |
CN113296771A (zh) | 页面显示方法、装置、设备和计算机可读介质 | |
CN111309323A (zh) | 参数初始化方法、装置和电子设备 | |
CN110908711A (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 |