CN112181419B - 一种界面生成方法、装置及存储介质 - Google Patents
一种界面生成方法、装置及存储介质 Download PDFInfo
- Publication number
- CN112181419B CN112181419B CN202011392174.9A CN202011392174A CN112181419B CN 112181419 B CN112181419 B CN 112181419B CN 202011392174 A CN202011392174 A CN 202011392174A CN 112181419 B CN112181419 B CN 112181419B
- Authority
- CN
- China
- Prior art keywords
- configuration file
- config
- interface
- array
- config configuration
- 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
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
本申请公开了一种界面生成方法、装置及存储介质,涉及计算机技术应用领域。界面生成方法包括:获取config配置文件,所述config配置文件中的整体数据为递归的数组数据,每个数组中包含一个或多个字段,一个数组表示一个功能项,一组数组为一个界面,一组数组包含一个或多个同级别的数组;读取并解析所述config配置文件;通过数据适配器根据解析出的内容生成界面。本申请在进行数据结构‑平台适配时,只需要修改配置文件即可适配,且添加新的功能项时,不需要编写UI代码。此外,通过设置feature配置文件,实现了相同的功能在不同的设备上自动展现出不同的功能表现。
Description
技术领域
本申请涉及计算机技术应用领域,尤其涉及一种界面生成方法、装置及存储介质。
背景技术
随着技术的不断发展,即使是同一个设备产商,其生产的设备型号也会不断增多。每个设备通常都会搭载一定数量的平台厂商芯片,使用的平台厂商芯片、硬件不同,每个设备会有不同的硬件特性,以及不同的特性功能。若设备的芯片平台不同,底层则不同,需要使用不同的代码来实现系统设置菜单。目前,系统设置菜单平台之间的适配繁杂,代码不能进行共用,导致花费在适配上的时间开销大。
发明内容
为了解决系统设置菜单多平台的适配问题,本申请提供一种界面生成方法、装置及存储介质,实现了平台之间的代码共用,只需要修改配置文件即可显示不同功能项UI,配置文件的整体数据为递归的数组数据,增加功能项不需要编写UI代码,只需要写功能实现代码即可。
第一方面,本申请提供一种界面生成方法,包括:
获取config配置文件,所述config配置文件中的整体数据为递归的数组数据,每个数组中包含一个或多个字段,一个数组表示一个功能项,一组数组为一个界面,一组数组包含一个或多个同级别的数组;
读取并解析所述config配置文件;
根据解析出的内容生成界面。
在一种可能的实现方式中,在所述获取config配置文件之前,还包括安装config配置文件,所述安装config配置文件包括:
读取平台芯片,获取芯片平台的名称和/或ID,将安装包中与获取到的芯片平台的名称和/或ID对应的config配置文件安装到系统的内置存储中,所述安装包中包含一个或多个芯片平台的config配置文件,每个芯片平台的config配置文件中包含一个或多个设备的config配置文件。
在一种可能的实现方式中,所述获取config配置文件包括:
获取设备的名称和/或ID,在芯片平台的config配置文件中找到与获取到的设备的名称和/或ID对应的config配置文件。
在一种可能的实现方式中,所述读取并解析所述config配置文件包括:
找到界面的节点和功能项的节点,获取各数组中各字段的内容。
在一种可能的实现方式中,所述根据解析出的内容生成界面包括配置功能项,所述配置功能项包括:
获取feature配置文件,所述feature配置文件提前安装在系统的内置存储中,包含字段key和value,字段key用于表示设备特性的名称,字段value用于表示设备有无此特性;
读取并解析所述feature配置文件;
根据解析出的字段value的内容执行相应的功能逻辑。
在一种可能的实现方式中,所述读取并解析所述feature配置文件包括:
传入与当前功能项对应的设备特性的名称,获取与传入的设备特性名称对应的字段value的内容。
在一种可能的实现方式中,在应用启动时获取config配置文件,将config配置文件中的数据进行初始化,用于界面生成时加载。
在一种可能的实现方式中,所述读取并解析所述config配置文件包括:
当没有获取到config配置文件时,则读取默认配置,通过数据适配器根据读取到的默认配置生成界面。
在一种可能的实现方式中,所述安装config配置文件还包括:
同步更新新增或修改的config配置文件到系统的内置存储中。
在一种可能的实现方式中,数组中的字段包括以下各项中的一项或者多项:
pagetag:用于表示界面的名字;
note:用于文字注释;
Itemtype:用于表示功能项的类型;
itemTag:用于表示点击事件,标识功能项;
Itemicon:用于表示功能项的图标类型;
itemTxt:用于表示功能项的显示文本;
itemVal:用于表示功能项显示的整型类的值;
strVal:用于表示功能项显示的字符类的值;
pageType:用于表示是否进入下一页;
Visibility:用于表示隐藏或显示功能项;
titleTopMargin:用于表示功能项顶部的间距;
titleBottomMargin:用于表示功能项底部的间距;
itemDataList:用于引出下一级数组。
第二方面,本申请提供一种界面生成装置,包括:
config配置文件获取模块,用于获取config配置文件,所述config配置文件中的整体数据为递归的数组数据,每个数组中包含一个或多个字段,一个数组表示一个功能项,一组数组为一个界面,一组数组包含一个或多个同级别的数组;
config配置文件解析模块,用于读取并解析所述config配置文件;
界面生成模块,用于根据解析出的内容生成界面。
在一种可能的实现方式中,还包括:
配置文件安装模块,用于安装config配置文件;
配置文件安装模块安装config配置文件包括:
读取平台芯片,获取芯片平台的名称和/或ID,将安装包中与获取到的芯片平台的名称和/或ID对应的config配置文件安装到系统的内置存储中,所述安装包中包含一个或多个芯片平台的config配置文件,每个芯片平台的config配置文件中包含一个或多个设备的config配置文件。
在一种可能的实现方式中,所述config配置文件获取模块包括子获取模块,所述子获取模块用于获取设备的名称和/或ID,在芯片平台的config配置文件中找到与获取到的设备的名称和/或ID对应的config配置文件。
在一种可能的实现方式中,还包括:
feature配置文件获取模块,用于获取feature配置文件,所述feature配置文件提前安装在系统的内置存储中,包含字段key和value,字段key用于表示设备特性的名称,字段value用于表示设备有无此特性;
feature配置文件解析模块,用于读取并解析所述feature配置文件;
功能逻辑执行模块,用于根据解析出的字段value的内容执行相应的功能逻辑。
在一种可能的实现方式中,所述feature配置文件解析模块包括子解析模块,所述子解析模块用于传入与当前功能项对应的设备特性的名称,获取与传入的设备特性名称对应的字段value的内容。
第三方面,本申请提供一种界面生成装置,所述装置包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如第一方面或第一方面的可能的实现方式中所述的界面生成方法。
第四方面,本申请提供一种存储介质,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如第一方面或第一方面的可能的实现方式中所述的界面生成方法。
需要说明的是,本申请中第二方面和第三方面所述的装置以及第四方面所述的存储介质,用于实现上述第一方面所提供的方法,因此可以达到与第一方面所述的方法相同的有益效果,本申请实施例不再一一赘述。
本申请在进行数据结构-平台适配时,只需要修改配置文件即可适配,且添加新的功能项时,不需要编写UI代码。此外,通过设置feature配置文件,实现了相同的功能在不同的设备上自动展现出不同的功能表现。
附图说明
本申请将通过实施例并参照附图的方式说明,其中:
图1为本申请实施例提供的界面生成方法流程图;
图2为本申请实施例提供的生成的界面的示意图;
图3为本申请实施例提供的生成的另一界面的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。此外,虽然本申请中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整技术方案。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
在本申请实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
除非另外定义,本申请使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而是仅用于区分描述,且对应术语的含义可以相同也可以不同。 “包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
下面将结合附图,对本申请中的技术方案进行描述。
图1为本申请实施例提供的界面生成方法流程图。如图1所示,界面生成方法包括:
S101.获取config配置文件,所述config配置文件中的整体数据为递归的数组数据,每个数组中包含一个或多个字段,一个数组表示一个功能项,一组数组为一个界面,一组数组包含一个或多个同级别的数组。
每个设备通常都有一个config.ini系统设置配置文件,通过读取里边的json数据可以进行界面显示和配置。配置文件采用递归的数组形式,可以新增或修改界面。新增或修改的config配置文件,可同步存储到设备中。一组数组为一个界面,若需要新增界面,则新增一组数组即可,若需要修改界面,则修改数组中的字段即可。数组中定义了很多字段用于表示功能项的类型、显示什么文本和图标、隐藏或显示等。示例地,数组中的字段包括以下各项中的一项或者多项:
pagetag:用于表示界面的名字;
note:用于文字注释,该字段没有实际意义;
Itemtype:用于表示功能项的类型,比如,9表示“副标题”,1表示“带箭头,可进入”等;
itemTag:用于表示点击事件,标识功能项;
Itemicon:用于表示功能项的图标类型;
itemTxt:用于表示功能项的显示文本,如各功能项的名称“网络”、“蓝牙”、“信号源”等,如图2所示;
itemVal:用于表示功能项显示的整型类的值,如图3中的功能项“亮度”对应的值“10”;
strVal:用于表示功能项显示的字符类的值,如图3中的功能项“亮度模式”对应的值“标准”;
pageType:用于表示是否进入下一页,示例地,设置为1表示进入下一页,即进入二级界面,不为1为一级界面。需要说明的是,这里的下一页是指新的一页,示例地,如图2所示的界面为一页,为一级界面,图3所示的界面为另一页,为二级界面,以此类推,可以生成三级界面、四级界面等;
Visibility:用于表示隐藏或显示功能项,如取值为View.GONE(8) | VISIBLE(0)| INVISIBLE(4),其中,View.GONE(8)和INVISIBLE(4)均表示隐藏,VISIBLE(0)表示显示;
titleTopMargin:用于表示功能项顶部的间距;
titleBottomMargin:用于表示功能项底部的间距;
itemDataList:用于引出一组数组。
示例地,config配置文件中的一段json数据如下所示:
{
"pageTag":"com.xgimi.settings.main",
"itemDataList":[
{
"note":"网络(WIFI,热点)",--------------------------------------数组A
"itemicon":"ic_icon_wifi_3",
"itemTxt":"head_network_setting_text",
"itemType":0,
"pageTag":"com.xgimi.settings.net",
"itemDataList":[
{ ------------------------------------数组D
"itemicon":"ic_launcher",
"itemTxt":"network_set_wifi_text",
"itemType":1,
"pageType":1,
"itemTag":"com.xgimi.settings.wifi"
},
{ ------------------------------------数组E
"itemicon":"ic_launcher",
"itemTxt":"network_set_ap_text",
"itemType":1,
"pageType":1,
"itemTag":"com.xgimi.settings.ap"
},
]
},
{
"note":"蓝牙相关",------------------------------------数组B
"itemicon":"ic_icon_bluetooth",
"itemTxt":"network_set_blu_per_text",
"itemType":0,
"pageType":1,
"itemTag":"com.xgimi.settings.bluetooth"
},
{
"note":"信号源",------------------------------------数组C
"itemicon":"ic_icon_hdmi",
"itemTxt":"network_signal_source_text",
"itemType":0,
"itemTag":"com.xgimi.settings.signalSource",
"pageTag":"com.xgimi.settings.signalSource",
"itemDataList":[
{
"note":"开机源",------------------------------------数组F
"itemicon":"ic_launcher",
"itemTxt":"signal_source_setting_boot",
"pageTag":"com.xgimi.settings.signalSource.boot",
"pageType":1,
"itemType":1,
"itemDataList":[
{ ------------------------------------数组G
"itemTxt":"signal_source_setting_boot",
"titleTopMargin":0,
"titleBottomMargin":16,
"itemType":20
},
]
}
其中,note为"网络(WIFI,热点)"、"蓝牙相关"和"信号源"的三个数组A、B和C为一组数组①,note为"网络(WIFI,热点)"的数组A下用字段itemDataList引出的两个数组D和E为一组数组②,note为"信号源"的数组C下用字段itemDataList引出的一个数组F为一组数组③,数组F下用字段itemDataList引出的一个数组G为一组数组④。
采用递归的数组形式,可以无限地添加子界面,且功能项的字段定义详细,可灵活控制功能项的信息,减少UI功能的适配,不需要考虑UI的开发。已经定义好了功能项的UI和整体的界面。只需要在config配置文件中添加一个功能项的数据或者删除一个功能项数据,达到UI自动生成或者是UI自动删除。
在一些实施例中,在步骤S101之前,还包括安装config配置文件。一个安装包中包含一个或多个芯片平台的config配置文件,同类芯片平台的config配置文件放置在同一个config配置文件中,如一个安装包中包含848、958c、838和950四个芯片平台的config配置文件,848芯片平台的config配置文件中包含设备名称为m01和jh01的两个设备型号的config配置文件。芯片平台的config配置文件中的设备的config配置文件也可以用设备ID命名,也可以是其他可以用于识别不同设备的内容,只要能将设备的config配置文件与设备对应即可,本申请对此不做限制。在安装config配置文件时,读取平台芯片,获取芯片平台的名称和/或ID,将安装包中与获取到的芯片平台的名称和/或ID对应的config配置文件安装到系统的内置存储中。如,在使用848芯片平台的设备m01中只安装848的config配置文件,减少占用内存。由于848的config配置文件中包含两个设备型号的config配置文件,因此,在应用服务启动时,还需要获取设备的名称m01,在848的config配置文件中找到设备m01的config配置文件。
S102.读取并解析所述config配置文件。
由于采用了递归的数组形式,因此在利用gson对config配置文件中的json数据进行解析时,可以找到界面的节点和功能项的节点,然后获取各数组中各字段的内容。
S103.通过数据适配器根据解析出的内容生成界面。
步骤S102找到界面的节点和功能项的节点,并获取到各数组中各字段的内容后,即可通过数据适配器生成界面。若没有获取到与设备对应的config配置文件,则读取默认配置,通过数据适配器根据读取到的默认配置生成界面。在一些实施例中,还可以预加载配置文件,在应用启动时获取config配置文件,将config配置文件中的数据进行初始化,用于界面生成时加载,让界面显示的时候速度更快。
而相同功能可能出现在不同的设备上有不同的逻辑,因此,在配置功能项时还可以结合feature配置文件,使相同的功能在不同的设备上自动展现出不同的功能表现。具体包括:
1)定义feature配置文件的字段:
key:用于表示设备特性的名称,如电池、灯光等;
value:用于表示设备有无此特性,如false代表没有该特性,true代表有该特性,如false代表没有电池,true代表有电池。当然,也可以用其他值,如0和1,来表示,本申请对此不做限制。
示例地,feature配置文件的数据设置如下:
{ "key": "stepless_zooming", "value": "false" }, { "key": "support_energy_saving_mode", "value": "true" }, { "key": "support_battery", "value": "false" }, { "key": "support_lighting_color", "value": "false" }
2)将feature配置文件安装在系统的内置存储中。
3)获取feature配置文件,读取并解析所述feature配置文件。
获取到feature配置文件后,使用gson解析json数据,找到key,获取value。若设备中的feature配置文件中包含多组字段key和value,则传入与当前功能项对应的设备特性的名称,获取与传入的设备特性名称对应的字段value的内容。如,当前功能项为“亮度模式”,其对应的特性为“电池”,则传入“电池”,获取字段key为“电池”对应的字段value的内容。
4)根据解析出的字段value的内容执行相应的功能逻辑。
以特性“电池”为例,若步骤3)中获取到的字段value的值为false,代表没有电池,则执行功能逻辑1,如,可以设置亮度模式,若字段value的值为true,代表有电池,则执行功能逻辑2,如,电量低时不可以设置亮度模式。
本申请实施例还提供一种界面生成装置,该装置用于实现上述实施例涉及的界面生成方法,可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,config配置文件获取模块、config配置文件解析模块和界面生成模块等。
本申请实施例还提供一种界面生成装置,所述装置包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现上述实施例涉及的界面生成方法。
本申请实施例还提供一种存储介质,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现上述实施例涉及的界面生成方法。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,部分或全部步骤可以并行执行或先后执行,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,网络设备或者终端设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM)磁碟或者光盘等各种可以存储程序代码的介质。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”或“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种界面生成方法,其特征在于,包括:
安装config配置文件,所述安装config配置文件包括:读取平台芯片,获取芯片平台的名称和/或ID,将安装包中与获取到的芯片平台的名称和/或ID对应的config配置文件安装到系统的内置存储中,所述安装包中包含一个或多个芯片平台的config配置文件,每个芯片平台的config配置文件中包含一个或多个设备的config配置文件;
获取config配置文件,所述config配置文件中的整体数据为递归的数组数据,每个数组中包含一个或多个字段,一个数组表示一个功能项,一组数组为一个界面,一组数组包含一个或多个同级别的数组;
读取并解析所述config配置文件;
根据解析出的内容生成界面;
获取feature配置文件,所述feature配置文件提前安装在系统的内置存储中,包含字段key和value,字段key用于表示设备特性的名称,字段value用于表示设备有无此特性;
读取并解析所述feature配置文件;
根据解析出的字段value的内容执行相应的功能逻辑;
所述读取并解析所述feature配置文件包括:
传入与当前功能项对应的设备特性的名称,获取与传入的设备特性名称对应的字段value的内容。
2.根据权利要求1所述的一种界面生成方法,其特征在于,所述获取config配置文件包括:
获取设备的名称和/或ID,在芯片平台的config配置文件中找到与获取到的设备的名称和/或ID对应的config配置文件。
3.根据权利要求1所述的一种界面生成方法,其特征在于,所述读取并解析所述config配置文件包括:
找到界面的节点和功能项的节点,获取各数组中各字段的内容。
4.根据权利要求1所述的一种界面生成方法,其特征在于,还包括:
在应用启动时获取config配置文件,将config配置文件中的数据进行初始化,用于界面生成时加载。
5.根据权利要求1所述的一种界面生成方法,其特征在于,还包括:
当没有获取到config配置文件时,则读取默认配置,通过数据适配器根据读取到的默认配置生成界面。
6.根据权利要求1所述的一种界面生成方法,其特征在于,还包括:
同步更新新增或修改的config配置文件到系统的内置存储中。
7.根据权利要求1所述的一种界面生成方法,其特征在于,数组中的字段包括以下各项中的一项或者多项:
pagetag:用于表示界面的名字;
note:用于文字注释;
Itemtype:用于表示功能项的类型;
itemTag:用于表示点击事件,标识功能项;
Itemicon:用于表示功能项的图标类型;
itemTxt:用于表示功能项的显示文本;
itemVal:用于表示功能项显示的整型类的值;
strVal:用于表示功能项显示的字符类的值;
pageType:用于表示是否进入下一页;
Visibility:用于表示隐藏或显示功能项;
titleTopMargin:用于表示功能项顶部的间距;
titleBottomMargin:用于表示功能项底部的间距;
itemDataList:用于引出下一级数组。
8.一种界面生成装置,其特征在于,包括:
配置文件安装模块,用于安装config配置文件;配置文件安装模块安装config配置文件包括:读取平台芯片,获取芯片平台的名称和/或ID,将安装包中与获取到的芯片平台的名称和/或ID对应的config配置文件安装到系统的内置存储中,所述安装包中包含一个或多个芯片平台的config配置文件,每个芯片平台的config配置文件中包含一个或多个设备的config配置文件
config配置文件获取模块,用于获取config配置文件,所述config配置文件中的整体数据为递归的数组数据,每个数组中包含一个或多个字段,一个数组表示一个功能项,一组数组为一个界面,一组数组包含一个或多个同级别的数组;
config配置文件解析模块,用于读取并解析所述config配置文件;
界面生成模块,用于通过数据适配器根据解析出的内容生成界面;
feature配置文件获取模块,用于获取feature配置文件,所述feature配置文件提前安装在系统的内置存储中,包含字段key和value,字段key用于表示设备特性的名称,字段value用于表示设备有无此特性;
feature配置文件解析模块,用于读取并解析所述feature配置文件;feature
配置文件解析模块读取并解析所述feature配置文件包括:传入与当前功能项对应的设备特性的名称,获取与传入的设备特性名称对应的字段value的内容;
功能逻辑执行模块,用于根据解析出的字段value的内容执行相应的功能逻辑。
9.根据权利要求8所述的一种界面生成装置,其特征在于,配置文件获取模块获取config配置文件包括:
获取设备的名称和/或ID,在芯片平台的config配置文件中找到与获取到的设备的名称和/或ID对应的config配置文件。
10.一种界面生成装置,其特征在于,所述装置包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1-7中任一项所述的界面生成方法。
11.一种存储介质,其特征在于,所述存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1-7中任一项所述的界面生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011392174.9A CN112181419B (zh) | 2020-12-03 | 2020-12-03 | 一种界面生成方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011392174.9A CN112181419B (zh) | 2020-12-03 | 2020-12-03 | 一种界面生成方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112181419A CN112181419A (zh) | 2021-01-05 |
CN112181419B true CN112181419B (zh) | 2021-08-31 |
Family
ID=73918327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011392174.9A Active CN112181419B (zh) | 2020-12-03 | 2020-12-03 | 一种界面生成方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112181419B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560041B (zh) * | 2021-02-25 | 2021-05-25 | 北京微步在线科技有限公司 | 质量自动化验证检测的方法、设备及计算机存储介质 |
CN116208661A (zh) * | 2023-02-22 | 2023-06-02 | 重庆长安汽车股份有限公司 | 功能配置适配方法、装置、车辆及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978196A (zh) * | 2015-06-26 | 2015-10-14 | 深圳Tcl数字技术有限公司 | 显示设置功能项的方法及装置 |
CN107729012A (zh) * | 2017-10-27 | 2018-02-23 | 深圳前海桔子信息技术有限公司 | 一种应用界面组合配置方法和装置 |
CN109213528A (zh) * | 2017-07-06 | 2019-01-15 | 北大方正集团有限公司 | Web前端界面集成方法及Web前端界面集成装置 |
US10261662B2 (en) * | 2015-09-04 | 2019-04-16 | Microsoft Technology Licensing, Llc | Context based selection of menus in contextual menu hierarchies |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101782848B (zh) * | 2009-01-19 | 2013-12-04 | 西北工业大学 | 仿真软件界面集成方法 |
US20130080435A1 (en) * | 2011-09-23 | 2013-03-28 | Nokia Corporation | Method and apparatus for managing online content collections |
CN105025065B (zh) * | 2014-04-24 | 2019-04-16 | 中国电信股份有限公司 | 将Web网站转换为Web应用的方法、装置与系统 |
CN105893063B (zh) * | 2016-06-13 | 2019-02-15 | 积成电子股份有限公司 | 一种基于xml格式配置文件的应用程序界面的构建方法 |
CN106484464B (zh) * | 2016-09-18 | 2019-09-17 | 青岛海信电器股份有限公司 | 调谐器芯片驱动方法和电子设备 |
CN106502540B (zh) * | 2016-10-26 | 2020-02-25 | 北京奇虎科技有限公司 | 利用浮窗在主应用界面中进行功能定制的方法及装置 |
CN108984221B (zh) * | 2017-05-31 | 2021-07-20 | 北京京东尚科信息技术有限公司 | 一种多平台用户行为日志的采集方法和装置 |
CN109857451B (zh) * | 2019-02-13 | 2020-08-25 | 广东高云半导体科技股份有限公司 | Ip核文件生成方法、装置、设备及介质 |
-
2020
- 2020-12-03 CN CN202011392174.9A patent/CN112181419B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978196A (zh) * | 2015-06-26 | 2015-10-14 | 深圳Tcl数字技术有限公司 | 显示设置功能项的方法及装置 |
US10261662B2 (en) * | 2015-09-04 | 2019-04-16 | Microsoft Technology Licensing, Llc | Context based selection of menus in contextual menu hierarchies |
CN109213528A (zh) * | 2017-07-06 | 2019-01-15 | 北大方正集团有限公司 | Web前端界面集成方法及Web前端界面集成装置 |
CN107729012A (zh) * | 2017-10-27 | 2018-02-23 | 深圳前海桔子信息技术有限公司 | 一种应用界面组合配置方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112181419A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111049878B (zh) | 微服务调用链具象化的方法、装置、电子装置及存储介质 | |
CN112181419B (zh) | 一种界面生成方法、装置及存储介质 | |
CN108920370B (zh) | 兼容性问题检测方法、装置及设备 | |
KR20100011825A (ko) | 정보 분석프로세스 추천 설계시스템 및 방법 | |
CN103329108A (zh) | 测试装置 | |
CN109783388A (zh) | Ui自动化测试方法、装置及电子设备 | |
CN112416318B (zh) | 微服务开发方法、装置、存储介质及电子设备 | |
CN109684008A (zh) | 卡片渲染方法、装置、终端及计算机可读存储介质 | |
CN107733710A (zh) | 链路调用关系的构建方法、装置、计算机设备及存储介质 | |
CN108460161B (zh) | 分层抽样方法、装置和计算机设备 | |
CN109522086B (zh) | 对窗口的操作方法和装置、计算机装置及可读存储介质 | |
CN108062401B (zh) | 应用推荐方法、装置及存储介质 | |
US9336115B1 (en) | User interface driven real-time performance evaluation of program code | |
CN112905937A (zh) | 基于大数据的服务内容更新生成方法及云端计算服务系统 | |
CN115629763A (zh) | 目标代码的生成方法、npu指令的显示方法及装置 | |
US20140282426A1 (en) | Divide and conquer approach to scenario timeline activity attribution | |
WO2023151397A1 (zh) | 应用程序部署方法、装置、设备及介质 | |
CN113805861B (zh) | 基于机器学习的代码生成方法、代码编辑系统及存储介质 | |
CN115168840A (zh) | 一种故障注入方法、装置及计算机可读存储介质 | |
CN112068895B (zh) | 代码配置方法、装置、视频播放设备及存储介质 | |
CN113064640B (zh) | 一种bios选项校验方法、系统及介质 | |
CN113778412A (zh) | 数据资源编排方法、装置、计算机设备和可读存储介质 | |
CN113268221A (zh) | 文件匹配方法、装置、存储介质及计算机设备 | |
US10684781B1 (en) | Big data read-write reduction | |
CN111736825A (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 |