一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

功能控制方法、功能控制装置、存储介质与电子设备与流程

2022-02-20 07:29:42 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,尤其涉及一种功能控制方法、功能控制装置、计算机可读存储介质与电子设备。


背景技术:

2.随着终端设备的多样化发展,终端设备所能够提供的功能也越来越多,例如相机应用程序中可以提供闪光灯功能,以便于用户在光线条件不好的情况下进行拍摄;可以提供图像虚化的处理功能,以便于突出体现拍摄图像的关注区域;可以提供美颜模式或滤镜功能,以美化拍摄图像;还可以提供hdr(high-dynamic range,高动态范围图像)模式,以丰富拍摄图像的细节等。但是,上述功能之间往往存在逻辑互斥关系,某些功能不支持同时打开,例如为了避免闪光灯对成像效果的影响,闪光灯开启时,不能同时开启hdr模式;或者hdr模式开启时,不能同时开启闪光灯等。
3.因此,现有技术通常会通过逐级的判断流程,对功能之间的逻辑关系进行依次判断,以确定不同功能之间是否能够兼容。但是,随着设备功能的不断增加,判断流程也会随之冗长、复杂,往往会导致功能控制效率和准确性降低;另外,还会增加软件代码逻辑的维护成本。因此,如何简单、有效的对终端设备中的各种功能进行控制,是现有技术亟待解决的问题。


技术实现要素:

4.本公开提供了一种功能控制方法、功能控制装置、计算机可读存储介质与电子设备,进而至少在一定程度上改善现有技术中难以在功能繁多时,保持较高的功能控制的效率和准确性。
5.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
6.根据本公开的第一方面,提供一种功能控制方法,包括:接收针对目标功能的状态变更事件;在预先配置的功能关系库中,查找所述目标功能与所述目标功能的关联功能之间的关系;根据所述状态变更事件、所述目标功能与所述关联功能之间的关系,确定所述目标功能或所述关联功能的状态调整策略。
7.根据本公开的第二方面,提供一种功能控制装置,包括:事件接收模块,用于接收针对目标功能的状态变更事件;关系查找模块,用于在预先配置的功能关系库中,查找所述目标功能与所述目标功能的关联功能之间的关系;策略确定模块,用于根据所述状态变更事件、所述目标功能与所述关联功能之间的关系,确定所述目标功能或所述关联功能的状态调整策略。
8.根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面的功能控制方法及其可能的实现方式。
9.根据本公开的第四方面,提供一种电子设备,包括:处理器;存储器,用于存储所述
处理器的可执行指令。其中,所述处理器配置为经由执行所述可执行指令,来执行上述第一方面的功能控制方法及其可能的实现方式。
10.本公开的技术方案具有以下有益效果:
11.接收针对目标功能的状态变更事件;在预先配置的功能关系库中,查找目标功能与目标功能的关联功能之间的关系;根据状态变更事件、目标功能与关联功能之间的关系,确定目标功能或关联功能的状态调整策略。一方面,本示例性实施例提出一种新的功能控制方法,无需通过冗长的多层级逻辑判断流程,确定不同功能的状态调整策略,仅通过在预先配置的功能关系库中进行查找,即可以返回与目标功能相关联的所有关联功能的逻辑关系,根据该逻辑关系,对功能进行有效、快速的状态调整,调整过程简化了软件代码的复杂度,节省了大量逻辑判断的运算时间,且具有较高的准确性;另一方面,本示例性实施例可以将功能之间的关系转化为静态的功能关系库,在功能数量繁多的情况下,仍然可以基于功能关系库快速确定功能之间的逻辑关系,能够适应功能多样化和复杂化的发展趋势,应用于不同的终端设备中。
12.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
13.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
14.图1示出一种现有技术的功能控制方法的流程图;
15.图2示出本示例性实施方式中一种系统架构的示意图;
16.图3示出本示例性实施方式中一种电子设备的结构图;
17.图4示出本示例性实施方式中一种功能控制方法的流程图;
18.图5示出本示例性实施方式中一种功能控制方法的子流程图;
19.图6示出本示例性实施方式中一种功能控制方法的另一子流程图;
20.图7示出本示例性实施方式中另一种功能控制方法的流程图;
21.图8示出本示例性实施方式中一种功能控制装置的结构框图。
具体实施方式
22.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
23.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
24.现有技术中,以闪光灯、hdr模式以及美颜模式为例,对功能控制过程进行解释说明,如图1所示,功能控制方法可以包括以下步骤:
25.步骤s110,打开闪光灯;
26.步骤s120,判断闪光灯与hdr模式是否为互斥关系;
27.如果不是互斥关系,则执行步骤s130,保持hdr模式的开关不变;
28.如果为互斥关系,则执行步骤s140,判断hdr模式是否为打开状态;
29.如果hdr模式为打开状态,则执行步骤s150,关闭hdr模式的开关;
30.如果hdr模式为关闭状态,则继续执行步骤s160,判断闪光灯与美颜模式是否互斥;
31.如果不是互斥关系,则执行步骤s180,保持美颜模式的开关不变;
32.如果为互斥关系,则执行步骤s170,判断美颜模式是否为打开状态;
33.如果为打开状态,则执行步骤s190,关闭美颜模式的开关。
34.现有技术中,在对终端设备的功能进行控制时,需要对相关的所有功能进行遍历,来确定某一功能与其他功能是否存在逻辑互斥关系,由上述步骤可知,这种判断流程会随着功能数量的增加而急剧复杂,当存在大量需要进行逻辑判断的功能时,软件代码的逻辑维护成本就会升高,而且还会因为判断流程的复杂导致判断过程出现异常,影响最终对功能的控制结果。
35.鉴于上述问题,本公开的示例性实施方式提供一种功能控制方法。图2示出了本示例性实施方式运行环境的系统架构图。如图2所示,该系统架构200可以包括终端设备210和服务端220,两者之间通过网络形成通信交互。其中,终端设备210可以包括但不限于智能手机、平板电脑、游戏机、相机或可穿戴设备等;服务端220可以是提供互联网服务的后台服务器。
36.本公开实施方式所提供的功能控制方法可以直接由终端设备210执行,例如由终端设备210接收目标功能的状态变更事件,并查找目标功能与关联功能之间的关系,从而实现对功能进行状态调整;也可以由服务端220执行,例如由终端设备210接收目标功能的状态变更事件后,向服务端220发送关系查找请求,由服务端220执行目标功能与关联功能之间的关系,并将状态调整的指令返回至终端设备210,由终端设备210对功能进行状态调整等,本公开对此不做具体限定。
37.本公开的示例性实施方式提供一种用于实现功能控制方法的电子设备,其可以是图2中的终端设备210和服务端220。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行功能控制方法。
38.下面以图3中的移动终端300为例,对上述电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图3中的构造也能够应用于固定类型的设备。
39.如图3所示,移动终端300具体可以包括:处理器310、内部存储器321、外部存储器接口322、usb(universal serial bus,通用串行总线)接口330、充电管理模块340、电源管理模块341、电池342、天线1、天线2、移动通信模块350、无线通信模块360、音频模块370、扬声器371、受话器372、麦克风373、耳机接口374、传感器模块380、显示屏幕390、摄像模组391、指示器392、马达393、按键394以及sim(subscriber identification module,用户标识模块)卡接口395等。
40.处理器310可以包括一个或多个处理单元,例如:处理器310可以包括ap(application processor,应用处理器)、调制解调处理器、gpu(graphics processing unit,图形处理器)、isp(image signal processor,图像信号处理器)、控制器、编码器、解码器、dsp(digital signal processor,数字信号处理器)、基带处理器和/或npu(neural-network processing unit,神经网络处理器)等。编码器可以对图像或视频数据进行编码(即压缩);解码器可以对图像或视频的码流数据进行解码(即解压缩),以还原出图像或视频数据。
41.在一些实施方式中,处理器310可以包括一个或多个接口,通过不同的接口和移动终端300的其他部件形成连接。
42.内部存储器321可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器321可以包括易失性存储器、非易失性存储器等。处理器310通过运行存储在内部存储器321的指令和/或存储在设置于处理器中的存储器的指令,执行移动终端300的各种功能应用以及数据处理。
43.外部存储器接口322可以用于连接外部存储器,例如micro sd卡,实现扩展移动终端300的存储能力。外部存储器通过外部存储器接口322与处理器310通信,实现数据存储功能,例如存储音乐,视频等文件。
44.usb接口330是符合usb标准规范的接口,可以用于连接充电器为移动终端300充电,也可以连接耳机或其他电子设备。
45.充电管理模块340用于从充电器接收充电输入。充电管理模块340为电池342充电的同时,还可以通过电源管理模块341为设备供电;电源管理模块341还可以监测电池的状态。
46.移动终端300的无线通信功能可以通过天线1、天线2、移动通信模块350、无线通信模块360、调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。移动通信模块350可以提供应用在移动终端300上的包括2g/3g/4g/5g等无线通信的解决方案。无线通信模块360可以提供应用在移动终端300上的包括wlan(wireless local area networks,无线局域网)(如wi-fi(wireless fidelity,无线保真)网络)、bt(bluetooth,蓝牙)、gnss(global navigation satellite system,全球导航卫星系统)、fm(frequency modulation,调频)、nfc(near field communication,近距离无线通信技术)、ir(infrared,红外技术)等无线通信解决方案。
47.移动终端300可以通过gpu、显示屏幕390及ap等实现显示功能,显示用户界面。移动终端300可以通过isp、摄像模组391、编码器、解码器、gpu、显示屏幕390及ap等实现拍摄功能,还可以通过音频模块370、扬声器371、受话器372、麦克风373、耳机接口374及ap等实现音频功能。
48.传感器模块380可以包括深度传感器3801、压力传感器3802、陀螺仪传感器3803、气压传感器3804等,以实现不同的感应检测功能。
49.指示器392可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。马达393可以产生振动提示,也可以用于触摸振动反馈等。按键394包括开机键,音量键等。
50.移动终端300可以支持一个或多个sim卡接口395,用于连接sim卡,以实现通话以及数据通信等功能。
51.图4示出了功能控制方法的示例性流程,可以由上述终端设备310或服务端320执行,包括以下步骤s410至s430:
52.步骤s410,接收针对目标功能的状态变更事件。
53.其中,目标功能是指当前用户或系统需要进行操作或调整的应用程序中的功能,例如用户打开相机应用程序进行拍照时,需要打开闪光灯,则闪光灯即为目标功能;或者,用户在图像处理的应用程序中对图像进行虚化功能处理时,虚拟功能即为目标功能;再或者,用户在录音应用程序中进行录音时,麦克风功能即为目标功能等等。状态变更事件是指针对目标功能的状态发起的变更需求操作或者已经进行状态变更的状态事件,例如将闪光灯从关闭状态到打开状态的变更操作,将hdr模式从关闭状态到打开状态的变更操作,将人像模式从打开状态到关闭状态的变更操作等;或者闪光灯已经从关闭状态切换至打开状态等等。其中,进行状态变更的操作可以包括多种方式,例如用户可以通过点击功能按钮,触发变更目标功能的状态,也可以通过语音交互,触发变更目标功能的状态等。当终端接收到针对目标功能的状态变更事件后,根据实际的状态变更事件的属性,可以认为当前用户或系统具有希望变更目标功能状态的需求,或者目标功能状态已经变更。
54.步骤s420,在预先配置的功能关系库中,查找目标功能与目标功能的关联功能之间的关系。
55.其中,关联功能是指与目标功能具有关联关系的功能,例如在相机应用程序中,用户拍照时可以使用闪光灯、hdr模式、美颜模式、滤镜、背景虚化等多种功能,闪光灯为目标功能时,关联功能可以是hdr模式、美颜模式、滤镜、背景虚化等功能;hdr模式为目标功能时,关联功能可以是闪光灯、美颜模式、滤镜、背景虚化等功能。与目标功能的实现无关的其他功能则不属于关联功能,比如相机应用程序中的闪光灯,与影音应用程序中的变速播放功能无关,则变速播放不属于闪光灯的关联功能。关联功能可以与目标功能属于相同的应用程序,例如闪光灯与hdr均属于相机应用程序;关联功能也可以与目标功能属于不同的应用程序,例如相机应用程序中的美颜模式与其他图像处理应用程序中的滤镜功能等;关联功能还可以是硬件功能,例如视频应用程序与录音应用程序中均会使用到的麦克风功能,即属于终端本身的硬件功能等。
56.功能关系库可以是指包括不同功能之间逻辑关系的数据库,其可以是一种预先配置的功能关系文件,本示例性实施例可以通过表格的形式,记录每一种功能与其相关联的关联功能的逻辑关系,并基于该逻辑关系,生成功能关系库。其中,逻辑关系可以包括功能之间的互斥关系,例如闪光灯的功能与hdr模式的功能不能同时开启,属于互斥关系;或者兼容关系,例如美颜和滤镜的功能可以同时开启,属于非互斥关系或兼容关系;再或者是其他关系,例如开启某一功能的同时,另一功能也会伴随开启等等。
57.当系统接收到针对目标功能的状态变更事件后,可以在预先配置的功能关系库中,查找该目标功能与目标功能的关联功能之间的关系,例如接收到开启闪光灯的操作后,可以在功能关系库中,查找闪光灯与hdr模式、美颜模式、滤镜、背景虚化等功能的关系,确定与这些关联功能的逻辑关系。
58.在功能关系库中,目标功能与目标功能的关联功能之间的关系,可以通过编码的形式进行存储,例如通过二进制的编码的形式存储,当为互斥关系时,可以编码“1”,当为非互斥关系时,可以编码“0”等,编码形式不限于此,本公开对此不做具体限定。查找到的目标功能与目标功能的关联功能之间的关系也可以通过编码的形式返回,例如查找闪光灯与hdr模式、美颜模式的关系时,返回的编码包括“10”时表示,闪光灯与hdr模式互斥,与美颜模式不互斥等。其中,查找可以根据目标功能的标识进行查找,例如本示例性实施例可以对所有可查找的功能进行二进制编码,则可以通过查找目标功能的二进制编码,确定目标功能对应的与关联功能之间的关系。
59.步骤s430,根据状态变更事件、目标功能与关联功能之间的关系,确定目标功能或关联功能的状态调整策略。
60.本示例性实施例可以在接收到针对目标功能的状态变更事件后,通过查找目标功能与关联功能的关系,确定目标功能与关联功能的状态调整策略,进而执行功能状态的调整过程。本示例性实施例可以根据状态变更事件、目标功能与关联功能之间的关系,以及关联功能的当前状态,确定目标功能和所述关联功能的状态调整策略,其中,对于与目标功能的关系为非互斥关系的关联功能,可以根据实际需要或系统性能确定调整其状态或保持其状态不变;而对于与目标功能的关系为互斥关系的关联功能,状态调整策略具体可以包括,第一,当状态变更事件为触发想要改变目标功能的状态的事件时,比如用户点击开启闪光灯按钮的操作,关联功能的当前状态为无需调整,例如用户点击闪光灯开启按钮时,当前hdr模式的开关处于关闭状态时,则可以仅对目标功能进行调整,而无需调整关联功能的状态,例如只需打开闪光灯即可;第二,当状态变更事件为触发想要改变目标功能的状态的事件,而关联功能的当前状态为需要调整时,例如hdr模式的开关处于开启状态且空闲状态时,其中,空闲状态表示功能当前处于开关可调整状态,例如hdr模式虽然处于打开状态,但是当前未使用,或者在一段时间内未使用,再或者当前用户进行拍摄时可以无需使用hdr模式等等,则需要对目标功能和关联功能都进行状态调整,例如打开闪光灯,同时关闭hdr模式的开关;第三,当状态变更事件为目标功能的状态已经发生变更,例如用户已经开启了闪光灯的情况,此时当关联功能的当前状态为需要调整时,则可以仅对关联功能的状态进行调整,例如关闭hdr模式的开关;第四,当状态变更事件为触发改变目标功能的状态的事件时,但此时关联功能的当前状态为不能调整时,其中,不能调整是指关联功能处于正在运行或当前场景适配的自适应功能模式等非空闲状态,则可以确定不对目标功能和关联功能进行状态调整,例如用户根据需要已经开启hdr模式或正在使用hdr模式的情况下,点击开启闪光灯的按钮,则不打开闪光灯,也不关闭hdr模式,即保持当前的功能状态不变,在这种情况下,也可以根据实际需要向用户发送提示信息,表示当前无法进行功能状态的更新,或者确认用户的功能调整需求,是否确认进行功能状态的更新等等,具体的调整策略可以根据实际情况进行分析确定。
61.在一示例性实施例中,上述步骤s430可以包括:
62.当状态变更事件是启用目标功能时,根据目标功能与关联功能之间的关系,将与目标功能的关系为互斥的关联功能的状态调整为禁用,并启用目标功能。
63.其中,启用目标功能可以表示,目标功能的状态当前为关闭状态,用户或系统有开启目标功能的需求,但还没有启用,此时,可以根据目标功能与关联功能之间的关系,将与目标功能的关系为互斥的关联功能的状态调整为禁用,使其无法开启,并启用目标功能,例如在接收到打开闪光灯的操作后,禁用hdr模式,并在闪光灯开启的过程中,无法打开hdr模式,只有当接收到闪光灯关闭的状态变更事件后,可以根据该状态变更事件,重新调整关联功能的状态。
64.需要说明的是,在实际使用中,如果在启用目标功能后,用户有启用与目标功能关系互斥的关联功能的需求时,例如用户在打开闪光灯进行拍照时,点击hdr模式选项,想要打开hdr模式,终端可以向用户发送提示信息,以询问用户是否需要打开hdr模式,并关闭闪光灯;或者忽略用户的操作,仍然继续使用闪光灯;再或者提示用户当前无法打开hdr模式等等。
65.综上,本示例性实施方式中,接收针对目标功能的状态变更事件;在预先配置的功能关系库中,查找目标功能与目标功能的关联功能之间的关系;根据状态变更事件、目标功能与关联功能之间的关系,确定目标功能或关联功能的状态调整策略。一方面,本示例性实施例提出一种新的功能控制方法,无需通过冗长的多层级逻辑判断流程,确定不同功能的状态调整策略,仅通过在预先配置的功能关系库中进行查找,即可以返回与目标功能相关联的所有关联功能的逻辑关系,根据该逻辑关系,对功能进行有效、快速的状态调整,调整过程简化了软件代码的复杂度,节省了大量逻辑判断的运算时间,且具有较高的准确性;另一方面,本示例性实施例可以将功能之间的关系转化为静态的功能关系库,在功能数量繁多的情况下,仍然可以基于功能关系库快速确定功能之间的逻辑关系,能够适应功能多样化和复杂化的发展趋势,应用于不同的终端设备中。
66.在一示例性实施例中,上述目标功能与关联功能均为目标应用程序集内的功能;和/或,目标功能为目标应用程序集内的功能,关联功能为硬件模块的功能。
67.其中,目标应用程序集是指终端设备中的所有或部分应用程序的集合,目标功能可以是目标应用程序集内的任意功能,例如其可以是相机应用程序中的功能,也可以是录音应用程序中的功能等,而目标功能的关联功能可以是包括目标应用程序集内除目标功能以外的其他所有功能,具体的,其可以与目标功能属于相同的应用程序,例如均为相机中的功能,也可以属于不同的应用程序,例如目标功能为相机应用程序中的功能,而关联功能属于录音应用程序中的功能等。
68.此外,关联功能还可以是硬件模块的功能,例如在摄像应用程序中,麦克风功能属于录制视频功能的关联功能,在录音应用程序中,麦克风功能也属于录制音频功能的关联功能,其中,麦克风功能属于终端设备硬件模块的功能,而不是任一应用程序的功能。
69.在一示例性实施例中,如图5所示,上述功能关系库可以通过以下步骤建立:
70.步骤s510,对于目标应用程序集内的每个功能,根据每个功能与每个功能的关联功能之间的关系,生成每个功能对应的关系数据;
71.步骤s520,基于目标应用程序集内的每个功能的标识与每个功能对应的关系数据,建立目标应用程序集的功能关系库。
72.本示例性实施例可以以目标应用程序集内的每个功能为基准,根据每个功能与其关联功能之间的关系,生成功能与功能之间的关系数据,并基于每个功能的标识与每个功能对应的关系数据,建立针对目标应用程序集的功能关系库。其中,功能的标识可以是指反映功能的编码,比如,可以对目标应用程序集内的每个功能进行编码,例如功能a编码为“0000001”,功能b编码为“0000010”,功能c编码为“0000100”,功能d编码为“0001000”,进一步,可以根据每个功能的标识和对应的关系数据,建立目标应用程序集的功能关系库,该功能关系库可以包括多个关系子库,每个子库对应目标应用程序集中每个应用程序的关系数据;功能关系库也可以是根据目标应用程序集中所有应用程序的关系数据整合成的一个库等,功能关系库的形式本公开对此不做具体限定。
73.进一步的,上述关系数据可以包括关系数值串,该关系数值串可以是指能够表示关系数据的编码数据,则上述步骤s510可以包括:
74.根据每个功能与每个功能的关联功能之间是否互斥的关系,生成每个功能对应的关系数值串,关系数值串中的第一数值表示互斥关系,关系数值串中的第二数值表示非互斥关系。
75.其中,第一数值与第二数值均为编码值,根据不同的编码方式可以有不同的数值表示,例如本示例性实施例可以令第一数值为“1”,表示互斥关系,第二数值为“2”,表示非互斥关系,如兼容关系或其他关系等。关系数值串中的每个数值都可以表示功能与某一其他功能之间的关系数据。举例说明,如下表1所示,示出了功能e和功能f分别与其他关联功能是否互斥的关系表:
76.表1
[0077] 功能a功能b功能c功能d功能e0110功能f1001
[0078]
根据上表1中,功能e与其他功能a、功能b、功能c、功能d之间是否互斥的关系,可以生成功能e对应的关系数值串为“000110”,表示功能e与功能b、功能c均为互斥关系,而与功能a、功能d为非互斥关系;根据功能f与功能a、功能b、功能c、功能d之间是否互斥的关系,可以生成功能f对应的关系数值串为“001001”,表示功能f与功能a、功能d均为互斥关系,而与功能b、功能c为非互斥关系,其中,具体关系数值串的字符长度可以根据需要进行自定义设置,本公开对此不做具体限定。
[0079]
需要说明的是,当目标应用程序集共有n个功能时,可以设置每个功能的关系数值占用k个bit(位),例如上述令k=1,通过“1”和“0”表示互斥或非互斥的关系,则每个功能对应的关系数值串可以是k*n个bit,其中一个位置可以留下表示自己和自己的关系,或者k*(n-1)个bit等,本公开对此不做具体限定。
[0080]
根据生成的关系数值串即可以生成对应的功能关系库,通过对功能关系库中关系数值串的解析,即可以确定功能与其他功能之间的逻辑关系。
[0081]
此外,在本示例性实施例中,功能关系库中,除了可以包括上述功能之间的关系数据之外,还可以包括其他信息,例如当功能关系库为功能关系配置文件时,功能关系配置文件可以包括功能关系、配置文件信息、功能二进制位信息、以及功能关系信息中的一种或多种,其中配置文件信息、功能二进制位信息、以及功能关系信息可以通过以下示例性代码表
示:
[0082]
配置文件信息:
[0083]
version:3.2.1//表示该功能关系配置文件的版本号
[0084]
date:2021/09/20 11:20:30//表示功能关系配置文件生成的日期和时间
[0085]
source:tools v1.2.0//表示功能关系配置文件的来源,例如电脑端tools v1.2.0软件自动生成。
[0086]
功能二进制位信息:
[0087]
功能a:0000001//功能a用二进制第0位表示
[0088]
功能b:0000010//功能b用二进制第1位表示
[0089]
功能c:0000100//功能c用二进制第2位表示
[0090]
功能d:0001000//功能d用二进制第3位表示
[0091]
功能关系信息:
[0092]
互斥:1//互斥用二进制1表示
[0093]
不互斥:0//不互斥用二进制0表示
[0094]
在一示例性实施例中,如图6所示,上述步骤s510还可以包括以下步骤:
[0095]
步骤s610,获取功能需求文件,根据功能需求文件,确定目标应用程序集内每个功能与每个功能的关联功能的非结构化关系信息;
[0096]
步骤s620,将非结构化关系信息转换为结构化关系信息,并根据结构化关系信息生成每个功能对应的关系数据。
[0097]
为了提高功能关系库生成或维护的自动化,本示例性实施例可以通过获取功能需求文件,加载功能需求文件,并从功能需求文件中提取关系信息的方式,来生成每个功能对应的关系数据。
[0098]
功能需求文件是指每个项目在开发、维护或更新阶段存在的需求信息,其可以以列表的形式表示,例如下表2或表3:
[0099]
表2
[0100] 功能1功能2功能3功能4功能a互斥不互斥互斥不互斥功能b互斥互斥不互斥互斥
[0101]
表3
[0102] 功能1功能2功能3功能4功能a√
×

×
功能b√√
×

[0103]
通常,上述功能需求文件是通过非结构化信息的方式表示出功能与功能之间的逻辑关系,这里表2与表3仅为示意性表示,其他能够反映功能之间逻辑关系的表述均可以作为功能需求文件,其中,非结构化关系信息为计算机无法直接处理,贴近于用户语言理解的数据信息,例如上述“互斥”、“不互斥”、“√”、或者
“×”
用户可以直接理解,而计算机无法理解的信息,即为非结构化关系信息,当系统从功能需求文件中提取出非结构化关系信息后,需要将其转换为结构化关系信息,该结构化关系信息即为计算机能够处理的计算机语言信息,例如可以将上述关系转换为二进制的编码,来表示互斥与不互斥的关系,以将所有非结
构化关系信息进行统一的编码化处理,最后通过计算机能够处理的结构化关系信息生成每个功能对应的关系数据,进而建立功能关系库,例如根据二进制的关系数据生成二进制的配置文件,生成的配置文件还可以根据需要进行导出。
[0104]
在一示例性实施例中,上述功能控制方法还可以包括:
[0105]
将功能关系库存储至目标应用程序集在硬件抽象层中对应的分区内。
[0106]
考虑到在系统上,每个项目或平台都有独立的vendor分区,且功能之间的关系(如互斥关系)跟项目或平台相关,例如功能a与功能b在高通平台上是互斥的,但是在mtk(联发科)平台上是非互斥的,因此,本示例性实施例,可以将功能关系库(如功能关系配置文件)存储至目标应用程序集在hal(hardware abstraction layer,硬件抽象层)的vendor分区中,以实现一个项目或平台配置一个独立的功能关系库,多个项目或平台之间互不影响。
[0107]
图7示出了另一种功能控制方法的流程图,具体可以包括以下步骤:
[0108]
在应用程序层710,执行,
[0109]
步骤s711,接收针对目标功能的状态变更事件;
[0110]
步骤s712,从硬件抽象层720获取功能关系配置文件721;
[0111]
步骤s713,解析功能关系配置文件721;
[0112]
步骤s714,根据功能关系配置文件721,查找目标功能与关联功能之间的关系;
[0113]
步骤s715,根据状态变更事件、目标功能与关联功能之间的关系,确定目标功能或关联功能的状态调整策略。
[0114]
本公开的示例性实施方式还提供一种功能控制装置。如图8所示,该功能控制装置800可以包括:事件接收模块810,用于接收针对目标功能的状态变更事件;关系查找模块820,用于在预先配置的功能关系库中,查找目标功能与目标功能的关联功能之间的关系;策略确定模块830,用于根据状态变更事件、目标功能与关联功能之间的关系,确定目标功能或关联功能的状态调整策略。
[0115]
在一示例性实施例中,目标功能与关联功能均为目标应用程序集内的功能;和/或,目标功能为目标应用程序集内的功能,关联功能为硬件模块的功能。
[0116]
在一示例性实施例中,功能关系库通过以下模块建立:关系数据生成模块,用于对于目标应用程序集内的每个功能,根据每个功能与每个功能的关联功能之间的关系,生成每个功能对应的关系数据;功能关系库建立模块,用于基于目标应用程序集内的每个功能的标识与每个功能对应的关系数据,建立目标应用程序集的功能关系库。
[0117]
在一示例性实施例中,关系数据包括关系数值串;关系数据生成模块包括:关系数值串生成单元,用于根据每个功能与每个功能的关联功能之间是否互斥的关系,生成每个功能对应的关系数值串,关系数值串中的第一数值表示互斥关系,关系数值串中的第二数值表示非互斥关系。
[0118]
在一示例性实施例中,功能控制方法还可以包括:存储模块,用于将功能关系库存储至目标应用程序集在硬件抽象层中对应的分区内。
[0119]
在一示例性实施例中,关系数据生成模块包括:关系信息确定单元,用于获取功能需求文件,根据功能需求文件,确定目标应用程序集内每个功能与每个功能的关联功能的非结构化关系信息;关系数据生成单元,用于将非结构化关系信息转换为结构化关系信息,并根据结构化关系信息生成每个功能对应的关系数据。
[0120]
在一示例性实施例中,策略确定模块包括:状态调整单元,用于当状态变更事件是启用目标功能时,根据目标功能与关联功能之间的关系,将与目标功能的关系为互斥的关联功能的状态调整为禁用,并启用目标功能。
[0121]
上述装置中各部分的具体细节在方法部分实施方式中已经详细说明,因而不再赘述。
[0122]
本公开的示例性实施方式还提供了一种计算机可读存储介质,可以实现为程序产品的形式,包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤,例如可以执行图4、图5、图6或图7中任意一个或多个步骤。该程序产品可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0123]
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0124]
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0125]
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0126]
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0127]
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施方式。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技
术领域中的公知常识或惯用技术手段。说明书和实施方式仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
[0128]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献