CN111078326A - 一种功能模块的调用方法、装置及设备 - Google Patents
一种功能模块的调用方法、装置及设备 Download PDFInfo
- Publication number
- CN111078326A CN111078326A CN201911383920.5A CN201911383920A CN111078326A CN 111078326 A CN111078326 A CN 111078326A CN 201911383920 A CN201911383920 A CN 201911383920A CN 111078326 A CN111078326 A CN 111078326A
- Authority
- CN
- China
- Prior art keywords
- module
- calling
- menu
- function
- called
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000003745 diagnosis Methods 0.000 claims abstract description 61
- 230000006870 function Effects 0.000 claims description 119
- 230000008569 process Effects 0.000 claims description 31
- 230000002159 abnormal effect Effects 0.000 claims description 24
- 238000012423 maintenance Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 11
- 238000013461 design Methods 0.000 abstract description 8
- 238000001514 detection method Methods 0.000 description 24
- 230000008878 coupling Effects 0.000 description 8
- 238000010168 coupling process Methods 0.000 description 8
- 238000005859 coupling reaction Methods 0.000 description 8
- 238000002405 diagnostic procedure Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000002265 prevention Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- 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/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
Abstract
本申请公开了一种功能模块的调用方法,根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;判断当前模块是否为功能模块;如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。由此可见,本申请提供的诊断软件由多个相互独立的模块构成,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。多个互相独立的模块的设计扩展性好,更加便捷地对诊断软件进行更新和升级。此外,本申请所提供的一种功能模块的调用装置、设备及存储介质与上述方法对应。
Description
技术领域
本申请涉及车辆诊断技术领域,特别是涉及一种功能模块的调用方法、装置及设备。
背景技术
随着汽车行业的快速发展,车辆获取了广泛地应用。为确保车辆在使用过程中的安全性与可靠性,使用诊断软件对车辆进行诊断成为十分重要的步骤。
近年来,为了减少诊断软件中程序本身在资源上的使用,现有技术中的诊断软件采用了顺序编写程序的架构,也就是诊断软件中的功能模块和菜单模块混合编写在同一个程序中。对于诊断软件中不同功能模块之间的调用则利用编程语言中常见的选择语句来实现。
但是,由于现有技术中的将功能模块和菜单模块混合编写在同一个程序中,导致结构耦合性高;在调用错误或添加其它诊断功能等情况下,需要对诊断软件修改时,无法独立对其中的某个功能模块部分进行单独修改,造成扩展难度大,不便于对诊断软件进行更新和升级。
发明内容
本申请的目的是提供一种功能模块的调用方法、装置、设备及存储介质,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
为解决上述技术问题,本申请提供一种功能模块的调用方法,包括:
根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
判断所述当前模块是否为功能模块;
如果是,则调用所述功能模块以执行相应功能操作,并根据所述功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
如果否,则说明所述当前模块为菜单模块,调用所述菜单模块以为用户提供菜单信息。
优选地,所述根据所述功能模块中指示的调用入口信息以确定下一步要调用的最新模块具体为:
根据所述功能模块中预先配置的属性,获取所述功能模块指示的调用入口信息以确定下一步要调用的最新模块。
优选地,所述功能模块和所述菜单模块具体通过可扩展标记语言xml进行描述。
优选地,还包括:
当接收到启动信息,根据入口信息加载相应的启动模块以完成启动操作。
优选地,还包括:
根据用户在所述诊断界面的操作,判断是否接收到立即停止信息;
如果是,则退出当前调用的模块以停止当前操作。
优选地,还包括:
根据诊断结果,判断与预设结果是否一致;
如果否,则反馈异常信息以进行调用异常提示。
优选地,还包括:
根据预先存储的运维人员的联系方式,通知所述运维人员以对所述异常信息进行处理。
优选地,所述在多个相互独立的模块中确定出需要调用的当前模块之前,还包括:
读取预先存储的历史模块,并根据预设的目标特征对所述历史模块进行归类和拆分,以生成多个相互独立的模块;其中,不同所述模块中包含有不同的所述目标特征。
为解决上述技术问题,本申请还提供一种功能模块的调用装置,包括:
确定模块,用于根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
判断模块,用于判断所述当前模块是否为功能模块;如果是,则进入第一调用模块;如果否,则进入第二调用模块;
第一调用模块,用于调用所述功能模块以执行相应功能操作,并根据所述功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
第二调用模块,用于说明所述当前模块为菜单模块,调用所述菜单模块以为用户提供菜单信息。
优选地,还包括:
启动模块,用于当接收到启动信息,根据入口信息加载相应的启动模块以完成启动操作。
优选地,还包括:
退出模块,用于根据用户在所述诊断界面的操作,判断是否接收到立即停止信息;如果是,则退出当前调用的模块以停止当前操作。
优选地,还包括:
反馈模块,用于根据诊断结果,判断与预设结果是否一致;如果否,则反馈异常信息以进行调用异常提示。
通知模块,用于根据预先存储的运维人员的联系方式,通知所述运维人员以对所述异常信息进行处理。
优选地,还包括:
读取模块,用于读取预先存储的历史模块,并根据预设的目标特征对所述历史模块进行归类和拆分,以生成多个相互独立的模块;其中,不同所述模块中包含有不同的所述目标特征。
为解决上述技术问题,本申请还提供一种功能模块的调用设备,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述的功能模块的调用方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的功能模块的调用方法的步骤。
本申请所提供的一种功能模块的调用方法,包括:根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;判断当前模块是否为功能模块;如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。由此可见,本申请提供的诊断软件由多个相互独立的模块构成,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
此外,本申请所提供的一种功能模块的调用装置、设备及存储介质与上述方法对应,具有同样的有益效果。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种功能模块的调用方法的流程图;
图2为本申请实施例提供的另一种功能模块的调用方法的流程图;
图3为本申请实施例提供的一种功能模块的调用装置的结构图;
图4为本申请实施例提供的一种功能模块的调用设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种功能模块的调用方法、装置、设备及存储介质,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
需要说明的是,用户使用的诊断设备中安装有相应的诊断设备应用(APP)。当用户启动诊断设备应用时,则加载后台的诊断程序的入口节点,并进行初始化配置。用户通过操控APP中提供的内容,调用诊断软件中的各个模块以实现对车辆的诊断。本申请中提到的诊断设备可以为手机或者平板电脑或其它类型的电子设备,需要说明的是,诊断设备的硬件结构以及APP的相关内容可参见现有技术,本申请不再赘述。
本申请提供的功能模块的调用方法应用的诊断软件由多个相互独立的模块构成。需要说明的是,相互独立可理解为各个模块中均具有用于调用的调用入口信息,通过该调用入口信息可实现不同模块之间的调用操作;同时,各模块仅用于实现各自的逻辑,并不与其它模块存在相互支持的关系,不同模块之间的改动操作不会相互影响。
图1为本申请实施例提供的一种功能模块的调用方法的流程图;如图1所示,本申请实施例提供的一种功能模块的调用方法,包括步骤S101-步骤S104:
步骤S101:根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
在一个实施例中,APP为用户提供了诊断设备的诊断界面,用户对诊断界面中提供的内容进行点击、拖动等操作;或通过与诊断设备连接的外接设备,进行信息输入的操作,本申请实施例中对此不作限定。根据用户在诊断界面的操作,诊断设备可接收到相应的操作信息,并在多个相互独立的模块中确定出需要调用的当前模块。例如,用户在诊断界面的菜单中点击了查询车辆类型的选项,诊断设备则接收到查询车辆类型操作的信息,并在多个相互独立的模块中确定出需要调用的当前模块为用于查询车辆类型的功能模块。
在具体实施中,在多个相互独立的模块中确定出需要调用的当前模块之前,还包括:
读取预先存储的历史模块,并根据预设的目标特征对历史模块进行归类和拆分,以生成多个相互独立的模块;其中,不同模块中包含有不同的目标特征。
具体地,为生成多个相互独立的模块,可读取预先存储的历史模块。需要说明的是,历史模块可为现有技术中的用于实现诊断的软件模块,可理解为包含有功能模块和菜单模块的混合模块。
在一个实施例中,预设多个目标特征,该目标特征可为用于表示诊断功能的功能特征。例如,“读取故障码”特征或“清楚故障码”特征等,均可作为目标特征。本领域技术人员也可根据实际应用情况,例如应用的车型、使用的ECU和车具有的功能等不同情况,将其它类型的特征作为目标特征,本申请不作限定。根据预设的目标特征可对读取到的历史模块进行归类和拆分,从而生成多个相互独立的模块。例如,历史模块中对于发送机系统、仪表系统、车身系统的描述中均包含有“防盗”这一功能特征,则可将“防盗”作为目标特征,将历史模块中包含有防盗特征的归为相同类并进行拆分,以生成发动机防盗模块、仪表系统防盗模块和车身系统防盗模块。由于发动机防盗模块、仪表系统防盗模块和车身系统防盗模块中仍包含有共同的防盗特征,则对该三个模块再次进行拆分以生成相互独立的防盗模块、发动机调用模块、仪表系统调用模块及车身系统防盗模块,从而生成多个相互独立的模块;其中,不同模块中包含有不同的目标特征。本申请实施例对历史模块进行了归类和拆分,生成了相互独立的模块的同时,有效地缩减了诊断软件的存储数据量。
步骤S102:判断当前模块是否为功能模块;如果是,则进入步骤S103;如果否,则进入步骤S104;
步骤S103:调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
在具体实施中,判断确定的当前模块是否为功能模块时,可根据各模块预设的分类属性进行判断。例如,用户在诊断界面点击了菜单中的“查询”选项,由于该选项为菜单选项,对应的操作为展示出该菜单选项的下一级选项内容,则可在该模块中预设其分类属性为菜单模块;若用户在诊断界面电机了“开启防盗功能”选项,则需要执行相应的开启防盗功能操作,则可在该模块中预设其分类属性为功能模块。
在一个实施例中,判断出当前模块为功能模块后,可调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块。可以理解地,本申请提供的诊断软件由多个相互独立的模块构成,因此,实现一个诊断流程时,可能需要调用多个用于实现不同功能的功能模块,在执行时通过当前调用的功能模块中包含的调用入口信息确定该诊断流程下一步需要调用的功能模块,也可称为最新模块。例如,当接收到用于表示检测防盗功能的操作信息时,整个检测防盗功能的诊断流程包括检测发动机系统的防盗功能、检测仪表系统防盗功能和检测车身系统防盗功能几部分,则需要相应地调用发动机防盗检测模块、仪表防盗检测模块和车身防盗检测模块;在实际调用时,执行完发送机防盗检测模块后,根据该功能模块中指示的调用入口信息为仪表防盗检测信息,则相应地调用仪表防盗检测模块;同理,根据仪表防盗检测模块中指示的调用入口信息为车身防盗检测信息,相应地调用车身防盗检测模块;由于车身防盗检测模块为本诊断流程中调用的最后一个功能模块,则车身防盗检测模块中指示的调用入口信息可为反馈诊断结果模块,以向用户反馈诊断操作获得的诊断结果。
在一个实施例中,根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块具体为:
根据功能模块中预先配置的属性,获取功能模块指示的调用入口信息以确定下一步要调用的最新模块。
具体地,各个功能模块预先配置有param属性、function属性和destination属性;param属性信息用于指示该功能模块执行时所需要的参数;function属性为用于记录功能模块自身标识;destination属性中包含有调用入口信息。根据功能模块中预先配置的destination属性可获取功能模块指示的调用入口信息以确定下一步要调用的最新模块。
步骤S104:说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。
在一个实施例中,当前模块为菜单模块时,则可调用该菜单模块以为用户提供菜单信息。菜单模块中包含有destination属性和entrance属性,destination属性中包含有调用入口信息;entrance属性用于记录菜单模块自身标识,便于其它模块调用该菜单模块时根据记录的标识进行查找。
在具体实施中,功能模块和菜单模块具体通过可扩展标记语言xml进行描述。诊断软件中相互独立的各个模块均采用可扩展标记语言xml进行描述,并建立xml库。当需要添加新的模块时,则不会影响到别的模块,可扩展性强。本领域技术人员也可根据实际应用情况确定语言对各模块进行描述,本申请实施例不作限定。xml相对于程序的代码来说简单明了,不需要深入阅读和理解;xml可以实现热加载热释放,修改较为容易;并且,使诊断软件更容易模块化。由于xml结构简单,在进行批量修改的时候操作更为方便。
本申请所提供的一种功能模块的调用方法,包括:根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;判断当前模块是否为功能模块;如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。由此可见,本申请提供的诊断软件由多个相互独立的模块构成,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
图2为本申请实施例提供的另一种功能模块的调用方法的流程图;如图2所示,本申请提供的功能模块的调用方法,还包括步骤S201:
步骤S201:当接收到启动信息时,根据入口信息加载相应的启动模块以完成启动操作。
具体地,当用户打开诊断APP时,可确定为用户想要启动诊断软件,此刻将接收到用于启动诊断软件的启动信息。则根据对外入口的入口信息加载相应的启动模块以进行初始化配置,从而完成诊断软件的启动操作。
图2为本申请实施例提供的另一种功能模块的调用方法的流程图;如图2所示,本申请提供的功能模块的调用方法,还包括步骤S202-步骤S203:
步骤S202:根据用户在诊断界面的操作,判断是否接收到立即停止信息;如果是,则进行步骤S203;
步骤S203:退出当前调用的模块以停止当前操作。
具体地,在执行调用操作的过程中,用户可根据当前的情况随时控制诊断设备暂停操作。例如,诊断任务量较大导致诊断时间较长时,在诊断过程中用户因使用车辆或其它因素而需要停止诊断操作时,则可在诊断界面点击“停止诊断”选项。诊断设备接收到用于停止诊断的立即停止信息时,则退出当前调用的模块以停止当前操作。由此可见,本申请实施例通过判断是否接收到立即停止信息,以控制是否需要退出当前调用的模块。从而使能够及时响应用户的操作,能够更好地满足用户的当前需求。
图2为本申请实施例提供的另一种功能模块的调用方法的流程图;如图2所示,本申请提供的功能模块的调用方法,还包括步骤S204-步骤S205:
步骤S204:根据诊断结果,判断与预设结果是否一致;如果否,则进入步骤S205;
步骤S205:反馈异常信息以进行调用异常提示。
具体地,根据诊断过程结束后反馈的诊断结果,判断与预设结果是否一致。可以理解地,在执行完诊断过程后,则向用户诊断结束后的诊断结果。在一个实施例中,当诊断车辆的防盗功能时,可提前预设结果为防盗正常或防盗异常两种情况。当反馈的诊断结果与防盗正常或防盗异常不一致时,则可反馈异常信息以进行调用异常提示。例如,诊断结果为仪表故障,则于预设结果中防盗正常或防盗异常不一致,说明诊断过程中调用的功能模块错误,则可反馈异常信息以进行提示。从而便于运维人员及时发现问题,同时防止用户获取到错误的诊断结果。
图2为本申请实施例提供的另一种功能模块的调用方法的流程图;如图2所示,本申请提供的功能模块的调用方法,还包括步骤S206:
步骤S206:根据预先存储的运维人员的联系方式,通知运维人员以对异常信息进行处理。
具体地,对于出现调用异常的情况,可根据预先存储的运维人员的联系方式,通知运维人员处理异常信息。进一步地,运维人员的联系方式可为邮箱或电话号码等,本领域技术人员可根据实际应用情况进行设置,本申请实施例不作限定。通过预先存储的联系方式可及时通知运维人员对异常进行处理,避免由于运维人员不知道异常情况而导致诊断设备无法提供正常的服务。
本申请还提供一种功能模块的调用装置和功能模块的调用设备对应的实施例。需要说明的是,本申请从两个角度对实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图3为本申请实施例提供的一种功能模块的调用装置的结构图;如图3所示,本申请提供的一种功能模块的调用装置,包括:
确定模块10,用于根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
判断模块11,用于判断当前模块是否为功能模块;如果是,则进入第一调用模块;如果否,则进入第二调用模块;
第一调用模块12,用于调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
第二调用模块13,用于说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。
确定模块10根据用户在诊断界面的操作,诊断设备可接收到相应的操作信息,并在多个相互独立的模块中确定出需要调用的当前模块。例如,用户在诊断界面的菜单中点击了查询车辆类型的选项,诊断设备则接收到查询车辆类型操作的信息,并在多个相互独立的模块中确定出需要调用的当前模块为用于查询车辆类型的功能模块。
在具体实施中,判断模块11判断确定的当前模块是否为功能模块时,可根据各模块预设的分类属性进行判断。例如,用户在诊断界面点击了菜单中的“查询”选项,由于该选项为菜单选项,对应的操作为展示出该菜单选项的下一级选项内容,则可在该模块中预设其分类属性为菜单模块;若用户在诊断界面电机了“开启防盗功能”选项,则需要执行相应的开启防盗功能操作,则可在该模块中预设其分类属性为功能模块。
在一个实施例中,第一调用模块12可调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块。可以理解地,本申请提供的诊断软件由多个相互独立的模块构成,因此,实现一个诊断流程时,可能需要调用多个用于实现不同功能的功能模块,在执行时通过当前调用的功能模块中包含的调用入口信息确定该诊断流程下一步需要调用的功能模块,也可称为最新模块。例如,当接收到用于表示检测防盗功能的操作信息时,整个检测防盗功能的诊断流程包括检测发动机系统的防盗功能、检测仪表系统防盗功能和检测车身系统防盗功能几部分,则需要相应地调用发动机防盗检测模块、仪表防盗检测模块和车身防盗检测模块;在实际调用时,执行完发送机防盗检测模块后,根据该功能模块中指示的调用入口信息为仪表防盗检测信息,则相应地调用仪表防盗检测模块;同理,根据仪表防盗检测模块中指示的调用入口信息为车身防盗检测信息,相应地调用车身防盗检测模块;由于车身防盗检测模块为本诊断流程中调用的最后一个功能模块,则车身防盗检测模块中指示的调用入口信息可为反馈诊断结果模块,以向用户反馈诊断操作获得的诊断结果。
在一个实施例中,根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块具体为:
根据功能模块中预先配置的属性,获取功能模块指示的调用入口信息以确定下一步要调用的最新模块。
具体地,各个功能模块预先配置有param属性、function属性和destination属性;param属性信息用于指示该功能模块执行时所需要的参数;function属性为用于记录功能模块自身标识;destination属性中包含有调用入口信息。根据功能模块中预先配置的destination属性可获取功能模块指示的调用入口信息以确定下一步要调用的最新模块。
在一个实施例中,当前模块为菜单模块时,第二调用模块13可调用该菜单模块以为用户提供菜单信息。菜单模块中包含有destination属性和entrance属性,destination属性中包含有调用入口信息;entrance属性用于记录菜单模块自身标识,便于其它模块调用该菜单模块时根据记录的标识进行查找。
在具体实施中,功能模块和菜单模块具体通过可扩展标记语言xml进行描述。诊断软件中相互独立的各个模块均采用可扩展标记语言xml进行描述,并建立xml库。当需要添加新的模块时,则不会影响到别的模块,可扩展性强。本领域技术人员也可根据实际应用情况确定语言对各模块进行描述,本申请实施例不作限定。
本申请提供的一种功能模块的调用装置,还包括:
启动模块,用于当接收到启动信息,根据入口信息加载相应的启动模块以完成启动操作。
本申请提供的一种功能模块的调用装置,还包括:
退出模块,用于根据用户在诊断界面的操作,判断是否接收到立即停止信息;如果是,则退出当前调用的模块以停止当前操作。
本申请提供的一种功能模块的调用装置,还包括:
反馈模块,用于根据诊断结果,判断与预设结果是否一致;如果否,则反馈异常信息以进行调用异常提示。
本申请提供的一种功能模块的调用装置,还包括:
通知模块,用于根据预先存储的运维人员的联系方式,通知运维人员以对异常信息进行处理。
本申请提供的一种功能模块的调用装置,还包括:
读取模块,用于读取预先存储的历史模块,并根据预设的目标特征对历史模块进行归类和拆分,以生成多个相互独立的模块;其中,不同模块中包含有不同的目标特征。
本申请所提供的一种功能模块的调用装置,根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;判断当前模块是否为功能模块;如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。由此可见,本申请提供的诊断软件由多个相互独立的模块构成,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
图4为本申请实施例提供的一种功能模块的调用设备的结构图。如图4所示,本申请实施例提供一种功能模块的调用设备,包括存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述任一项的功能模块的调用方法的步骤。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的功能模块的调用方法中的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。
在一些实施例中,功能模块的调用设备还可包括有输入输出接口22、通信接口23、电源24以及通信总线25。
本领域技术人员可以理解,图4中示出的结构并不构成对功能模块的调用设备的限定,可以包括比图示更多或更少的组件。
由于设备部分的实施例与方法部分的实施例相互对应,因此设备部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。在本申请的一些实施例中,处理器和存储器可通过总线或其它方式连接。
本申请所提供的一种功能模块的调用设备,能够实现如下方法:根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;判断当前模块是否为功能模块;如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。由此可见,本申请提供的诊断软件由多个相互独立的模块构成,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
本申请还提供一种计算机可读存储介质,实现的步骤包括:
根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
判断当前模块是否为功能模块;
如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。
在一个实施例中,根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块具体为:
根据功能模块中预先配置的属性,获取功能模块指示的调用入口信息以确定下一步要调用的最新模块。
在一个实施例中,功能模块和菜单模块具体通过可扩展标记语言xml进行描述。
本申请还提供一种计算机可读存储介质,实现的步骤还包括:
当接收到启动信息,根据入口信息加载相应的启动模块以完成启动操作。
本申请还提供一种计算机可读存储介质,实现的步骤还包括:
根据用户在诊断界面的操作,判断是否接收到立即停止信息;
如果是,则退出当前调用的模块以停止当前操作。
本申请还提供一种计算机可读存储介质,实现的步骤还包括:
根据诊断结果,判断与预设结果是否一致;
如果否,则反馈异常信息以进行调用异常提示。
本申请还提供一种计算机可读存储介质,实现的步骤还包括:
根据预先存储的运维人员的联系方式,通知运维人员以对异常信息进行处理。
由于本部分的实施例与方法部分的实施例相互对应,因此本部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请所提供的计算机可读存储介质实现的步骤包括:根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;判断当前模块是否为功能模块;如果是,则调用功能模块以执行相应功能操作,并根据功能模块中指示的调用入口信息以确定下一步要调用的最新模块;如果否,则说明当前模块为菜单模块,调用菜单模块以为用户提供菜单信息。由此可见,本申请提供的诊断软件由多个相互独立的模块构成,通过判断当前模块是功能模块或菜单模块,以执行相应的调用操作。当在调用过程中出现异常时,则可对相应的被调用的模块进行修改以处理异常,无需对整个诊断软件进行修改。多个互相独立的模块的设计降低了诊断软件结构的耦合性;可单独对其中的某个模块进行修改,扩展性好,更加便捷地对诊断软件进行更新和升级。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请所提供的一种功能模块的调用方法、装置、设备及存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种功能模块的调用方法,其特征在于,包括:
根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
判断所述当前模块是否为功能模块;
如果是,则调用所述功能模块以执行相应功能操作,并根据所述功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
如果否,则说明所述当前模块为菜单模块,调用所述菜单模块以为用户提供菜单信息。
2.根据权利要求1所述的功能模块的调用方法,其特征在于,所述根据所述功能模块中指示的调用入口信息以确定下一步要调用的最新模块具体为:
根据所述功能模块中预先配置的属性,获取所述功能模块指示的调用入口信息以确定下一步要调用的最新模块。
3.根据权利要求1所述的功能模块的调用方法,其特征在于,所述功能模块和所述菜单模块具体通过可扩展标记语言xml进行描述。
4.根据权利要求1所述的功能模块的调用方法,其特征在于,还包括:
当接收到启动信息,根据入口信息加载相应的启动模块以完成启动操作。
5.根据权利要求1所述的功能模块的调用方法,其特征在于,还包括:
根据用户在所述诊断界面的操作,判断是否接收到立即停止信息;
如果是,则退出当前调用的模块以停止当前操作。
6.根据权利要求1所述的功能模块的调用方法,其特征在于,还包括:
根据诊断结果,判断与预设结果是否一致;
如果否,则反馈异常信息以进行调用异常提示。
7.根据权利要求6所述的功能模块的调用方法,其特征在于,还包括:
根据预先存储的运维人员的联系方式,通知所述运维人员以对所述异常信息进行处理。
8.根据权利要求1所述的功能模块的调用方法,其特征在于,所述在多个相互独立的模块中确定出需要调用的当前模块之前,还包括:
读取预先存储的历史模块,并根据预设的目标特征对所述历史模块进行归类和拆分,以生成多个相互独立的模块;其中,不同所述模块中包含有不同的所述目标特征。
9.一种功能模块的调用装置,其特征在于,包括:
确定模块,用于根据用户在诊断界面的操作,在多个相互独立的模块中确定出需要调用的当前模块;
判断模块,用于判断所述当前模块是否为功能模块;如果是,则进入第一调用模块;如果否,则进入第二调用模块;
第一调用模块,用于调用所述功能模块以执行相应功能操作,并根据所述功能模块中指示的调用入口信息以确定下一步要调用的最新模块;
第二调用模块,用于说明所述当前模块为菜单模块,调用所述菜单模块以为用户提供菜单信息。
10.一种功能模块的调用设备,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至8任一项所述的功能模块的调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911383920.5A CN111078326A (zh) | 2019-12-28 | 2019-12-28 | 一种功能模块的调用方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911383920.5A CN111078326A (zh) | 2019-12-28 | 2019-12-28 | 一种功能模块的调用方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111078326A true CN111078326A (zh) | 2020-04-28 |
Family
ID=70319161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911383920.5A Pending CN111078326A (zh) | 2019-12-28 | 2019-12-28 | 一种功能模块的调用方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111078326A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114629664A (zh) * | 2022-05-16 | 2022-06-14 | 深圳市星卡软件技术开发有限公司 | 一种基于诊断设备的app管控方法和装置 |
CN114995862A (zh) * | 2022-08-03 | 2022-09-02 | 深圳市星卡软件技术开发有限公司 | 诊断模块的调用方法、装置和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315604A (zh) * | 2008-06-30 | 2008-12-03 | 华为技术有限公司 | 软件定制模块的实现方法及系统 |
CN101886152A (zh) * | 2010-06-02 | 2010-11-17 | 河北省首钢迁安钢铁有限责任公司 | 高炉炉缸三维非稳态监测和异常诊断及维护系统 |
CN106126204A (zh) * | 2016-06-15 | 2016-11-16 | 中邮建技术有限公司 | 一种基于模块化设计的信息系统迭代式扩展开发方法 |
CN106502487A (zh) * | 2016-09-12 | 2017-03-15 | 努比亚技术有限公司 | 一种应用程序调用装置及其方法 |
US10212283B1 (en) * | 2015-10-08 | 2019-02-19 | Noble Systems Corporation | Live call debugging and monitoring tool for an interactive voice response unit |
-
2019
- 2019-12-28 CN CN201911383920.5A patent/CN111078326A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315604A (zh) * | 2008-06-30 | 2008-12-03 | 华为技术有限公司 | 软件定制模块的实现方法及系统 |
CN101886152A (zh) * | 2010-06-02 | 2010-11-17 | 河北省首钢迁安钢铁有限责任公司 | 高炉炉缸三维非稳态监测和异常诊断及维护系统 |
US10212283B1 (en) * | 2015-10-08 | 2019-02-19 | Noble Systems Corporation | Live call debugging and monitoring tool for an interactive voice response unit |
CN106126204A (zh) * | 2016-06-15 | 2016-11-16 | 中邮建技术有限公司 | 一种基于模块化设计的信息系统迭代式扩展开发方法 |
CN106502487A (zh) * | 2016-09-12 | 2017-03-15 | 努比亚技术有限公司 | 一种应用程序调用装置及其方法 |
Non-Patent Citations (1)
Title |
---|
史达: "《电子商务与网络经济(第二版)》", 东北财经大学出版社, pages: 45 - 46 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114629664A (zh) * | 2022-05-16 | 2022-06-14 | 深圳市星卡软件技术开发有限公司 | 一种基于诊断设备的app管控方法和装置 |
CN114995862A (zh) * | 2022-08-03 | 2022-09-02 | 深圳市星卡软件技术开发有限公司 | 诊断模块的调用方法、装置和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104375856A (zh) | 应用更新方法和装置 | |
CN108303268B (zh) | 汽车诊断功能的配置方法、装置和汽车诊断设备 | |
CN107193714B (zh) | 一种告警展示方法及装置 | |
CN111078326A (zh) | 一种功能模块的调用方法、装置及设备 | |
CN111475401A (zh) | 一种测试方法及相关设备 | |
CN110427213B (zh) | 一种智能配置软件的实现方法、装置、设备及存储介质 | |
CN113672306B (zh) | 服务器组件自检异常恢复方法、装置、系统及介质 | |
CN113626102A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN113821439A (zh) | 将函数注册到探测点的方法、装置、存储介质以及终端 | |
CN106201787A (zh) | 终端控制方法及装置 | |
CN112286559A (zh) | 一种车载智能终端的升级方法及装置 | |
CN109976790B (zh) | 应用更新方法、装置、终端及存储介质 | |
CN109840113B (zh) | 一种应用数据处理方法及其设备、存储介质、终端 | |
CN113553578B (zh) | 一种日志打印响应方法、装置、电子设备和存储介质 | |
CN111679649B (zh) | 车载终端启动方法、装置、终端设备及存储介质 | |
CN113760631A (zh) | 页面加载时长确定方法、装置、设备和存储介质 | |
CN110442387B (zh) | 一种车载系统的参数自适应方法、装置及汽车 | |
CN112558982A (zh) | 代码检测方法、装置及计算机设备 | |
CN112596816A (zh) | 一种表单处理方法、装置和电子设备 | |
CN114579388A (zh) | 车载系统状态监测方法、系统、存储介质及电子设备 | |
CN111782282B (zh) | 启动程序加载方法和装置、电子设备和存储介质 | |
CN109597756B (zh) | 一种信息修改方法及设备 | |
CN111367537B (zh) | 设备驱动的安装方法、装置、计算机设备及存储介质 | |
CN108241578A (zh) | 汽车电控单元软件兼容性检查方法及装置 | |
CN111257683B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200428 |