CN112035104B - 一种移动应用动态更改功能配置的建模方法 - Google Patents

一种移动应用动态更改功能配置的建模方法 Download PDF

Info

Publication number
CN112035104B
CN112035104B CN202010882600.0A CN202010882600A CN112035104B CN 112035104 B CN112035104 B CN 112035104B CN 202010882600 A CN202010882600 A CN 202010882600A CN 112035104 B CN112035104 B CN 112035104B
Authority
CN
China
Prior art keywords
configuration
json
function
page
app
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
Application number
CN202010882600.0A
Other languages
English (en)
Other versions
CN112035104A (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.)
Chongqing Changan Automobile Co Ltd
Original Assignee
Chongqing Changan Automobile 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 Chongqing Changan Automobile Co Ltd filed Critical Chongqing Changan Automobile Co Ltd
Priority to CN202010882600.0A priority Critical patent/CN112035104B/zh
Publication of CN112035104A publication Critical patent/CN112035104A/zh
Application granted granted Critical
Publication of CN112035104B publication Critical patent/CN112035104B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开一种移动应用动态更改功能配置的建模方法,将JSON配置放到数据库进行存储管理,app通过具体的用户信息获取相对应的配置JSON字符串app只需要在页面进行切换时通过页面名称作为JSON对象的key直接筛选出当前页面的所有功能进行解析使用,可通过在monitor平台的功能勾选修改数据库中的配置JSON字符串。该建模方法,开发灵活且能随意控制移动应用所有页面功能展示或隐藏,达到实时更新JSON配置的效果,提高操作效率。

Description

一种移动应用动态更改功能配置的建模方法
技术领域
本发明涉及移动应用软件开发技术领域,尤其涉及一种移动应用动态更改功能配置的建模方法。
背景技术
现如今,随着移动应用在互联网中不断的高速发展,用户们对移动应用更是不断提出更高的用户需求,很多情况下我们需要针对用户的权限进行管理,不同用户所能使用的功能权限也不同。由于此类不同用户的功能权限的问题出现,移动app端开发者均面临一个共同的问题,就是如何使自身应用更好、更稳定的运行在各类智能手机上。为应对此问题,一种方式是引导用户进行手动配置,该方式一方面需要用户参与,增加了用户使用复杂度,导致效率偏低;另一方面,当手机引导不完全或者用户配置度较低时,容易偏离预期的配置目标;另一种方式是在编译时决定配置功能,例如中国专利文献CN108037915A公开了一种获取JSON配置文件的方法及终端,该专利的技术方案中主要是以编译时解析本地JSON配置文件转化成结构化数据,对所述结构化数据进行递归遍历,并将所述结构化数据写入java文件的方式进行配置解析,该方法由于是解析本地JSON配置文件,所以只能在编译时决定配置功能,不利于后期维护及实时更改配置文件及功能,JSON配置文件较大时编译解析过程针对JSON配置文件进行递归遍历时会加大编译的时长,因此存在一定局限性。
发明内容
本发明的目的是提供一种移动应用动态更改功能配置的建模方法,开发灵活且能随意控制移动应用所有页面功能展示或隐藏,达到实时更新JSON配置的效果,提高操作效率。
为实现上述目的,本发明提供了一种移动应用动态更改功能配置的建模方法,包括以下步骤:
创建JSON功能配置,针对不同用户类型在monitor可视化平台进行JSON功能配置勾选来决定各用户类型的app的功能页面下的功能的展示或隐藏;通过后端API获取monitor可视化平台中的JSON功能配置信息并存入数据库,其中,功能配置信息的格式为JSON配置字符串的格式;
建立数据库的增、删、改、查webApi,通过webApi与JSON配置字符串建立配置关系并存入数据库,且app能够通过使用对应的webApi指定关系参数到数据库获取相对应的JSON配置字符串返回给app;
对app中的每个功能页面均设定一个页面名称,该页面名称用于作为索引获取JSON配置对象中当前功能页面下所有的功能配置;
在app中对每个功能页面下各个功能模块均定义一个功能标识,该些功能标识和页面下所有的功能配置对象中的索引一一对应;
根据登录的用户类型,app通过在项目中引入mixin的方式混入一个公共配置方法来解析配置JSON参数以展示或隐藏该用户类型所对应的功能配置项。
进一步,JSON对象结构以app的页面名称作为key,页面下所有功能配置的作为value,生成JSON配置字符串格式为:“页面名称”:“当前页面功能”(1:开启,0:关闭):{”页面1”:{”功能1”:1,”功能2”:0},”页面2”:{}…}。
进一步,所述app通过在项目中引入mixin的方式混入一个公共配置方法来解析配置JSON参数以展示或隐藏该用户类型所对应的功能配置项,具体步骤为:
通过调用后台接口webApi来针对数据库中存储的数据进行提取,存入app本地存储中;
app进入某个功能页面时触发公共配置方法,该公共配置方法通过获取本地存储JSON配置字符串后通过JSON.parse转换成可以使用的JSON对象;使用当前页面名称作为JSON对象的key相对应的来获取当前页面下所有的功能配置项,该功能配置项也是一个JSON对象;递归遍历当前页面下所有的功能配置项,由具体功能配置项的值(1:开启,0:关闭)来决定app当前页面下的功能展示或隐藏。
在本实施例中,数据库采用MySql数据库。
本发明与现有技术相比较具有以下优点:
本发明的移动应用动态更改功能配置的建模方法,在不影响用户体验的前提下,让用户所使用到的应用功能和配置相关联;能够使用平台实时监控及动态更改当前用户的整个应用的功能,使应用更加灵活,更加贴近用户需求,能够解决功能上线后出现重大bug及不稳定的情况下紧急关闭入口模拟下线,达到实时更新JSON配置的效果;采取自动化操作,无需用户进行参与,由于是JSON配置字符串驱动,降低了适配难度,开发者只需要在可视化平台monitor上进行功能的勾选操作即可,不触及核心控制代码;功能开发好后新增用户类型后只需要针对当前新增用户类型进行功能勾选维护,而不需要针对新增的用户进行重复开发等繁琐的开发工作,以此解决了用户使用复杂度、效率偏低、不利于后期维护及实时更改配置文件及功能,以及解决了JSON配置文件较大时编译解析过程针对JSON配置文件进行递归遍历时会加大编译的时长。
附图说明
图1为本发明移动应用动态更改功能配置的建模方法的流程图;
图2为本发明其他用户类型登录通过本发明移动应用动态更改功能配置的建模方法的流程图;
图3为图1中数据库与可视化平台和app之间交互的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明。
参见图1至图3所示,本实施例公开了一种移动应用动态更改功能配置的建模方法,包括以下步骤:
创建JSON功能配置,针对不同用户类型的权限在monitor可视化平台进行JSON功能配置勾选来决定各用户类型的app的功能页面下的功能配置的展示或隐藏;通过后端API获取monitor可视化平台中的JSON功能配置信息并存入数据库,其中,功能配置信息的格式为JSON配置字符串的格式;
建立数据库的增、删、改、查webApi,通过webApi与JSON配置字符串建立配置关系并存入数据库,且app能够通过使用对应的webApi指定关系参数到数据库获取相对应的JSON配置字符串返回给app;
对app中的每个功能页面均设定一个页面名称,该页面名称用于作为索引获取JSON配置对象中当前功能页面下所有的功能配置;
在app中对每个功能页面下各个功能模块均定义一个功能标识,该些功能标识和页面下所有的功能配置对象中的索引一一对应;
根据登录的用户类型,app通过在项目中引入mixin(混入模式)的方式混入一个公共的配置方法来解析配置JSON参数以展示或隐藏该用户类型所对应的功能配置项。将JSON配置放到数据库进行存储管理,app通过具体的用户信息获取相对应的配置JSON字符串app只需要在页面进行切换时通过页面名称作为JSON对象的key直接筛选出当前页面的所有功能进行解析使用,可通过在monitor平台的功能勾选修改数据库中的配置JSON字符串,达到实时更新JSON配置的效果。每种用户类型具有功能配置的权限不一样,因此登录进去的标识的数量不同。Webapi指web前端用于应用可视化界面UI呈现部分,后端API用于前端获取功能配置信息API接口;Monitor可视化平台用于便捷操作及勾选当前用户功能配置信
在本实施例中,数据库采用MySql数据库。MySql数据库用于存储当前用户功能配置的对象(object)信息。
进一步,JSON对象结构以app的页面名称作为key,页面下所有功能配置的作为value,生成JSON配置字符串格式为:“页面名称”:“当前页面功能”(1:开启,0:关闭):{”页面1”:{”功能1”:1,”功能2”:0},”页面2”:{}…}。
进一步,所述app通过在项目中引入mixin(混入模式)的方式混入一个公共配置方法来解析配置JSON参数以展示或隐藏该用户类型所对应的功能配置项,具体步骤为:
通过调用后台接口webApi来针对数据库中存储的数据进行提取,存入app本地存储中;
app进入某个功能页面时触发公共配置方法,该公共配置方法通过获取本地存储JSON配置字符串后通过JSON.parse转换成可以使用的JSON对象;使用当前页面名称作为JSON对象的key相对应的来获取当前页面下所有的功能配置项,该功能配置项也是一个JSON对象;递归遍历当前页面下所有的功能配置项,由功能配置项(value)的值(1:开启,0:关闭)来决定app当前页面下的功能展示或隐藏。
在本实施例中,该公共配置方法为设置基础配置(setBaseConfig)。设置基础配置用于根据当前页面名称key获取作为对象(object)的下标来获取当前页面对应的功能页面对象(pageObject)参数,拿到参数后循环页面对象,根据当前循环下标key来查询当前页面中与循环下标key对应的标识,没有找到标识则跳过,如果在当前页面下找到与循环下标key对应的标识就使用当前循环value值(1:开启,0:关闭)来显示或隐藏此标识。每个页面进入时调用setBaseConfig方法即可。功能页面对象(pageObject)参数即JSON配置字符串。
图1至图3通过举例说明本发明的建模方法,通过设置用户类型1,2,3、申请首页、申请更多功能页面及功能配置项(包括有进程控制、自动泊车、蓝牙钥匙、发送到车、wifi设置和周边服务),根据用户类型不同的权限来设置各页面中功能配置项的显示或隐藏。
本发明的移动应用动态更改功能配置的建模方法,在不影响用户体验的前提下,让用户所使用到的应用功能和配置相关联;能够使用平台实时监控及动态更改当前用户的整个应用的功能,使应用更加灵活,更加贴近用户需求,能够解决功能上线后出现重大bug及不稳定的情况下紧急关闭入口模拟下线,达到实时更新JSON配置的效果;采取自动化操作,无需用户进行参与,由于是JSON配置字符串驱动,降低了适配难度,开发者只需要在可视化平台monitor上进行功能的勾选操作即可,不触及核心控制代码;功能开发好后新增用户类型后只需要针对当前新增用户类型进行功能勾选维护,而不需要针对新增的用户进行重复开发等繁琐的开发工作,以此解决了用户使用复杂度、效率偏低、不利于后期维护及实时更改配置文件及功能,以及解决了JSON配置文件较大时编译解析过程针对JSON配置文件进行递归遍历时会加大编译的时长。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (3)

1.一种移动应用动态更改功能配置的建模方法,其特征在于,包括以下步骤:
创建JSON功能配置,针对不同用户类型的权限在monitor可视化平台进行JSON功能配置勾选来决定各用户类型的app的功能页面下的功能配置的展示或隐藏;通过后端API获取monitor可视化平台中的JSON功能配置信息并存入数据库,其中,功能配置信息的格式为JSON配置字符串的格式;
建立数据库的增、删、改、查webApi,通过webApi与JSON配置字符串建立配置关系并存入数据库,且app能够通过使用对应的webApi指定关系参数到数据库获取相对应的JSON配置字符串返回给app;
对app中的每个功能页面均设定一个页面名称,该页面名称用于作为索引获取JSON配置对象中当前功能页面下所有的功能配置;
在app中对每个功能页面下各个功能模块均定义一个功能标识,该些功能标识和页面下所有的功能配置对象中的索引一一对应;
根据登录的用户类型,app通过在项目中引入mixin的方式混入一个公共配置方法来解析配置JSON参数以展示或隐藏该用户类型所对应的功能配置项,具体步骤为:
通过调用后台接口webApi来针对数据库中存储的数据进行提取,存入app本地存储中;
app进入某个功能页面时触发公共配置方法,该公共配置方法通过获取本地存储JSON配置字符串后通过JSON.parse转换成可以使用的JSON对象;
使用当前页面名称作为JSON对象的key相对应的来获取当前页面下所有的功能配置项,该功能配置项也是一个JSON对象;
递归遍历当前页面下所有的功能配置项,由具体功能配置项的值(1:开启,0:关闭)来决定app当前页面下的功能展示或隐藏。
2.根据权利要求1所述的移动应用动态更改功能配置的建模方法,其特征在于,JSON对象结构以app的页面名称作为key,页面下所有功能配置的作为value,生成JSON配置字符串格式为:“页面名称”:“当前页面功能”(1:开启,0:关闭):{”页面1”:{ ”功能1”:1,”功能2”:0},” 页面2”:{}…}。
3.根据权利要求1或2所述的移动应用动态更改功能配置的建模方法,数据库采用MySql数据库。
CN202010882600.0A 2020-08-28 2020-08-28 一种移动应用动态更改功能配置的建模方法 Active CN112035104B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010882600.0A CN112035104B (zh) 2020-08-28 2020-08-28 一种移动应用动态更改功能配置的建模方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010882600.0A CN112035104B (zh) 2020-08-28 2020-08-28 一种移动应用动态更改功能配置的建模方法

Publications (2)

Publication Number Publication Date
CN112035104A CN112035104A (zh) 2020-12-04
CN112035104B true CN112035104B (zh) 2024-03-22

Family

ID=73587328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010882600.0A Active CN112035104B (zh) 2020-08-28 2020-08-28 一种移动应用动态更改功能配置的建模方法

Country Status (1)

Country Link
CN (1) CN112035104B (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823872A (zh) * 2014-02-27 2014-05-28 北京金山网络科技有限公司 一种信息推送方法及装置
CN105549982A (zh) * 2016-01-14 2016-05-04 国网山东省电力公司物资公司 一种基于模型配置的自动化开发平台
CN105824787A (zh) * 2016-03-15 2016-08-03 江苏中威科技软件系统有限公司 一种html模板动态配置的控制方法及系统
CN105989146A (zh) * 2015-02-28 2016-10-05 阿里巴巴集团控股有限公司 对象展示方法及装置
CN106708480A (zh) * 2015-07-29 2017-05-24 腾讯科技(深圳)有限公司 管理平台实现方法和装置
CN107193545A (zh) * 2017-04-07 2017-09-22 广东省科技基础条件平台中心 一种面向构件的多语言协同开发装置、方法与系统
CN107729005A (zh) * 2017-10-12 2018-02-23 福建富士通信息软件有限公司 一种基于h5的可视化业务界面动态配置方法
CN109101428A (zh) * 2018-08-21 2018-12-28 宜人恒业科技发展(北京)有限公司 一种ui自动化测试系统
CN109918055A (zh) * 2019-01-28 2019-06-21 平安科技(深圳)有限公司 一种应用程序的生成方法及设备
CN110138818A (zh) * 2018-02-09 2019-08-16 北京京东尚科信息技术有限公司 传递参数的方法、网站应用、系统、装置以及服务后端
CN110619013A (zh) * 2019-09-10 2019-12-27 紫光云技术有限公司 一种基于Json对象进行可视化配置的方法
CN110704047A (zh) * 2019-09-28 2020-01-17 苏州创旅天下信息技术有限公司 一种动态可视化配置系统及基于该系统的运营管理方法
CN111124411A (zh) * 2019-12-31 2020-05-08 航天信息股份有限公司 一种基于动态页面对表格进行个性化设置的方法及系统
CN111324390A (zh) * 2020-02-20 2020-06-23 苏宁云计算有限公司 实现app内容可配置和实时更新的装置及方法
CN111460500A (zh) * 2020-03-31 2020-07-28 贵州电网有限责任公司 一种网络资源的权限管理方法

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103823872A (zh) * 2014-02-27 2014-05-28 北京金山网络科技有限公司 一种信息推送方法及装置
CN105989146A (zh) * 2015-02-28 2016-10-05 阿里巴巴集团控股有限公司 对象展示方法及装置
CN106708480A (zh) * 2015-07-29 2017-05-24 腾讯科技(深圳)有限公司 管理平台实现方法和装置
CN105549982A (zh) * 2016-01-14 2016-05-04 国网山东省电力公司物资公司 一种基于模型配置的自动化开发平台
CN105824787A (zh) * 2016-03-15 2016-08-03 江苏中威科技软件系统有限公司 一种html模板动态配置的控制方法及系统
CN107193545A (zh) * 2017-04-07 2017-09-22 广东省科技基础条件平台中心 一种面向构件的多语言协同开发装置、方法与系统
CN107729005A (zh) * 2017-10-12 2018-02-23 福建富士通信息软件有限公司 一种基于h5的可视化业务界面动态配置方法
CN110138818A (zh) * 2018-02-09 2019-08-16 北京京东尚科信息技术有限公司 传递参数的方法、网站应用、系统、装置以及服务后端
CN109101428A (zh) * 2018-08-21 2018-12-28 宜人恒业科技发展(北京)有限公司 一种ui自动化测试系统
CN109918055A (zh) * 2019-01-28 2019-06-21 平安科技(深圳)有限公司 一种应用程序的生成方法及设备
CN110619013A (zh) * 2019-09-10 2019-12-27 紫光云技术有限公司 一种基于Json对象进行可视化配置的方法
CN110704047A (zh) * 2019-09-28 2020-01-17 苏州创旅天下信息技术有限公司 一种动态可视化配置系统及基于该系统的运营管理方法
CN111124411A (zh) * 2019-12-31 2020-05-08 航天信息股份有限公司 一种基于动态页面对表格进行个性化设置的方法及系统
CN111324390A (zh) * 2020-02-20 2020-06-23 苏宁云计算有限公司 实现app内容可配置和实时更新的装置及方法
CN111460500A (zh) * 2020-03-31 2020-07-28 贵州电网有限责任公司 一种网络资源的权限管理方法

Also Published As

Publication number Publication date
CN112035104A (zh) 2020-12-04

Similar Documents

Publication Publication Date Title
CN106598574B (zh) 页面渲染的方法和装置
CN110825362A (zh) 低代码应用软件开发系统及方法
US8762963B2 (en) Translation of programming code
CN109857663B (zh) 关键字驱动与图像相似度结合的自动化测试平台
CN111026670B (zh) 测试用例的生成方法、测试用例的生成装置及存储介质
CN115640045B (zh) 基于领域驱动设计的低代码开发平台及业务系统创建方法
CN104199647A (zh) 一种基于ibm主机的可视化系统及实现方法
CN113741898A (zh) 表单生成方法、装置及设备
CN111880813B (zh) 实现安卓卡片ui的方法、存储介质
CN111309317A (zh) 一种实现数据可视化的代码自动化方法和装置
CN111144878B (zh) 指令生成方法与指令生成装置
CN112882930A (zh) 自动化测试方法、装置、存储介质及电子设备
CN104808982A (zh) 应用的功能模拟开发方法和装置
CN112035104B (zh) 一种移动应用动态更改功能配置的建模方法
CN117093316B (zh) 一种跨平台页面渲染系统、电子设备及存储介质
CN114564199A (zh) 一种生成使用页面的方法、装置、设备及可读存储介质
Falb et al. Fully automatic generation of web user interfaces for multiple devices from a high-level model based on communicative acts
CN107040818B (zh) 用于安卓电视的布局层级分析方法及系统
CN102193789A (zh) 一种实现可配置跳转链接的方法和设备
CN115629990B (zh) 业务测试方法、装置、电子设备及存储介质
CN113688134A (zh) 基于多维数据的可视化变量管理方法、系统及设备
CN112000315A (zh) 一种基于算子的自定义参数面板的自动生成方法
CN111797636B (zh) 离线语义解析方法及系统
JP7159027B2 (ja) ユーザーインタフェース提供装置、ユーザーインタフェース提供方法、プログラム及び組み込み機器
KR0133411B1 (ko) 이동통신기지국관리시스템에서의대화형명령어입력화면자동생성방법

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