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

一种参数更新方法、可读介质和电子设备与流程

2022-11-09 22:14:34 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,特别涉及一种参数更新方法、可读介质和电子设备。


背景技术:

2.对于终端设备安装的各个模块(包括但不限于应用程序以及系统服务等等)来说,模块会将需要更新的参数等从模块对应的代码中分离出来,形成文件并进行独立管理。这些参数的参数类型大致可以分为列表类、特性开关类和文件类。当参数需要变更时,开发人员可以在服务器上发布需要更新的参数包。终端设备安装的各个模块会定期连接服务器检查是否有需要更新的参数版本,如果有,则将参数包下载到终端设备并进行参数更新。因此,当遇到舆情时,终端上的模块可以通过与服务器连接的参数更新通道直接更新参数进行快速修复,不需要更新模块的版本。
3.然而,对于参数类型是特性开关类(wi-fi开关)和列表类(黑名单、白名单)的参数,终端设备安装的模块需要下载并解析参数包中的配置文件,获取参数对应的参数值,通过保存到本地数据库或赋值给模块的变量或转换成list、map等形式再赋值给模块的变量才能使用;对于文件类的参数,模块需要从终端设备用于存储参数的路径获取文件,把文件拷贝到模块对应的生效路径才可以使用。随着终端设备上的模块的数量越来越多,每个模块都各自执行参数更新,使得参数更新的过程效率较低且开销。


技术实现要素:

4.本技术的目的在于提供一种参数更新方法、可读介质和电子设备。
5.本技术的第一方面提供了一种参数更新方法,其特征在于,包括:电子设备接收到服务器发送的至少一个应用的参数更新数据;存储参数更新数据包含的参数与各应用的应用标识之间的对应关系;对应于参数更新数据包含的参数的类型为第一参数类型,采用第一更新方式,对参数对应的应用标识的应用进行更新;对应于参数更新数据包含的参数的类型为第二参数类型,采用第二更新方式,对参数对应的应用标识的应用进行更新。
6.即在本技术的实施例中,这里的电子设备可以是终端设备,例如:手机。这里的服务器可以是云化参数服务器。这里的应用可以是电子设备的各个模块,也就是,电子设备商安装的至少一个应用或者应用服务、系统服务。这里的参数更新数据可以是待更新参数的参数包或者搜包结果。这里的应用标识可以是待更新参数对应的模块标识(例如:模块名)、参数名以及参数版本号。这里的第一参数类型可以是特性开关类和/或列表类的参数,这里的第二参数类型可以是文件类对应的参数。在电子设备得到参数更新数据,可以通过参数的参数值与各应用的应用标识之间的对应关系存储参数的参数值。
7.通过本技术提供的参数更新方法,对于特性开关类和/或列表类的参数来说,电子设备可以控制参数对应的应用通过本地读取参数值的方式,直接使用待更新参数的参数值,例如:特性开关类的待更新参数的返回值及列表类的待更新参数的list结构,无需应用通过电子设备从服务器下载配置文件后自行解析配置文件;对于参数类型是文件类的待更
新参数来说,电子设备会将文件(二进制码流)落盘至安装路径(预设文件路)径作为本地文件,并从预设文件路径挂载到待更新参数对应的应用的预装路径(生效路径),文件可直接生效,使得应用可以无需将文件拷贝到应用对应的生效路径。上述参数更新方法,简化了电子设备上安装的各个应用实现参数更新的执行步骤,提高了参数更新的效率。
8.在上述第一方面的一种可能的实现中,电子设备接收到服务器发送的至少一个应用的参数更新数据,包括:电子设备通过预设方式向服务器发送至少一个应用的参数更新请求;响应于参数更新请求,服务器向电子设备发送至少一个应用的参数更新数据,其中,预设方式包括定期发送,手动发送中的至少一种。
9.即在本技术的实施例中,电子设备可以通过设置的云化参数kit执行定期云化参数搜包(执行定期的参数更新),也就是,电子设备的云化参数kit的搜包定时器定时触发搜包,即定时向服务器发送搜包请求,即,参数更新请求。这里的云化参数kit可以是电子设备设置的用于管理、维护电子设备的应用进行参数更新的服务。
10.在上述第一方面的一种可能的实现中,电子设备接收到服务器发送的至少一个应用的参数更新数据,包括:服务器向电子设备发送参数更新指令;响应于参数更新指令,电子设备向服务器发送至少一个应用的参数更新请求;响应于参数更新请求,服务器向电子设备发送至少一个应用的参数更新数据。
11.即在本技术的实施例中,服务器也可以主动触发电子设备进行云化参数升级(参数更新),也就是,服务器主动触发电子设备向服务器发送云化参数的搜包请求(参数更新请求)。
12.在上述第一方面的一种可能的实现中,存储参数更新数据包含的参数与各应用的应用标识之间的对应关系,包括:电子设备接收并解析参数更新数据,得到参数对应的应用标识和参数值,其中,应用标识包括参数的参数名,应用名称、参数版本号中的至少一种;建立应用标识与参数的参数值之间的对应关系;通过对应关系存储参数的参数值。
13.在上述第一方面的一种可能的实现中,通过对应关系存储参数的参数值,包括:电子设备创建参数对应的数据库;通过应用标识包括的参数名,应用名称、参数版本号中的至少一种与参数的参数值之间的对应关系,在数据库中存储参数的参数值。
14.即在本技术的实施例中,电子设备可以通过云化参数kit将解析参数更新数据后得到的云化参数(参数)存储至本地数据库,在云化参数(参数)是参数值的情况下,将参数值存储至本地数据库;在云化参数(参数)是二进制码流的情况下,将二进制码流通过文件的形式落盘至安装路径(预设文件路径)。
15.在上述第一方面的一种可能的实现中,对应于参数更新数据包含的参数的类型为第一参数类型,采用第一更新方式,对参数对应的应用标识的应用进行更新,包括:对应于参数更新数据包含的参数的类型为第一参数类型,电子设备根据参数与应用标识之间的对应关系,控制应用标识对应的应用读取已存储的参数,以对应用进行参数
更新。
16.即在本技术的实施例中,对于特性开关类、列表类的云化参数(参数)的参数更新来说,电子设备上安装的应用可以通过电子设备的云化参数kit提供的参数读取接口得到参数值完成参数更新,也就是,通过云化参数kit提供的参数读取接口访问本地数据库得到参数值。
17.在上述第一方面的一种可能的实现中,对应于参数更新数据包含的参数的类型为第二参数类型,采用第二更新方式,对参数对应的应用标识的应用进行更新,包括:对应于参数更新数据包含的参数的类型为第二参数类型,电子设备根据参数与应用标识之间的对应关系,将已存储的参数保存至第一路径;连接第一路径与应用标识对应的应用的第二路径;控制应用标识所对应的应用通过第二路径加载第一路径中的参数,以对应用进行参数更新。
18.即在本技术的实施例中,对于文件类的云化参数的参数更新来说,电子设备上安装的应用可以直接通过第二路径读取第一路径下的(参数)文件完成参数更新,也就是,将参数(参数)文件从第一路径挂载值第二路径,使得应用可以直接通过第二路径读取(参数)文件。
19.在上述第一方面的一种可能的实现中,第一路径包括电子设备的预设文件路径,第二路径包括应用的生效路径。
20.在上述第一方面的一种可能的实现中,第一参数类型包括特性开关类和、或列表类中的至少一种,第二参数类型包括文件类。
21.本技术的第二方面提供了一种可读介质,可读介质上存储有指令,该指令在电子设备上执行时使电子设备执行上述第一方面的参数更新方法。
22.本技术的第三方面提供了一种电子设备,包括存储器,用于存储由电子设备的一个或多个处理器执行的指令,以及处理器,是电子设备的处理器之一,用于执行上述第一方面的参数更新方法。
附图说明
23.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1根据本技术的实施例示出了一种参数更新方法的架构示意图;图2根据本技术实施例示出了云侧与端侧的交互示意图;图3根据本技术的实施例示出了一种云侧与端侧的交互流程示意图;图4根据本技术的实施例示出了端侧各模块的交互示意图;图5根据本技术的实施例示出了一种参数更新用户提示界面示意图;图6根据本技术的实施例示出了ux流程示意图;图7根据本技术的实施例示出了一种参数更新用户界面示意图;图8根据本技术的实施例示出了手机的处理流程示意图;
图9a根据本技术的实施例示出了无需更新的场景下手机与服务器的交互示意图;图9b根据本技术的实施例示出了需要更新的场景下手机与服务器的交互示意图;图10根据本技术的实施例示出了一种终端设备的结构示意图;图11根据本技术的实施例示出了一种终端设备的软件系统架构示意框图。
具体实施方式
25.本技术的说明性实施例包括但不限于一种参数更新方法、可读介质和电子设备。
26.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例中的技术方案进行清楚、详尽的描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
27.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征,在本技术实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
28.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本技术所描述的实施例可以与其它实施例结合。
29.在介绍本技术实施例涉及的技术方案之前,先对部分本技术实施例的应用场景进行介绍。
30.可以理解,从代码中分离出来形成文件并进行独立管理的待更新参数大致可以分为列表类、特性开关类和文件类三种形式的参数。
31.表1示出了列表类参数变更涉及的模块和所应用场景的场景特征。
32.表1
参数形式涉及模块场景特征列表(黑名单,白名单,列表)例如:蓝牙bt业务(控制蓝牙的兼容列表)快速性、强制性以及不确定性并且用户不感知。
从表1可以看出,黑名单、白名单和列表都属于列表类参数。列表类参数的更新具有快速性、强制性以及不确定性并且用户不感知参数更新。这里的不确定性可以指使用列表类参数的模块一般是第三方应用,列表类参数的更新需要依赖于第三方应用的提供商,无法准确估计第三方应用的提供商更新列表类参数的时间点。这里的快速性可以指一旦发布了列表类参数的更新,需要在较短的时间段内(例如:4小时内),使用该列表类参数的模块需要完成更新。强制性可以指会造成模块产生运行问题或者安全问题的列表类参数,会强制模块进行更新。
33.表2示出了特性开关类参数变更涉及的模块和所应用场景的场景特征。
34.表2参数形式涉及模块场景特征特性开关wifi配置(关闭特性中功能)快速性和强制性,并且用户不感知
从表2可以看出,特性开关类参数的更新可以与列表类参数的更新一样具有快速性和强制性,并且用户不感知参数更新。
35.表3示出了文件类参数变更涉及的模块和所应用场景的场景特征。
36.表3参数形式涉及模块场景特征文件例如:cpu配置配置复杂,参数具有相关性,不强制更新从表3可以看出,文件类参数的更新的配置复杂、参数与参数之间具有相关性;参数模块大多为第三方应用的内容,不可更改;部分涉及保密的参数例如芯片平台的调优参数,需要将文件加密后存储在终端设备;具有快速性;涉及性能调优的参数不强制更新,也就是说,用户可以选择是否进行参数更新,即性能调优。
37.当前,终端设备上的模块对应的参数的更新生效方式主要可以分为以下四类:将待更新参数放入本地数据库后,对应的模块访问数据库读取参数;解析包含待更新参数的更新文件,将解析得到的参数对应的参数值赋值给模块的变量;业务启动时直接读取更新文件;对应的模块接收到参数更新的指令后,将更新文件复制模块对应的生效路径(预装路径)。如下表4所示,表4示出了当前终端设备的参数生效方式。
38.表4
生效方式详细内容场景本地数据库参数升级后,将参数放入本地数据库。平行世界应用配置变量参数升级后,解析更新文件的内容,将参数值赋给变量。蓝牙bt业务使用更新文件业务启动时读取更新文件。gt优化复制更新文件到固定路径参数升级后,发送指令给对应业务,将更新文件复制到预装路径。cpu配置
可以看出,以上描述的终端设备上的模块对应的参数的更新生效方式,往往并不能够在终端设备获取到待更新参数的参数包的时候直接使用待更新参数,使得参数更新生效的过程的步骤繁琐并且效率比较低。
39.为了解决上述问题,本技术提供了一种参数更新方法,该方法包括:终端设备通过定时触发或手动触发的方式向服务器发送参数更新请求,响应于参数更新请求,服务器统一地返回终端设备上的各个模块对应的新版本的待更新参数,终端设备确定返回的待更新参数的参数标识,并通过参数标识与待更新参数之间的对应关系保存待更新参数,这里的参数标识可以包括待更新参数对应的模块标识(例如:模块名)、参数名以及参数版本号,通过参数标识可以实现唯一确定待更新参数。对于不同参数类型的待更新参数,采取不同的参数更新方法。例如,由于特性开关类和/或列表类(参数值)的待更新参数,需要经过下载并解析参数包中的配置文件,获取并保存参数对应的参数值,转换参数形式等过程才能完成参数更新,在终端设备上的模块的数量较多的情况下,故上述待更新参数的更新方式的效率较低,因此,对于返回的待更新参数的参数类型是特性开关类和/或列表类(参数值),则终端设备可以保存待更新参数的参数标识与参数值之间的对应关系;终端设备可以根据保存的待更新参数对应的参数标识通知相应的模块直接读取并使用待更新参数。
40.而文件类(二进制码流)的待更新参数,需要经过下载并保存文件,从终端设备存储参数的路径获取文件,把文件拷贝到模块对应的生效路径才可以使用,因此,若返回的待更新参数的参数类型是文件类(二进制码流),则终端设备除了保存待更新参数的参数标识与文件名之间的对应关系,还会将文件保存到预设文件路径(将二进制码流落盘为终端设
备的本地文件),并将文件从预设文件路径挂载到模块对应的生效路径,也就是连接到待更新参数的参数标识对应的模块的生效路径,终端设备可以根据保存的待更新参数对应的参数标识通知相应的模块根据保存的文件名直接从生效路径读取文件,进而完成对终端设备上安装的模块的参数更新。
41.通过本技术实施例提供的参数更新方法,对于参数类型是特性开关类和/或列表类的待更新参数来说,可以由待更新参数对应的模块通过本地读取参数值的方式,直接使用待更新参数的参数值,例如:特性开关类的待更新参数的返回值及列表类的待更新参数的list结构,无需模块通过终端设备从服务器下载配置文件后自行解析配置文件;对于参数类型是文件类的待更新参数来说,终端设备会将文件(二进制码流)落盘至预设文件路径作为本地文件,并从预设文件路径挂载到待更新参数对应的模块的生效路径,文件可直接生效,使得模块可以无需将文件拷贝到模块对应的生效路径。上述参数更新方法,简化了终端设备上安装的各个模块实现参数更新的执行步骤,提高了参数更新的效率。
42.本技术提出的参数更新方法可以应用于终端设备和/或服务器中,终端设备可以包括但不限于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本、个人数字助理(personal digital assistant,pda)或专门的照相机(例如单反相机、卡片式相机)等电子设备,本发明实施例对终端设备的具体类型不作任何限制。
43.为使本技术技术方案和优点更加清楚,下面将结合附图对本技术实施例中的技术方案进行清楚、详尽的描述。
44.图1根据本技术的实施例示出了一种参数更新方法的架构示意图。
45.如图1所示,示例性地,终端设备可以称为端侧,服务器可以称为云侧,待更新参数可以称为云化参数,在云侧设置云化参数ota(over-the-air technology,空中下载技术)服务器,用于与端侧(终端设备)之间进行交互,当有新版本的待更新参数时,向端侧发送待更新参数,包括:参数值和/或二进制码流;在端侧设置云化参数组件工具(kit),用于向云侧发送云化参数更新请求,以及接收待更新的云化参数。
46.在云侧:模块开发人员、模块的服务提供商可以通过元数据的方式配置适用于终端设备的各个模块的待更新参数(云化参数),将云化参数发布并传至云化参数服务器,这里的元数据用于描述云化参数包括的资源、信息以及数据的结构数据。在端侧:云化参数kit向云化参数服务器发送参数更新请求并接受更新的云化参数,保存返回的云化参数对应的参数值至本地数据库,将二进制码流落盘到终端设备的安装路径(预设文件路径)并挂载至模块的预装路径(生效路径);云化参数kit根据云化参数对应的模块标识,通知模块标识对应的模块(业务模块);响应于云化参数kit的指令,模块可以直接读取预装路径(生效路径)下的文件或向云化参数kit发送获取云化参数的参数值请求,通过云化参数kit获取已保存的云化参数的参数值,完成模块的参数更新。
47.在一些实施例中,上述终端设备的预装路径和安装路径的名称可以参考表5,表5示出了预装路径和安装路径的名称示例。
48.表5安装路径预装路径
/数据/配置/系统/安装路径一/系统/安装路径一/数据/配置/系统/安装路径二/系统/安装路径二图2根据本技术实施例示出了云侧与端侧的交互示意图。
49.具体地,如图2所示,在云侧:云化参数服务器可以通过元数据的方式进行参数配置,也就是对云化参数进行配置,将配置完成的保存于发布平台,发布平台可以连接参数配置中心,这里的参数配置中心可以是云化参数服务器,用于与端侧(终端设备)的云化参数kit进行交互:接收云化参数kit发送的云化参数的搜包请求以及响应于搜包请求返回搜包结果至云化参数kit。这里的搜包请求可以包括端侧上安装的各个模块的参数更新请求,这里的搜包结果可以包括云侧的参数配置中心根据参数更新请求从发布平台得到的各个模块对应的云化参数。
50.在一些实施例中,云侧还可以设置有wiseroper以及推送服务器(push server),wiseroper用于向推送服务器发送指令,该指令用于主动触发端侧云化参数升级,也就是触发端侧主动向云侧发送云化参数的搜包请求。这里的推送服务器可以与端侧的push sdk(push software development kit,推送软件开发工具,也称推送接收端)交互,推送服务器可以向push sdk发送进行云化参数的搜包的指令,使得push sdk可以向端侧的云化参数kit发送触发端侧进行云化参数搜包的指令。
51.在端侧:云化参数kit用于与云侧的参数配置中心进行交互,云化参数kit可以通过至少两种方式向云侧的参数配置中心发送云化参数的搜包请求,一种是执行定期云化参数搜包,也就是,云化参数kit能够根据预设搜包周期向云侧的参数配置中心发送云化参数的搜包请求;一种是在push sdk接收到云侧的推送服务器发送的主动触发端侧云化参数升级的指令后,push sdk向云化参数kit发送触发端侧进行云化参数搜包的指令,响应于该指令,云化参数kit向云侧的参数配置中心发送云化参数的搜包请求。示例性地,云化参数kit接收云侧的参数配置中心返回的搜包结果,通过参数项插件通知模块进行参数更新。这里的参数项插件用于模块向云化参数kit注册接收参数变更的指令。
52.为了更好地理解本技术提出的参数更新方法,下面以端侧为手机10,云侧为服务器20,场景为手机10的模块进行参数更新为例对本技术的一些技术方案进行详细介绍。
53.图3根据本技术的实施例示出了一种手机10与服务器20的交互流程示意图。具体地,如图3所示,该方法包括但不限于以下步骤。
54.s301:服务器20配置云化参数。
55.示例性地,服务器20通过元数据的方式对云化参数进行配置。可以理解,模块开发人员、模块的服务提供商可以通过元数据的方式在服务器20配置各个模块对应的云化参数。元数据的方式可以是,通过特性开关类、列表类、文件的格式对云化参数进行配置,一个模块可以包括一个或者多个云化参数,每一个云化参数可以通过模块标识和参数名确定,特性开关类、列表类的云化参数还可以包括参数值,文件可以包括文件名。
56.s302:服务器20发布云化参数。
57.示例性地,服务器20可以通过发布平台保存配置完成的云化参数,例如:通过文件或者数据库的形式在发布平台保存配置完成的云化参数。
58.s303:手机10向服务器20发送云化参数的搜包请求。
59.示例性地,手机10可以通过云化参数kit定期向服务器20的参数配置中心发送云
化参数的搜包请求,这里的搜包请求中可以包括手机10上安装的至少一个模块的列表,即,模块配置列表,也就是手机10上安装的至少一个应用或者应用服务、系统服务的列表。搜包请求中还可以包括手机10的开发模型,操作系统的版本,设备标识等等信息。
60.在一些实施例中,手机10的云化参数kit可以执行定期云化参数搜包,也就是,手机10的云化参数kit的搜包定时器定时触发搜包,即定时向服务器20的参数配置中心发送搜包请求。可以理解,搜包定时器可以设置为,例如:每隔24小时执行一次的定时器。在另一些实施例中,搜包定时器也可以设置为每隔12小时执行一次定时器,本技术对此不做限制。
61.示例性地,服务器20也可以主动触发手机10进行云化参数升级,也就是,服务器20主动触发手机10向服务器20发送云化参数的搜包请求。在一些实施例中,服务器20的wiseroper向推送服务器(push server)发送触发手机10云化参数升级的指令,服务器20的推送服务器接收到wiseroper发送的指令后,向手机10的push sdk发送云化参数的搜包的指令,以触发手机10进行云化参数的搜包。
62.示例性地,手机10的push sdk在接收到服务器20的推送服务器发送的云化参数的搜包的指令后,向手机10的云化参数kit发送进行云化参数搜包的指令,手机10的云化参数kit向服务器20的参数配置中心发送云化参数的搜包请求。
63.示例性地,在一些实施例中,例如,一种请求消息结构可以是:{"basicinfo":{"devmodel":"model-xx.xx","osversion":"osxx.xx",

"networktype":"2","deviceid":"xxxxxxxxx"}"moduleconfiglist":{"advancedmoduleconfig":"xx.xxx.xxx","modulewindow":"xx.xxx.xxx"}}示例性地,请求消息结构中的“basicinfo”为基本信息,“basicinfo”可以包括如下属性或者参数:“devmodel”为开发模型,“osversion”为操作系统的版本,“networktype”为网络类型,“deviceid”为设备标识,“moduleconfiglist”为模块配置列表,“advancedmoduleconfig”和“modulewindow”用于确定模块云化参数更新的版本。
64.可以理解,本技术实施例的参数更新方法中的搜包请求对应的请求消息结构可以包括基本信息和模块配置列表,结构更加简洁。
65.s304:服务器20向手机10返回搜包结果。
66.服务器20的参数配置中心响应手机10的云化参数kit发送的搜包请求后进行搜包,并向手机10的云化参数kit返回搜包结果。
67.示例性地,在一些实施例中,返回消息结构例如可以是:
{"duration":1440,"moduleconfigmap":{"advancedmoduleconfig":{"module_update_enable":"true","module_list_name":["com.xxxxx.app","com.xxxxx.app"]}}}示例性地,返回消息结构中,“duration”为期间,“moduleconfigmap”为模块配置列表,“advancedmoduleconfig”为模块云化参数更新的版本,“module_update_enable”为开启/关闭云化参数更新,“module_list_name”为列表名称。
[0068]
可以理解,本技术提出的参数更新方法中返回搜包结果时返回期间和模块配置列表,不包含下载地址,而是直接返回参数值,结构更加简洁。
[0069]
s305:手机10根据搜包结果设置云化参数。
[0070]
示例性地,手机10的云化参数kit接收到服务器20的参数配置中心返回的搜包结果后,保存搜包结果中包含的云化参数。
[0071]
在一些实施例中,手机10的云化参数kit可以将云化参数存储至本地数据库,在云化参数是参数值的情况下,将参数值存储至本地数据库;在云化参数是二进制码流的情况下,将二进制码流通过文件的形式落盘至安装路径(预设文件路径)并挂载至模块的预装路径(生效路径)。
[0072]
示例性地,存储云化参数的本地数据库可以存储在手机10的存储器单独路径,例如可以是:/data/db/module_config.db。
[0073]
可以理解,手机10可以将本地数据库的数据库名称设置为“module_config.db”,特性开关类数据表名称设置为“switch_config”,列表类数据表名称设置为“list_config”,文件类数据表名称设置为“file_config”。参考表6、表7和表8,表6示出了特性开关类数据表的结构,表7示出了列表类数据表的结构,表8示出了文件类数据表的结构。
[0074]
表6字段含义类型长度备注module模块名varchar32第一主键parameter参数名varchar32第二主键value参数值booleantrue/false version参数版本号varchar16 从表6可以看出,特性开关类数据表中模块名和参数名都是varchar型,长度为32;参数值是boolean型,数据值为true或false;参数版本号是varchar型,长度为16。
[0075]
表7
字段含义类型长度备注module模块名varchar32第一主键parameter参数名varchar32第二主键value参数值varchar
ꢀꢀ
version参数版本号varchar16 从表7可以看出,列表类数据表中模块名和参数名都是varchar型,长度为32;参数值是varchar型;参数版本号是varchar型,长度为16。
[0076]
表8字段含义类型长度备注module模块名varchar50第一主键parameter参数名varchar50第二主键value文件名varchar16 version参数版本号varchar16 从表8可以看出,文件类数据表中模块名和参数名都是varchar型,长度为50;文件名和参数版本号也都是varchar型,长度为16。也就是说,对于搜包结果中的特性开关类、列表类的云化参数来说,手机10的云化参数kit可以通过参数标识与云化参数之间的对应关系保存云化参数,也就是,通过模块名加上参数名唯一确定云化参数的参数值。对于搜包结果中的文件类的云化参数来说,手机10的云化参数kit除了模块名加上参数名唯一确定云化参数的文件名,还可以将云化参数对应的二进制码流落盘至手机10的安装路径(预设文件路径)并挂载至模块的预装路径(生效路径)。
[0077]
s306:手机10通知模块完成云化参数的参数更新。
[0078]
示例性地,手机10完成本地数据库的更新和/或文件的挂载后,向有参数更新的对应模块发送参数更新的指令,也就是,向与手机10的云化参数kit注册了接收参数变更的模块发送参数更新的指令,即,通过从搜包结果中得到云化参数的模块名,向模块名对应的模块发送参数更新的指令。手机10上安装的模块接收到参数更新的指令后,响应于接收到的指令,进行相应的更新参数的操作,完成云化参数的参数更新。
[0079]
示例性地,在一些实施例中,注册了接收参数变更的模块例如可以是:《xml version="1.10.22.100" encoding="utf-8"》《config》《switch name="module_update_enable" value="true"/》《blockklist》《blocklistapp name="xx直播" package="com.xxxxxx.live"/》《blocklistapp name="xx直播" package="air.tv.xxxxxx.andriod"/》《/blocklist》《/config》示例性地,module_update_enable表示开云化参数更新,blockklist可以表示模块列表,package表示模块名。
[0080]
在一些实施例中,对于特性开关类、列表类的云化参数的参数更新来说,手机10上安装的模块可以通过云化参数kit提供的参数读取接口得到参数值完成参数更新,也就是,
通过云化参数kit提供的参数读取接口访问本地数据库得到参数值。对于文件类的云化参数的参数更新来说,手机10上安装的模块可以直接读取预装路径(生效路径)下的文件完成参数更新。
[0081]
示例性地,手机10的云化参数kit提供的参数读取接口可以是云化参数sdk,各个模块可以使用云化参数sdk得到保存在本地数据库的云化参数的参数值。
[0082]
例如,对于特性开关类参数,获取特性开关类参数的方法可以包括:public 《t》 t getparavalue(string modulename, string key),其中,modulename模块名和key参数名为方法的输入参数,方法的返回值可以是boolean型,string型,int型数据,用于表示特性开关类参数的类型。例如可以通过如下结构来查询string型的特性开关类参数switch的内容:string switch = getparavalue(“advancedmoduleconfig”,“module_update_enable”);其中,switch的参数值可以是“true”。
[0083]
再例如,对于列表类参数,获取列表类参数的方法可以包括:public arraylist 《t》 getparalist(string modulename, string key),其中,modulename模块名和key参数名为方法的输入参数,方法的返回值可以是arraylist《t》类型,其中,t可以定义为string型,integer型等数据类型,用于表示该列表类参数的类型。在一些实施例中,列表类参数的方法的返回值还可以是set《t》或者map《t》,set用于存储无序且唯一参数值,而map通过键值对的方式存储参数值。
[0084]
示例性地,例如,列表类参数的方法的返回值可以是:arraylist 《string》 list=new arraylist《》();list=getparalist(“advancedmoduleconfig”,”blocklist”);其中,列表类参数list可以包括:“com.xxxxxx.live”,“air.tv.xxxxxx.andriod”。
[0085]
为了更好地理解本技术实施例的技术方案,下面对本技术的一些技术方案进行详细介绍。
[0086]
图4根据本技术的实施例示出了手机10各模块的交互示意图。
[0087]
如图4所示,手机10的云化参数kit接收到云侧的参数配置中心(图中未示出)返回的搜包响应消息后,向用户提示参数更新。
[0088]
参考图5,图5示出了用户界面示意图。如图5所示,用户界面510即手机10的屏幕。用户界面510中显示有手机10的主桌面501和更新提示窗口502。其中,更新提示窗口502中还显示有“系统参数更新”、“系统参数配置有更新,点击

确定’,将立即生效”等提示信息和“稍后”按钮控件5020、“同意”按钮控件5021等。需要说明的是,更新提示窗口502可以以悬浮窗的形式悬浮显示在手机10的主桌面501上。
[0089]
当手机10在如图5所示的用户界面510中接收到用户点击“稍后”按钮控件5020的点击操作,响应于该操作,手机10暂时不更新参数。当手机10在如图5所示的用户界面510中接收到用户点击“同意”按钮控件5021的点击操作,响应于该操作,手机10参数更新立即生效。具体实施过程将在下文详细描述,在此不做赘述。
[0090]
可以理解,若云化参数的更新内容为紧急问题,则不显示任何用户提示,由云侧的配置静默升级。
[0091]
继续参考图4,若用户点击如图5所示的“同意”按钮控件5021,云化参数kit则将接收到的参数值存储至本数据库(图4中的数据库)、二进制码流通过文件的形式落盘至手机10的安装路径(图4中的文件安装目录)并挂载到模块(图4中的业务模块)的预装路径(文件
预置目录)。
[0092]
当业务模块接收到云化参数kit发送的参数更新的指令后,业务模块读取保存在本地数据库中的参数值和/或文件预装路径中的文件。
[0093]
为了更好地理解本技术实施例的技术方案,下面对本技术的一些技术方案的ux流程和端侧流程进行详细介绍。
[0094]
图6根据本技术的实施例示出了适用于手机10的ux流程示意图。具体地,如图6所示,该方法包括但不限于以下步骤。
[0095]
s601:接收到云化参数。
[0096]
示例性地,手机10的云化参数kit向服务器的参数配置中心请求搜包并接收到返回的搜包结果不为空,即接收到云化参数。
[0097]
s602:判断云化参数是否超出原有隐私范围。
[0098]
示例性地,若判断结果为是,说明云化参数超出了原有服务声明的隐私范围,则执行步骤s603:使用新基础服务声明;若判断结果为否,说明云化参数未超出原有服务声明的隐私范围,则执行步骤s604:使用原基础服务声明。
[0099]
s603:参数更新使用新基础服务声明。
[0100]
示例性地,云化参数超出了原有服务声明的隐私范围,使用新的基础服务声明。
[0101]
示例性地,当云化参数超出了原有服务声明的隐私范围,需要使用新的基础服务声明时,手机10显示如图7所示的用户界面710。如图7所示,用户界面710即手机10的屏幕。用户界面710中显示有新基础服务声明窗口701。
[0102]
s604:参数更新使用原基础服务声明。
[0103]
示例性地,云化参数未超出原有服务声明的隐私范围,使用原有基础服务声明。
[0104]
s605:判断更新参数是否解决紧急问题。
[0105]
示例性地,若判断结果为是,说明云化参数是为了解决紧急问题,即需要立刻更新且需要强制更新,则执行步骤s606:无任何用户提示,云侧配置静默升级;若判断结果为否,说明云化参数不是为了解决紧急问题,即不需要立刻更新且可供用户选择是否更新,则执行步骤s607:判断是否立即生效。
[0106]
s606:无任何用户提示,云侧配置静默升级。
[0107]
示例性地,云化参数是为了解决紧急问题,则参数需要立刻更新且为强制更新,则由云侧配置静默升级,手机10的ux界面不显示任何用户提示。例如,融合媒体中台audio kit上架支持游戏、直播并发录音的特性,但存在隐私风险,可能会涉及声音版权问题和用户隐私问题。在出现隐私风险时,可以通过云侧配置关闭整个特性。
[0108]
s607:判断是否立即生效。
[0109]
示例性地,若判断结果为是,说明用户同意立即更新,则执行步骤s608:参数值存数据库,文件内容落盘;若判断结果为否,说明用户选择稍后更新,则执行步骤s609:判断是否打开夜间升级。
[0110]
示例性地,参考图5,参考图5,图5示出了一种参数更新用户提示界面示意图。如图5所示,用户界面510即手机10的屏幕。用户界面510中显示有手机10的主桌面501和更新提示窗口502。其中,更新提示窗口502中还显示有“系统参数更新”、“系统参数配置有更新,点击

确定’,将立即生效”等提示信息和“稍后”按钮控件5020、“同意”按钮控件5021等。需要
说明的是,更新提示窗口502可以以悬浮窗的形式悬浮显示在手机10的主桌面501上。
[0111]
当手机10在如图5所示的用户界面510中接收到用户点击“稍后”按钮控件5020的点击操作,响应于该操作,手机10暂时不更新参数。当手机10在如图5所示的用户界面510中接收到用户点击“同意”按钮控件5021的点击操作,响应于该操作,手机10参数更新立即生效,即云化参数kit将接收到的参数值存储至本地数据库、二进制码流写文件至安装路径并挂载预装路径;当手机10在如图5所示的用户界面510中接收到用户点击“稍后”按钮控件5020的点击操作,响应于该操作,手机10参数更新不会立即生效,即还需要进行下一步判断,判断手机10是否开启了夜间升级。
[0112]
s608:处理云化参数。
[0113]
示例性地,手机10的云化参数kit接收到云侧的参数配置中心返回的搜包结果后,如果搜包结果中包含的云化参数的是参数值,则存储至本地数据库,即更新本地数据库;若果搜包结果中包含的云化参数的是二进制码流,则写文件到安装路径并挂载到模块的预装路径。
[0114]
可以理解,参数值存储至本地数据库和/或文件落盘后,云化参数kit通知各模块参数更新,各模块读取更新参数后进行参数更新操作。
[0115]
值得注意的是,参数更新仅弹窗提醒用户,例如图5和图7所示手机10的用户界面,但更新界面并不会显示在手机10的屏幕上,用户仍可以进行其他操作,提升了用户体验感。
[0116]
s609:判断是否打开夜间升级。
[0117]
示例性地,若判断结果为是,说明手机10开启了夜间升级模式,则执行步骤s610:等待夜间升级完成;若判断结果为否,说明手机10未开启夜间升级模式,则无法夜间自动完成升级,需要等待下次搜包,则执行步骤s611:等待下次搜包。
[0118]
s610:等待夜间升级完成。
[0119]
示例性地,用户选择稍后更新且手机10开启了夜间升级模式,则等待夜间进行参数升级。
[0120]
可以理解,夜间升级的时间段例如可以是手机10预设的时间段,如23:00至次日的5:00,也可以是0:00至6:00,还可以是用户开启夜间升级模式时自定义的时间段,本技术对此不做限制。
[0121]
s611:等待下次搜包。
[0122]
用户选择稍后更新但手机10并未开启夜间升级模式,则参数无法在手机10预设时间段内完成自动更新,需要等待下一次搜包。
[0123]
可由用户选择是否升级的参数更新为非强制更新,例如可以是性能调优类参数更新。
[0124]
图8根据本技术的实施例示出了手机10的处理流程图。可以理解,图8所示流程的各步骤执行主体均为手机10。为了简化描述,以下在介绍图8所示流程各步骤时将不再重复描述各步骤的执行主体。
[0125]
具体地,如图8所示,该方法包括但不限于以下步骤。
[0126]
s801:搜包定时器触发搜包或手动触发搜包。
[0127]
示例性地,搜包定时器定时触发云化参数kit请求搜包或者push sdk触发云化参数kit请求搜包。
[0128]
在一些实施例中,手机10的云化参数kit的搜包定时器定时触发搜包,即定时向云侧的参数配置中心发送搜包请求。可以理解,搜包定时器例如可以是例如:每隔24小时执行一次的定时器。在另一些实施例中,搜包定时器也可以设置为每隔12小时执行一次定时器,本技术对此不做限制。
[0129]
在另一些实施例中,手机10的云化参数kit在接受到push sdk发送的信号后触发搜包,即主动向云侧的参数配置中心发送搜包请求。可以理解,若push sdk没有向云化参数kit发送云化参数升级通知,则不会触发云化参数kit主动搜包。
[0130]
云化参数kit向云侧的参数配置中心发送的搜包请求的请求消息结构可以参考上述步骤s303的相关描述,在此不做赘述。
[0131]
可以理解,本技术提出的参数更新方法中请求搜包时请求消息结构包括基本信息和模块配置列表,结构更加简洁。
[0132]
s802:判断服务器20返回消息是否为空。
[0133]
示例性地,若判断结果为是,说明服务器20返回消息为空,即没有待更新云化参数,则结束当前流程,等待下一次搜包;若判断结果为否,说明服务器20返回消息不为空,即返回了待更新的云化参数,则执行步骤s803:更新本地数据库,挂载文件目录。
[0134]
示例性地,参考图9a和图9b,图9a根据本技术的实施例示出了无需更新的场景下手机10与服务器20的交互示意图,图9b根据本技术的实施例示出了需要更新的场景下手机10与服务器20的交互示意图。
[0135]
如图9a所示,手机10向服务器20发送搜包请求,响应于该请求,服务器20返回搜包结果,此时返回消息为空(null)。
[0136]
如图9b所示,手机10向服务器20发送搜包请求,响应于该请求,服务器返回搜包结果,此时返回消息包括更新参数及其对应的操作模块。手机10接收到返回消息后将列表类、特性开关类参数值存储至本地数据库、文件类参数落盘。
[0137]
s803:更新本地数据库,挂载文件目录。
[0138]
示例性地,云化参数kit接收到服务器返回的搜包结果后,如果接收到的是参数值,则存储至本地数据库,即更新本地数据库;若果接收到的是二进制码流,则写文件到安装路径并挂载到预装路径。其中,预装路径和安装路径的名称可以参考上述表8的相关内容,在此不做赘述。
[0139]
s804:通知模块。
[0140]
示例性地,云化参数kit完成本地数据库的更新和/或文件目录的挂载后,向有参数更新的对应模块发送参数更新的指令。
[0141]
s805:模块操作。
[0142]
示例性地,待更新参数对应模块接收到云化参数kit发送的参数更新的指令后,响应于接收到的指令,进行相应的更新参数的操作。
[0143]
可以理解,在一些实施例中,保存到本地数据库的参数值可以由参数更新对应的模块通过接口取用、各模块可以直接使用特性开关类接口的返回值及列表类返回的list结构,无需从返回的下载地址下载配置文件后自行解析配置文件;二进制文件内容会落本地文件,挂载到模块的预装路径,文件可直接生效;各模块可以不用感知有更新后去安装路径复制文件。
[0144]
示例性地,图10根据本技术实施例示出了一种终端设备10的结构示意图。
[0145]
如图10所示,终端设备10可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。其中传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。
[0146]
可以理解的是,本技术实施例示意的结构并不构成对终端设备10的具体限定。在本技术另一些实施例中,终端设备10可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
[0147]
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
[0148]
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
[0149]
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
[0150]
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,i2c)接口,集成电路内置音频(inter-integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口,用户标识模块(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
[0151]
i2c接口是一种双向同步串行总线,包括一根串行数据线(serial data line,sda)和一根串行时钟线(derail clock line,scl)。在一些实施例中,处理110可以包含多组i2c总线。处理器110可以通过不同的i2c总线接口分别耦合触摸传感器180k,充电器,闪光灯,摄像头193等。例如:处理器110可以通过i2c接口耦合触摸传感器180k,使处理器110与触摸传感器180k通过i2c总线接口通信,实现终端设备10的触摸功能。
[0152]
i2s接口可以用于音频通信。在一些实施例中,处理器110可以包含多组i2s总线。处理器110可以通过i2s总线与音频模块170耦合,实现处理器110与音频模块170之间的通
信。在一些实施例中,音频模块170可以通过i2s接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
[0153]
pcm接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过pcm总线接口耦合。在一些实施例中,音频模块170也可以通过pcm接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述i2s接口和所述pcm接口都可以用于音频通信。
[0154]
uart接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,uart接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过uart接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过uart接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
[0155]
mipi接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头193通过csi接口通信,实现终端设备10的拍摄功能。处理器110和显示屏194通过dsi接口通信,实现终端设备10的显示功能。
[0156]
gpio接口可以通过软件配置。gpio接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,gpio接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。gpio接口还可以被配置为i2c接口,i2s接口,uart接口,mipi接口等。
[0157]
usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为终端设备10充电,也可以用于终端设备10与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如ar设备等。
[0158]
可以理解的是,本技术实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备10的结构限定。在本技术另一些实施例中,终端设备10也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
[0159]
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端设备10的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
[0160]
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
[0161]
终端设备10的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信
模块160,调制解调处理器以及基带处理器等实现。
[0162]
天线1和天线2用于发射和接收电磁波信号。终端设备10中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
[0163]
移动通信模块150可以提供应用在终端设备10上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
[0164]
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
[0165]
无线通信模块160可以提供应用在终端设备10上的包括无线局域网(wireless local area networks,wlan),无线保真(wireless fidelity,wi-fi)网络),蓝牙(blue tooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
[0166]
在一些实施例中,终端设备10的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备10可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,tdscdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统 (global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统 (quasi-zenith satellite system,qzss)和/或星基增强系统(satellite based augmentation systems,sbas)。
[0167]
终端设备10通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲
染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
[0168]
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,amoled),柔性发光二极管(flex light-emitting diode,fled), mini-led, micro-led, micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,终端设备10可以包括1个或n个显示屏194,n为大于1的正整数。
[0169]
终端设备10可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
[0170]
isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
[0171]
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,终端设备10可以包括1个或n个摄像头193,n为大于1的正整数。
[0172]
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备10在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
[0173]
视频编解码器用于对数字视频压缩或解压缩。终端设备10可以支持一种或多种视频编解码器。这样,终端设备10可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
[0174]
npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现终端设备10的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
[0175]
外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展终端设备10的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
[0176]
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备10使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。处理器110通过运行存
储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行终端设备10的各种功能应用以及数据处理。
[0177]
终端设备10可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
[0178]
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
[0179]
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。终端设备10可以接收按键输入,产生与终端设备10的用户设置以及功能控制有关的键信号输入。
[0180]
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
[0181]
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
[0182]
sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和终端设备10的接触和分离。终端设备10可以支持1个或n个sim卡接口,n为大于1的正整数。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。同一个sim卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。sim卡接口195也可以兼容不同类型的sim卡。sim卡接口195也可以兼容外部存储卡。终端设备10通过sim卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,终端设备10采用esim,即:嵌入式sim卡。esim卡可以嵌在终端设备10中,不能和终端设备10分离。
[0183]
示例性地,图11根据本技术实施例示出了一种终端设备10的软件系统架构示意框图。
[0184]
如图11所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
[0185]
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
[0186]
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。该数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
[0187]
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
[0188]
电话管理器用于提供终端设备10的通信功能。例如通话状态的管理(包括接通,挂断等)。
[0189]
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,
read-only memory,eeprom)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
[0201]
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
[0202]
需要说明的是,本技术各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本技术所提出的技术问题的关键。此外,为了突出本技术的创新部分,本技术上述各设备实施例并没有将与解决本技术所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
[0203]
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0204]
虽然通过参照本技术的某些优选实施例,已经对本技术进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本技术的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献