数据处理方法和电子设备与流程

未命名 08-14 阅读:120 评论:0


1.本公开涉及终端技术领域,尤其涉及一种数据处理方法和电子设备。


背景技术:

2.随着折叠屏技术逐渐成熟,市面上的折叠屏手机也越来越多。折叠屏手机可以包括a面、b面和c面。如图1所示,a面为折叠屏手机内屏左边的显示界面,b面为折叠屏手机内屏右边的显示界面,c面为折叠屏手机外屏的显示界面。通常,在谷歌标准的安卓系统下,折叠屏手机只能获取到b面对应的加速度传感器上报加速度数据。
3.当折叠屏手机处于中间状态时,例如,图2中的(a)和(b)所示的帐篷态以及图3中的(a)和(b)所示的台历态。折叠屏手机的显示界面是c面。由于折叠屏手机仅能获取b面对应的加速度数据,所以,当折叠屏手机处于中间状态时,折叠屏手机无法获取c面对应的加速度数据。此时,折叠屏手机将按照b面对应的加速度数据,指示c面的显示方向,这将影响最终的显示效果,有可能出现显示颠倒的现象。


技术实现要素:

4.本公开实施例提供一种数据处理方法和电子设备,当折叠屏手机处于目标状态时,能够准确的显示目标显示界面,从而提高用户满意度。
5.为达到上述目的,本公开的实施例采用如下技术方案:第一方面,本公开提供了一种数据处理方法,该方法包括:首先,获取姿态数据,姿态数据用于指示终端设备的折叠姿态,以及终端设备中各个屏幕的显示状态,显示状态包括亮屏状态和灭屏状态;在根据姿态数据,确定终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,目标显示界面为目标状态对应的显示界面,第一加速度传感器对应的显示界面和目标显示界面相背对;基于目标加速度数据,显示目标显示界面。
6.基于第一方面的数据处理方法,通过获取终端设备的折叠姿态和各个屏幕的显示状态,可以确定终端设备的状态。在终端设备处于目标状态时,由于第一加速度传感器对应的显示界面和目标显示界面具有相背对的关系,所以利用该背对关系和第一加速度传感器对应的加速度数据,可以准确的得出目标显示界面对应的目标加速度数据。之后利用目标加速度数据调整目标显示界面,能使目标显示界面正确显示,从而提高用户的使用体验。
7.结合第一方面,另一种可能的实现方式中,获取姿态数据,包括:获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据;根据位姿数据,确定终端设备的折叠姿态;根据显示状态数据,确定终端设备中各个屏幕的显示状态。本公开通过姿态数据来判断终端设备是否处于目标状态。由于目标状态与折叠姿态、显示状态数据有关,所以基于该实现方式,利用第一位姿传感器确定终端设备的折叠姿态,利用第二状态传感器确定终端设备的显示状态数据。之后可以根据折叠姿态以及显示状态数据更加精确的得出终端设备是否处于目标状态。
8.结合第一方面,另一种可能的实现方式中,目标状态包括第一状态、第二状态和第三状态中的任一状态;其中,第一状态包括终端设备的折叠姿态为终端设备的内屏的折叠角度处于第一目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第二状态包括内屏的折叠角度处于第二目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第三状态包括内屏的折叠角度处于第三目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态。提供一种目标状态的具体内容。
9.结合第一方面,另一种可能的实现方式中,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,包括:对第一加速度传感器对应的加速度数据进行取反处理,得到目标加速度数据,并将目标加速度数据存储在预设缓存位置。由于第一加速度传感器对应的显示界面和目标显示界面相背对,所以基于该方式,对第一加速度传感器对应的加速度数据进行取反处理,从而可以得到目标显示界面对应的准确的目标加速度数据,之后利用该目标加速度数据可以精准的显示目标显示界面。
10.结合第一方面,另一种可能的实现方式中,预设缓存位置包括第一加速度传感器对应的缓存位置和第二加速度传感器对应的缓存位置;将目标加速度数据存储在预设缓存位置,包括:将目标加速度数据存储在预设缓存位置中的第二加速度传感器对应的缓存位置。
11.基于相关技术可知,终端设备获取的是b面对应的加速度数据,而目标显示界面(即c面)对应的目标加速度数据通常是被缓存在第一加速度传感器(即副acc)对应的缓存位置的。为了使终端设备能够获取到目标显示界面对应的目标加速度数据,所以将目标加速度数据存储在第二加速度传感器(即主acc)对应的缓存位置,从而保证终端设备可以获取到目标加速度数据,进而根据目标加速度数据为用户提供更优的显示服务。
12.结合第一方面,另一种可能的实现方式中,在获取第一姿态传感器的姿态数据以及第二状态传感器的显示状态数据之前,方法还包括:检测到用户的开机操作,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。提供一种监听第一位姿传感器和第二状态传感器的触发条件。
13.结合第一方面,另一种可能的实现方式中,在获取第一姿态传感器的姿态数据以及第二状态传感器的显示状态数据之前,方法还包括:响应于预设事件,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。预设事件包括监听第一加速度传感器和第二加速度传感器,或者,监听运动传感器。提供另一种监听第一位姿传感器和第二状态传感器的触发条件。
14.结合第一方面,另一种可能的实现方式中,终端设备为折叠屏终端设备。
15.第二方面,本公开实施例提供一种数据处理装置,该数据处理装置可以应用于电子设备,用于实现上述第一方面中的方法。该数据处理装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,获取模块、确定模块、显示模块和监听模块等。
16.其中,获取模块,被配置为获取姿态数据,姿态数据用于指示终端设备的折叠姿态,以及终端设备中各个屏幕的显示状态,显示状态包括亮屏状态和灭屏状态。
17.确定模块,被配置为在根据姿态数据,确定终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,目标显
示界面为目标状态对应的显示界面,第一加速度传感器对应的显示界面和目标显示界面相背对。
18.显示模块,被配置为基于目标加速度数据,显示目标显示界面。
19.结合第二方面,在一种可能的实现方式中,获取模块,还被配置为获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。确定模块,还被配置为根据位姿数据,确定终端设备的折叠姿态;以及根据显示状态数据,确定终端设备中各个屏幕的显示状态。
20.结合第二方面,在一种可能的实现方式中,目标状态包括第一状态、第二状态和第三状态中的任一状态;其中,第一状态包括终端设备的折叠姿态为终端设备的内屏的折叠角度处于第一目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第二状态包括内屏的折叠角度处于第二目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第三状态包括内屏的折叠角度处于第三目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态。
21.结合第二方面,在一种可能的实现方式中,确定模块,还被配置为对第一加速度传感器对应的加速度数据进行取反处理,得到目标加速度数据,并将目标加速度数据存储在预设缓存位置。
22.结合第二方面,在一种可能的实现方式中,预设缓存位置包括第一加速度传感器对应的缓存位置和第二加速度传感器对应的缓存位置;确定模块,还被配置为将目标加速度数据存储在预设缓存位置中的第二加速度传感器对应的缓存位置。
23.结合第二方面,在一种可能的实现方式中,该数据处理装置还包括监听模块。监听模块,被配置为检测到用户的开机操作,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。
24.结合第二方面,在一种可能的实现方式中,监听模块,还被配置为响应于预设事件,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据,预设事件包括监听第一加速度传感器和第二加速度传感器,或者,监听运动传感器。
25.结合第二方面,在一种可能的实现方式中,终端设备为折叠屏终端设备。
26.第三方面,本公开提供一种电子设备,包括:存储器、显示屏和一个或多个处理器;存储器、显示屏与处理器耦合。其中,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令;当电子设备运行时,该处理器用于执行该存储器存储的一个或多个计算机指令,以使电子设备执行如上述第一方面中任一项的数据处理方法。
27.第四方面,本公开提供一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如第一方面中任一项的数据处理方法。
28.第五方面,本公开提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面中任一项的数据处理方法。
29.第六方面,提供了一种装置(例如,该装置可以是芯片系统),该装置包括处理器,用于支持第一终端设备实现上述第一方面中所涉及的功能。在一种可能的设计中,该装置还包括存储器,该存储器,用于保存第一终端设备必要的程序指令和数据。该装置是芯片系统时,可以由芯片构成,也可以包含芯片和其他分立器件。
30.应当理解的是,上述第二方面至第六方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
31.图1为本公开实施例提供的一种折叠屏手机的结构示意图。
32.图2为本公开实施例提供的一种折叠屏手机处于帐篷态的场景示意图。
33.图3为本公开实施例提供的一种折叠屏手机处于台历态的场景示意图。
34.图4为本公开实施例提供的一种折叠屏手机的不同折叠角度的场景示意图之一。
35.图5为本公开实施例提供的一种折叠屏手机的不同折叠角度的场景示意图之二。
36.图6为本公开实施例提供的一种折叠屏手机中的加速度传感器的坐标系示意图。
37.图7为本公开实施例提供的一种终端设备的硬件结构示意图。
38.图8为本公开实施例提供的一种终端设备的软件结构示意图。
39.图9为本公开实施例提供的一种数据处理方法的流程示意图之一。
40.图10为本公开实施例提供的一种缓存场景示意图。
41.图11为本公开实施例提供的一种数据处理方法的流程示意图之二。
42.图12为本公开实施例提供的一种数据处理方法的流程示意图之三。
43.图13为本公开实施例提供的一种数据处理装置的结构示意图。
具体实施方式
44.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行描述。其中,在本公开的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,a/b可以表示a或b;本公开中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a,b可以是单数或者复数。并且,在本公开的描述中,除非另有说明,“多个”是指两个或多于两个。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。另外,为了便于清楚描述本公开实施例的技术方案,在本公开的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。同时,在本公开实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本公开实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念,便于理解。
45.此外,本公开实施例描述的网络架构以及业务场景是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
46.随着内折机铰链技术的成熟,越来越多的折叠屏手机出现在大众的视野。由于折
叠屏手机可以在一定角度内折叠,这使得折叠屏手机的显示方式也更加多样。例如,折叠屏手机展开之后,可以通过内屏显示画面。在折叠屏手机扣合之后,可以通过外屏显示画面。
47.在折叠屏手机展开或扣合的过程中,还存在多种中间状态。示例性的,多种中间状态包括帐篷态和台历态。当折叠屏手机是左右折叠时,如图2中的(a)所示,示例性展示一种左右折叠的折叠屏手机处于帐篷态的显示效果。如图3中的(a)所示,示例性展示一种左右折叠的折叠屏手机处于台历态的显示效果。当折叠屏手机是纵向折叠时,如图2中的(b)所示,示例性展示一种纵向折叠的折叠屏手机处于帐篷态的显示效果。如图3中的(b)所示,示例性展示一种纵向折叠的折叠屏手机处于台历态的显示效果。
48.在一些场景中,折叠屏手机的多种中间状态可以通过不同的折叠角度来定义。基于折叠角度,可以使折叠屏手机进入不同的状态。
49.参考图4中的(a),当折叠屏手机的折叠角度(即a面和b面之间的角度)处于第一预设角度范围内时,认为折叠屏手机处于展开态。示例性的,第一预设角度范围为150
°
~180
°
。参考图4中的(b),当折叠屏手机的折叠角度处于第二预设角度范围时,认为折叠屏手机处于支架态。示例性的,第二预设角度范围为45
°
~150
°
。参考图4中的(c),折叠屏手机的折叠角度处于第三预设角度范围时,认为折叠屏手机处于折叠态。示例性的,第三预设角度范围为0
°
~45
°

50.当折叠屏手机处于支架态时,还可以根据折叠角度对折叠屏手机所处的状态进行进一步划分。参考图5中的(a),当折叠屏手机的折叠角度处于第四预设角度范围,折叠屏手机的b面呈水平放置状态,且该状态持续时长超过1s,则认为折叠屏手机处于微型笔记本态。示例性的,第四预设角度范围为80
°
~150
°
。当折叠屏手机的折叠角度不处于第四预设角度范围(即折叠角度大于150
°
或者小于80
°
)内,或者折叠屏手机的b面不处于水平放置状态时,则认为折叠屏手机不处于微型笔记本态。
51.参考图5中的(b),当折叠屏手机的折叠角度处于第五预设角度范围,a面和b面呈现“^角”的放置状态,且该状态持续时长超过1s,则认为折叠屏手机处于帐篷态。示例性的,第五预设角度范围为45
°
~80
°
。当折叠屏手机的折叠角度不处于第五预设角度范围(即a面和b面之间的夹角大于80
°
或者小于45
°
)内,或者a面和b面不呈现“^角”的放置状态时,则认为折叠屏手机不处于帐篷态。
52.参考图5中的(c),当折叠屏手机播放音乐或者日程,a面和b面之间的夹角处于第五预设角度范围,且该状态持续时长超过1s,则认为折叠屏手机处于台历态。当折叠屏手机的折叠角度不处于第五预设角度范围(即a面和b面之间的夹角大于80
°
或者小于45
°
)内,或者折叠屏手机未播放音乐或者日程时,则认为折叠屏手机不处于台历态。
53.当折叠屏手机的折叠角度处于第六预设角度范围,折叠屏手机的屏幕处于竖直放置状态,且该状态持续时长超过1s,则认为折叠屏手机处于竖屏支架态。示例性的,第六预设角度范围为45
°
~150
°
。当折叠屏手机的折叠角度不处于第六预设角度范围(即a面和b面之间的夹角大于150
°
或者小于45
°
)内,或者折叠屏手机的屏幕不处于竖直放置状态时,则认为折叠屏手机不处于竖屏支架态。
54.需要说明的是,第一预设角度范围、第二预设角度范围、第三预设角度范围、第四预设角度范围、第五预设角度范围以及第六预设角度范围可以根据需求预先设置,还可以基于实际使用随时调整,本公开对上述范围不作限制。
55.图6示例性示出了一种折叠屏手机中的加速度传感器的坐标系。如图6所示,折叠屏手机中包括第一加速度传感器和第二加速度传感器。其中,第一加速度传感器又可以称为副加速度传感器,即副accelerometer(副acc)。第二加速度传感器又可以称为主加速度传感器,即主acc。主加速度传感器位于底面(即上述折叠屏手机的b面),副加速度传感器位于顶面(即上述折叠屏手机的a面)。其中,b面的加速度传感器可以通过0x1标识。b面的陀螺仪传感器可以通过0x4标识。a面的加速度传感器可以通过0x20001标识。a面的陀螺仪传感器可以通过0x20003标识。需要说明的是,a面加速度传感器和陀螺仪传感器还可以通过其他标识表示,本公开对此不作限制。
56.由于在谷歌标准的安卓系统下,折叠屏手机中仅能获取到主acc的加速度数据,当折叠屏手机处于中间状态(例如,台历态)时,折叠屏手机的显示界面为c面,与c面相关的加速度传感器是副acc,不是主acc。相关技术中,折叠屏手机根据主acc的加速度数据,调整c面的显示方向。这会使得c面出现显示偏差,例如,c面出现显示颠倒。这将直接影响用户对于折叠屏手机的使用体验。
57.为此,本公开实施例提供一种数据处理方法,当折叠屏手机处于中间状态时,利用该数据处理方法能够准确的调整折叠屏手机的显示方向,使折叠屏手机在目标显示界面精准的进行显示。从而使用户在折叠屏手机的横向显示和纵向显示的切换中获得更好的使用体验。
58.图7示出了一种终端设备的硬件结构示意图。如图7所示,终端设备可以包括:处理器710,外部存储器接口720,内部存储器721,通用串行总线(universal serial bus,usb)接口730,充电管理模块740,电源管理模块741,电池742,天线1,天线2,移动通信模块750,无线通信模块760,音频模块770,扬声器770a,受话器770b,麦克风770c,耳机接口730d,传感器模块780,按键790,马达791,指示器792,摄像头793,显示屏794,以及用户标识模块(subscriber identification module,sim)卡接口795等。其中传感器模块780可以包括压力传感器780a,陀螺仪传感器780b,气压传感器780c,磁传感器780d,加速度传感器780e,距离传感器780f,接近光传感器780g,指纹传感器780h,温度传感器780j,触摸传感器780k,环境光传感器780l,骨传导传感器780m等。
59.可以理解的是,本实施例示意的结构并不构成对终端设备的具体限定。在另一些实施例中,终端设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
60.处理器710可以包括一个或多个处理单元,例如:处理器710可以包括应用处理器(application processor,ap),modem,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
61.充电管理模块740用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。
62.电源管理模块741用于连接电池742,充电管理模块740与处理器710。电源管理模块741接收电池742和/或充电管理模块740的输入,为处理器710,内部存储器721,显示屏
794,摄像头793,和无线通信模块760等供电。
63.终端设备的无线通信功能可以通过天线1,天线2,移动通信模块750,无线通信模块760,调制解调器以及基带处理器等实现。
64.天线1和天线2用于发射和接收电磁波信号。终端设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
65.移动通信模块750可以提供应用在终端设备上的包括2g/3g/4g/5g等无线通信的解决方案。
66.无线通信模块760可以提供应用在终端设备上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bl终端设备tooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(freq终端设备ncy modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块760可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块760经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器710。无线通信模块760还可以从处理器710接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
67.终端设备通过gpu,显示屏794,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏794和应用处理器。
68.显示屏794用于显示图像,视频等。终端设备的显示屏794上可以显示一系列图形用户界面(graphical user interface,gui)。
69.终端设备可以通过isp,摄像头793,视频编解码器,gpu,显示屏794以及应用处理器等实现拍摄功能。
70.摄像头793用于捕获静态图像或视频。
71.外部存储器接口720可以用于连接外部存储卡,例如micro sd卡,实现扩展终端设备的存储能力。
72.内部存储器721可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器710通过运行存储在内部存储器721的指令,从而执行终端设备的各种功能应用以及数据处理。
73.终端设备可以通过音频模块770,扬声器770a,受话器770b,麦克风770c,耳机接口730d,以及应用处理器等实现音频功能。例如音乐播放,录音等。终端设备还可以包括压力传感器780a,气压传感器780c,陀螺仪传感器780b,磁传感器780d,加速度传感器780e,距离传感器780f,接近光传感器780g,环境光传感器780l,指纹传感器780h,温度传感器780j,触摸传感器780k,骨传导传感器780m,按键790,马达791,指示器792等。
74.sim卡接口795用于连接sim卡。sim卡可以通过插入sim卡接口795,或从sim卡接口795拔出,实现和终端设备的接触和分离。终端设备可以支持1个或n个sim卡接口,n为大于1的正整数。sim卡接口795可以支持nano sim卡,micro sim卡,sim卡等。同一个sim卡接口795可以同时插入多张卡。sim卡接口795也可以兼容外部存储卡。终端设备通过sim卡和网络交互,实现通话以及数据通信等功能。
75.另外,在上述部件之上,运行有操作系统,例如鸿蒙操作系统、ios操作系统,
android操作系统,windows操作系统等。在该操作系统上可以安装运行应用程序。在另一些实施例中,终端设备内运行的操作系统可以有多个。
76.应理解,图7所示终端设备包括的硬件模块只是示例性地描述,并不对终端设备的具体结构做出限定。事实上,本公开实施例提供的终端设备中还可以包含其它与图中示意的硬件模块具有交互关系的其它硬件模块,这里不作具体限定。例如,终端设备还可以包括闪光灯、微型投影装置等。又如,若终端设备是pc,那么终端设备还可以包括键盘、鼠标等部件。
77.上述终端设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的android
®
系统为例,示例性说明终端设备的软件结构。
78.图8是本公开实施例的终端设备的软件结构框图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android
®
系统分为六层,从上至下分别为应用程序层(application,app),应用程序框架层(framwork,fwk),系统库和安卓运行时(android runtime),硬件抽象层(hardware abstraction layer,hal)、传感器子系统框架层以及传感器子系统驱动。
79.应用程序层可以包括一系列应用程序。示例性的,应用程序可以包括音乐,日历,地图,蓝牙,游戏,视频,相机,通话,导航,浏览器等应用(application,app)。
80.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
81.示例性的,应用程序框架层可以包括视图系统,窗口管理器,通知管理器,内容提供器,系统服务,活动管理器以及资源管理器等等,本公开实施例对此不做任何限制。
82.其中,窗口管理器(windowmanagerservice):用于管理在屏幕上使用的图形用户界面(graphical user interface,gui)资源,具体可用于:获取屏幕大小、窗口的创建和销毁、窗口的显示与隐藏、窗口的布局、焦点的管理以及输入法和壁纸管理等。
83.系统服务(systemservice)用于实现系统监测与管理功能、资源分配与调度功能、安全和权限管理功能、网络通信与协议支持、用户界面与交互支持功能以及后台任务执行功能等等。系统服务可以确保android
®
系统的正常运行,为用户提供高效、稳定和安全的处理环境。通过系统服务的协同工作,android
®
系统能够有效地满足用户的需求并完成各种任务。
84.如图8所示,systemservice中可设置传感器服务(sensorservice)。应用程序层中的应用可通过调用预设的api启动sensorservice。sensorservice在运行过程中可以与硬件抽象层(hardware abstraction layer,hal)中的传感器硬件接口定义语言(sensor hardware interface definition language,sensor hidl)服务进行交互。
85.活动管理器(activity manager):用于管理每个应用的生命周期。应用通常以activity的形式运行在操作系统中。对于每一个activity,在活动管理器中都会有一个与之对应的应用记录(activityrecord),这个activityrecord记录了该应用的activity的状态。活动管理器可以利用这个activityrecord作为标识,调度应用的activity进程。
86.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。
87.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),二维图像引擎(例如:sgl)等。
88.其中,表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4,h.264,mp3,aac,amr,jpg,png等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。二维图像引擎是2d绘图的绘图引擎。
89.安卓运行时(android runtime)包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
90.hal层包括sensor hidl和高通核间通信接口(qmi核间通信模块)。其中,sensor hidl包括主加速度传感器模块(主acc模块)和副加速度传感器模块(副acc模块)。主acc模块和副acc模块通过qmi核间通信模块和高通通信接口(qmi通信模块)接收来自传感器客户端管理模块发送的主acc对应的目标加速度数据和副acc对应的目标加速度数据,以便于后续应用基于主acc对应的目标加速度数据和副acc对应的目标加速度数据对目标显示界面的显示方向进行调整,以使目标显示界面能够正确显示。qmi核间通信模块用于实现在安卓系统中不同处理器之间的通信。
91.传感器子系统框架包括多个功能模块。例如:qmi通信模块,传感器客户端管理器(sensor客户端传感器),以及事件分发管理模块等等。
92.其中,qmi通信模块是一个标准接口。qmi通信模块用于实现数据传输、网络连接管理、通信协议支持和异步事件处理等功能。本公开中qmi通信模块和qmi核间通信模块实现了hal层中的sensor hidl与传感器客户端管理模块之间的交互。
93.传感器客户端管理模块是一个软件组件。传感器客户端管理模块在终端设备中用于实现传感器检测与识别、传感器数据读取、传感器事件监听、传感器参数设置和能耗管理等。它使得终端设备能够方便地操作和利用传感器,实现更多功能。本公开中传感器客户端管理模块用于向事件分发管理模块发送终端设备或者终端设备中应用的指令,以获取相应的传感器数据信息。示例性的,传感器数据信息包括加速度数据、陀螺仪数据、光线数据、运动数据、姿态数据中的至少一项。
94.事件分发管理模块是一种用于管理和处理事件的软件组件。它的主要功能包括事件注册和监听、事件分发、事件处理、事件的过滤和转发、事件优先级和顺序管理、事件线程管理等功能,以帮助应用程序实现事件的驱动。本公开中事件分发管理模块可以响应于传感器客户端管理模块的指令,控制加速度虚拟传感器监听姿态传感器以及常见传感器。事件分发管理模块还可以通过交换模块获取主加速度传感器对应的目标加速度数据以及副加速度传感器对应的目标加速度数据。
95.传感器子系统驱动包括多个功能模块,例如:加速度虚拟传感器、姿态传感器、常见传感器、主加速度传感器、副加速度传感器、运动传感器以及交换模块。
96.其中,加速度虚拟传感器可以响应于事件分发管理模块的指令,监听姿态传感器
和常见传感器,以根据姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,确定终端设备的姿态数据。
97.姿态传感器用于感知终端设备的倾斜角度、旋转角度和方向等。姿态传感器可以有多个传感器组合而成,例如,加速度传感器、陀螺仪传感器和磁力计传感器等。
98.常见传感器是指一类常见的传感器。例如,常见传感器包括:加速度传感器、陀螺仪传感器(gyroscope)、磁力计传感器(magnetometer)、光线传感器(ambient light sensor)、距离传感器(proximity sensor)、全球定位系统(global positioning system,gps)、指纹传感器(fingerprint sensor)以及气压传感器(barometer)等等。
99.主加速度传感器用于检测终端设备的b面在三个轴向上的加速度和运动方向。副加速度传感器用于检测终端设备的a面在三个轴向上的加速度和运动方向。
100.运动传感器用于感知和记录终端设备的运动状态和活动。运动传感器可以通过检测加速度、角速度、磁场等参数来获取终端设备的运动信息。
101.交换模块用于接收来自事件分发管理模块的通知消息,并响应于该通知消息处理主acc对应加速度数据和副acc对应的加速度数据,以得到主acc对应的目标加速度数据和副acc对应的目标加速度数据。交换模块还用于上传主acc对应的目标加速度数据和副acc对应的目标加速度数据。
102.下面结合附图详细阐述本公开实施例提供的一种数据处理方法。该方法可以应用于上述终端设备。示例性的,该终端设备可以是折叠屏手机。如图9所示,该方法具体包括:步骤901、终端设备检测到用户的开机操作,终端设备开机,并向加速度虚拟传感器(acc虚拟传感器)发送第一通知。
103.其中,开机操作用于触发终端设备开机。
104.示例性的,开机操作可以是长按电源操作、双击操作、指关节敲击,多指选择操作中任一项。在一些示例中,在用户需要使用终端设备时,用户可以通过开机操作触发终端设备开机。在终端设备开机后,可以利用各种应用程序为用户提供多种功能。
105.在终端设备开机后,终端设备可以向acc虚拟传感器发送第一通知,从而获取到终端设备的姿态数据。
106.在一些示例中,第一通知可以是监听请求。该监听请求用于指示acc虚拟传感器监听姿态传感器和常见传感器,以获取姿态传感器对应的位姿数据和常见传感器对应的显示状态数据。之后,可以根据姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,得到终端设备的姿态数据。
107.终端设备的姿态数据包括终端设备的位姿数据和显示状态数据。终端设备的位姿数据用于表征终端设备的折叠姿态。终端设备的显示状态数据用于表征终端设备中各个屏幕的显示状态。例如,终端设备的显示状态数据包括终端设备中各个屏幕的显示状态对应的数据、是否处于休眠状态对应的数据、维持某一状态的时长对应的数据等等。其中,终端设备中的各个屏幕包括内屏(即a面和b面)和外屏(即c面)。
108.在一些示例中,根据姿态传感器对应的位姿数据,可以得出终端设备的折叠姿态。示例性的,结合图2-图5可知,终端设备的折叠姿态包括展开态、支架态、折叠态、微型笔记本态、帐篷态、台历态、竖屏支架态等等。
109.在一些示例中,常见传感器并不是特指某种具体的传感器,而是指一类常见的传
感器。不同的传感器可以用于测量、监测或检测各种物理量或环境参数。示例性的,常见传感器包括:加速度传感器、陀螺仪传感器(gyroscope)、磁力计传感器(magnetometer)、光线传感器(ambient light sensor)、距离传感器(proximity sensor)、全球定位系统(global positioning system,gps)、指纹传感器(fingerprint sensor)以及气压传感器(barometer)等等。
110.其中,加速度传感器用于检测终端设备在三个轴向上的加速度和运动方向。陀螺仪传感器用于检测终端设备的旋转速度和角度。磁力计传感器也称为电子罗盘,用于检测终端设备周围的磁场,以得到终端设备的方向信息。光线传感器用于检测终端设备周围环境光强度的变化,以调节屏幕亮度。距离传感器用于检测终端设备与物体之间的距离,通常用于在听筒靠近时自动关闭屏幕或调节亮度。gps传感器利用卫星定位系统确定终端设备的地理位置。指纹传感器(fingerprint sensor)用于指纹识别和终端设备解锁。气压传感器(barometer)用于测量大气压力。通常,大气压力用于确定海拔高度。可以理解的是,上述多个传感器只是一种示例,常见传感器还可以包括其他传感器,本公开对此不作限制。
111.根据常见传感器对应的显示状态数据,可以得出终端设备中各个屏幕的显示状态。示例性的,终端设备的显示状态数据包括时间戳信息对应的数据,定时器记录的定时信息对应的数据等等,本公开对此不作限制。
112.在一些示例中,当终端设备开机后,终端设备向acc虚拟传感器发送第一通知。终端设备向acc虚拟传感器发送第一通知的过程包括:首先终端设备向系统服务(systemservice)中的传感器服务(sensorservice)发送监听请求,该监听请求用于请求获取终端设备的姿态数据。然后,sensorservice接收监听请求。接着,sensorservice响应于监听请求,向sensor hidl服务发送该监听状态请求,sensor hidl服务通过qmi核间通信模块和qmi通信模块,将该监听状态请求发送至sensor客户端管理器。sensor客户端管理器接收到该监听状态请求后,向事件分发管理模块发送该监听状态请求。事件分发管理模块接收到该监听状态请求后,向acc虚拟传感器发送第一通知,以使acc虚拟传感器监听姿态传感器和常见传感器,从而获取终端设备的姿态数据。其中,sensor hidl服务中包括主acc模块和副acc模块。主acc模块和副acc模块用于接收主acc对应的目标加速度数据和副acc对应的目标加速度数据。
113.步骤902、acc虚拟传感器接收第一通知。
114.步骤903、响应于第一通知,acc虚拟传感器监听姿态传感器和常见传感器,以获取监听姿态传感器对应的位姿数据和常见传感器对应的显示状态数据。
115.在acc虚拟传感器接收到第一通知后,响应于第一通知,监听姿态传感器和常见传感器,以获取姿态传感器对应的位姿数据和常见传感器对应的显示状态数据。然后之后可以基于姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,确定出终端设备的姿态数据。
116.步骤904、acc虚拟传感器向事件分发管理模块发送姿态传感器对应的位姿数据和常见传感器对应的显示状态数据。
117.步骤905、事件分发管理模块接收姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,并根据姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,确定终端设备的姿态数据。
118.在一些示例中,事件分发管理模块可以根据姿态传感器对应的位姿数据,确定出终端设备的折叠姿态。事件分发管理模块可以根据常见传感器对应的显示状态数据,确定出终端设备中各个屏幕的显示状态。然后根据终端设备的折叠姿态和终端设备中各个屏幕的显示状态,得出终端设备的姿态数据。
119.例如,事件分发管理模块可以根据姿态传感器对应的位姿数据,确定出终端设备处于展开态。事件分发管理模块可以根据常见传感器对应的显示状态数据,确定出终端设备的内屏处于灭屏状态,外屏处于亮屏状态。然后根据终端设备的折叠姿态和终端设备中各个屏幕的显示状态,得出终端设备的姿态数据为终端设备处于展开态,且内屏处于灭屏状态,外屏处于亮屏状态。
120.步骤906、事件分发管理模块基于终端设备的姿态数据,确定终端设备处于目标状态。
121.在确定出终端设备的姿态数据后,可以将终端设备的姿态数据与目标状态对应的状态数据进行对比,在终端设备的姿态数据与目标状态对应的状态数据对比一致的情况下,确定终端设备处于目标状态。在终端设备的姿态数据与目标状态对应的状态数据对比不一致的情况下,确定终端设备不处于目标状态。
122.在一些示例中,目标状态包括三种状态,分别是第一状态、第二状态和第三状态。其中,第一状态包括终端设备处于帐篷态,且终端设备的内屏处于灭屏状态,外屏处于亮屏状态。第二状态包括终端设备处于支架态,且终端设备的内屏处于灭屏状态,外屏处于亮屏状态。第三状态包括终端设备处于展开态,且终端设备的内屏处于灭屏状态,外屏处于亮屏状态。可以理解的是,目标状态不限于上述三种状态,可以根据实际需求添加其他状态,本公开对此不作限制。
123.步骤907、在终端设备处于目标状态的情况下,事件分发管理模块向交换模块发送第二通知。
124.其中,第二通知可以是交换请求。该交换请求用于指示按照预设规则对主acc对应的加速度数据和副acc对应的加速度数据进行处理,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据。
125.结合前述可知,终端设备仅能获取到主acc上报的加速度数据。主acc是b面对应的acc。当终端设备处于目标状态下时,终端设备的目标显示界面为c面。目标显示界面对应的坐标系和主acc的坐标系不是同一个坐标系。目标显示界面对应的坐标系和副acc的坐标系呈现相反的关系。所以可以根据副acc,得到目标显示界面对应的目标加速度数据。
126.根据副acc,得到目标显示界面对应的目标加速度数据可以是根据目标显示界面对应的坐标系和副acc的坐标系的相反关系,创建预设规则。基于预设规则,得到目标显示界面对应的目标加速度数据。示例性的,预设规则为当终端设备处于目标状态下,将副acc对应的加速度数据进行取反处理,得到处理后的加速度数据,将处理后的加速度数据作为目标显示界面对应的目标加速度数据。
127.由于终端设备仅能获取到主acc上报的加速度数据,所以需要利用交换模块将目标显示界面对应的目标加速度数据(即处理后的加速度数据)与主acc对应的加速度数据进行交换,以使终端设备可以获取到目标显示界面对应的目标加速度数据。
128.在一些示例中,交换模块内置缓存单元。缓存单元包括主acc对应的缓存池和副
acc对应的缓存池。交换模块将目标显示界面对应的目标加速度数据与主acc对应的加速度数据进行交换,则目标显示界面对应的目标加速度数据被存储到主acc对应的缓存池,主acc对应的加速度数据被存储到副acc对应的缓存池。之后可以将主acc对应的缓存池和副acc对应的缓存池中的数据上报至事件分发管理模块。
129.示例性的,目标状态和缓存数据之间的关系如下表1所示。
130.表1;根据表1可知,当终端设备的目标状态为终端设备处于帐篷态,且内屏处于灭屏状态,外屏处于亮屏状态时,缓存单元中主acc对应的缓存池内的缓存数据为-x副1、y副1、-z副1。副acc对应的缓存池内的缓存数据为-x主1、y主1、-z主1。
131.其中,x副1、y副1和z副1为在副acc对应的坐标系下,终端设备处于帐篷态,且终端设备的内屏处于灭屏状态,外屏处于亮屏状态时,副acc获取的加速度数据。x主1、y主1和z主1为在主acc对应的坐标系下,终端设备处于帐篷态,且内屏处于灭屏状态,外屏处于亮屏状态时,主acc获取的加速度数据。
132.当终端设备的目标状态为终端设备处于支架态,且内屏处于灭屏状态,外屏处于亮屏状态时,缓存单元中主acc对应的缓存池内的缓存数据为-x副2、y副2、-z副2。副acc对应的缓存池内的缓存数据为-x主2、y主2、-z主2。
133.其中,x副2、y副2和z副2为在副acc对应的坐标系下,终端设备处于帐篷态,且内屏处于灭屏状态,外屏处于亮屏状态时,副acc获取的加速度数据。x主2、y主2和z主2为在主acc对应的坐标系下,终端设备处于帐篷态,且内屏处于灭屏状态,外屏处于亮屏状态时,主acc获取的加速度数据。
134.当终端设备的目标状态为终端设备处于展开态,且内屏处于灭屏状态,外屏处于亮屏状态时,缓存单元中主acc对应的缓存池内的缓存数据为-x副3、y副3、-z副3。副acc对应的缓存池内的缓存数据为-x主3、y主3、-z主3。
135.其中,x副3、y副3和z副3为在副acc对应的坐标系下,终端设备处于帐篷态,且内屏处于灭屏状态,外屏处于亮屏状态时,副acc获取的加速度数据。x主3、y主3和z主3用于表征在主acc对应的坐标系下,终端设备处于帐篷态,且内屏处于灭屏状态,外屏处于亮屏状态时,主acc获取的加速度数据。
136.步骤908、交换模块接收第二通知。
137.步骤909、响应于第二通知,交换模块按照预设规则对主acc对应的加速度数据和副acc对应的加速度数据进行处理,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据。
138.在交换模块接收到第二通知后,响应于第二通知,交换模块对主acc对应的加速度数据和副acc对应的加速度数据进行处理,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据。以使得终端设备可以根据主acc对应的目标加速度数据和副acc对应的
目标加速度数据,获取目标显示界面对应的目标加速度数据,从而保证目标显示界面能够实现正确显示。
139.在一些示例中,交换模块对主acc对应的加速度数据和副acc对应的加速度数据进行处理,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据可以包括:首先,交换模块按照预设规则,对副acc对应的加速度数据进行取反处理,得到处理后的加速度数据。该处理后的加速度数据即为目标显示界面对应的目标加速度数据。然后对主acc对应的加速度数据和处理后的加速度数据进行交换,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据。其中,主acc对应的目标加速度数据为处理后的加速度数据。副acc对应的目标加速度数据为主acc对应的加速度数据。
140.在另一些示例中,为了保证主acc对应的目标加速度数据和副acc对应的目标加速度数据的一致性,副acc对应的目标加速度数据可以是对主acc对应的加速度数据进行取反处理后得到的。
141.通常情况下,当主acc获取到主acc对应的加速度数据后,主acc会将主acc对应的加速度数据存储到主acc对应的缓存池。当副acc获取到副acc对应的加速度数据后,副acc会将副acc对应的加速度数据存储到副acc对应的缓存池。当主acc的中断到来时,交换模块会从主acc对应的缓存池中获取主acc对应的加速度数据。当副acc的中断到来时,交换模块会从副acc对应的缓存池中获取副acc对应的加速度数据。
142.如图10所示,若交换模块接收到第二通知,交换模块会使主acc将主acc对应的加速度数据存储到副acc对应的缓存池。接着,将副acc对应的缓存池中的主acc对应的加速度数据作为副acc对应的目标加速度数据。当副acc的中断到来时,交换模块从副acc对应的缓存池中获取副acc对应的目标加速度数据,并向事件分发管理模块上传副acc对应的目标加速度数据。
143.同时,交换模块会使副acc将副acc对应的加速度数据后存储到主acc对应的缓存池。交换模块按照预设规则对主acc对应的缓存池中的副acc对应的加速度数据进行取反处理,得到处理后的加速度数据(即目标显示界面对应的目标加速度数据)。利用处理后的加速度数据替换副acc对应的加速度数据,并将处理后的加速度数据作为主acc对应的目标加速度数据。当主acc的中断到来时,交换模块从主acc对应的缓存池中获取主acc对应的目标加速度数据,并向事件分发管理模块上传主acc对应的目标加速度数据。
144.在另一些示例中,若交换模块接收到第二通知,主acc将主acc对应的加速度数据存储到副acc对应的缓存池后,交换模块还可以将副acc对应的缓存池中的主acc对应的加速度数据进行取反处理,得到副acc对应的目标加速度数据。
145.在一些示例中,当副acc获取到副acc对应的加速度数据后,若交换模块接收到第二通知,交换模块对副acc对应的加速度数据进行取反处理,得到处理后的加速度数据,并将处理后的加速度数据作为主acc对应的目标加速度数据。然后将主acc对应的目标加速度数据存储在主acc对应的缓存池。当主acc的中断到来时,交换模块会从主acc对应的缓存池中获取主acc对应的目标加速度数据,并向事件分发管理模块上传主acc对应的目标加速度数据。
146.当主acc获取到主acc对应的加速度数据,交换模块将主acc对应的加速度数据作为副acc对应目标加速度数据,并将副acc对应目标加速度数据存储在副acc对应的缓存池。
当副acc的中断到来时,交换模块从副acc对应的缓存池中获取副acc对应的目标加速度数据,并向事件分发管理模块上传副acc对应的目标加速度数据。
147.在另一些示例中,当主acc获取到主acc对应的加速度数据,交换模块将主acc对应的加速度数据进行取反处理,得到副acc对应的目标加速度数据,并将副acc对应目标加速度数据存储在副acc对应的缓存池。
148.在一些示例中,主acc的中断的到来时间和副acc的中断到来时间可以是预先设置。示例性的,交换模块预先设置主acc的中断和副acc的中断按照固定周期产生。例如,固定周期是100ms。
149.在一些示例中,交换模块可以是基于软先进先出 ( first input first output,fifo)机制,实现上述对主acc对应的加速度数据和副acc对应的加速度数据进行处理,从而得到主acc对应的目标加速度数据和副acc对应的目标加速度数据的过程。
150.步骤910、交换模块向事件分发管理模块发送主acc对应的目标加速度数据和副acc对应的目标加速度数据。
151.步骤911、事件分发管理模块接收并上报主acc对应的目标加速度数据和副acc对应的目标加速度数据。
152.在事件分发管理模块接收到主acc对应的目标加速度数据和副acc对应的目标加速度数据后,事件分发管理模块上报主acc对应的目标加速度数据和副acc对应的目标加速度数据,以使终端设备根据主acc对应的目标加速度数据和副acc对应的目标加速度数据,对目标显示界面的显示方向进行调整,以使正确显示目标显示界面。
153.在一些示例中,当终端设备接收到主acc对应的目标加速度数据和副acc对应的目标加速度数据后,终端设备可以直接使用主acc对应的目标加速度数据和副acc对应的目标加速度数据。当终端设备存在特定处理机制时,终端设备可以自行决策采用主acc对应的目标加速度数据和副acc对应的目标加速度数据,对目标显示界面的显示方向进行调整。还是采用原有的主acc对应的加速度数据和副acc对应的加速度数据,对目标显示界面的显示方向进行调整。本公开对此不作限制。其中,特定处理机制可以用于解决背景技术中提出的问题。
154.在一些示例中,事件分发管理模块上报主acc对应的目标加速度数据和副acc对应的目标加速度数据可以包括:首先,事件分发管理模块向sensor客户端管理器发送回复消息,该回复消息包括主acc对应的目标加速度数据和副acc对应的目标加速度数据。然后sensor客户端管理器接收回复消息。响应于该回复消息,sensor客户端管理器通过qmi核间通信模块和qmi通信模块,向sensor hidl服务发送加速度数据回复消息,该加速度数据回复消息包括主acc对应的目标加速度数据和副acc对应的目标加速度数据。sensor hidl服务接收该加速度数据回复消息。响应于该加速度数据回复消息,向systemservice中的sensorservice发送主acc对应的目标加速度数据和副acc对应的目标加速度数据。以使后续终端设备基于sensorservice中的主acc对应的目标加速度数据和副acc对应的目标加速度数据,对显示界面执行相应的调整操作。
155.在一些示例中,当终端设备接收到主acc对应的目标加速度数据和副acc对应的目标加速度数据后,若需要对目标显示界面的显示方向进行调整,则可以使用主acc对应的目标加速度数据对目标显示界面的显示方向进行调整。若不需要对目标显示界面的显示方向
进行调整,则可以释放主acc对应的目标加速度数据和副acc对应的目标加速度数据。
156.因此,采用本方案当终端设备开机时,可以通过姿态传感器和常见传感器,获取终端设备的折叠姿态和各个屏幕的显示状态。根据终端设备的折叠姿态和各个屏幕的显示状态,可以得出终端设备的状态。在终端设备处于目标状态时,由于第一加速度传感器对应的显示界面和目标显示界面具有相背对的关系,所以利用该背对关系和副acc对应的加速度数据,可以准确的得出目标显示界面对应的目标加速度数据。若后续使用该目标加速度数据,则可以利用目标加速度数据调整目标显示界面,以使目标显示界面正确显示,从而提高用户的使用体验。
157.下面对本公开实施例提供的一种数据处理方法的流程进行说明,如图11所示,具体包括:步骤1101a、响应于用户操作,待处理应用启动第一监听事件。
158.其中,第一监听事件用于指示监听主acc和副acc。
159.示例性的,用户操作可以是单击操作、双击操作、指关节敲击,多指选择操作中任一项。待处理应用为终端设备中安装的应用。待处理应用可以是系统应用或者第三方应用。例如,待处理应用可以是视频类应用、拍照类应用、会议类应用、运动类应用以及音乐类应用等等。本公开对待处理应用不做限制。
160.在一些示例中,当待处理应用是视频类应用时,用户操作可以是视频播放操作。响应于视频播放操作,待处理应用通过监听主acc对应的加速度数据和副acc对应的加速度数据来识别出终端设备的方向。之后可以根据终端设备的方向,在目标显示界面为用户正确展示播放视频。
161.在一些示例中,当待处理应用是拍照类应用时,用户操作可以是拍摄操作。响应于拍摄操作,待处理应用通过监听主acc对应的加速度数据和副acc对应的加速度数据来识别出终端设备的方向,以根据终端设备的方向,在拍摄界面(即目标显示界面)为用户正确的展示拍摄对象,以便于用户基于拍摄界面展示的拍摄对象进行拍摄。
162.步骤1101b、响应于用户操作,待处理应用启动第二监听事件。
163.其中,第二监听事件用于指示监听运动传感器。
164.在一些示例中,响应于用户操作,待处理应用启动第二监听事件,以监听终端设备中的运动传感器。通过运动传感器可以识别终端设备的运动状态。之后可以根据终端设备的运动状态,调整终端设备的目标显示界面。
165.步骤1102、在待处理应用触发第一监听事件或第二监听事件的情况下,向acc虚拟传感器发送第一通知。
166.在待处理应用触发第一监听事件或第二监听事件的情况下,可以向acc虚拟传感器发送第一通知,以基于acc虚拟传感器,得到终端设备的姿态数据。在实际应用中,若其他场景也需要通过acc虚拟传感器监听姿态传感器和常见传感器,则可以增加其他监听事件。本公开对监听事件不作限制。
167.本公开实施例中向acc虚拟传感器发送第一通知可以参考上述图9所示的实施例中的步骤901,本公开实施例在此不再赘述。
168.步骤1103、acc虚拟传感器接收第一通知。
169.步骤1104、响应于第一通知,acc虚拟传感器监听姿态传感器和常见传感器,以获
取监听姿态传感器对应的位姿数据和常见传感器对应的显示状态数据。
170.本公开实施例中acc虚拟传感器接收第一通知,响应于第一通知,acc虚拟传感器监听姿态传感器和常见传感器,以获取监听姿态传感器对应的位姿数据和常见传感器对应的显示状态数据可以参考上述图9所示的实施例中的步骤902-步骤903,本公开实施例在此不再赘述。
171.步骤1105、acc虚拟传感器向事件分发管理模块发送姿态传感器对应的位姿数据和常见传感器对应的显示状态数据。
172.步骤1106、事件分发管理模块接收姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,并根据姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,确定终端设备的姿态数据。
173.本公开实施例中acc虚拟传感器向事件分发管理模块发送姿态传感器对应的位姿数据和常见传感器对应的显示状态数据以及事件分发管理模块接收姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,并根据姿态传感器对应的位姿数据和常见传感器对应的显示状态数据,确定终端设备的姿态数据可以参考上述图9所示的实施例中的步骤904-步骤905,本公开实施例在此不再赘述。
174.步骤1107、事件分发管理模块基于终端设备的姿态数据,确定终端设备处于目标状态。
175.本公开实施例中事件分发管理模块基于终端设备的姿态数据,确定终端设备处于目标状态可以参考上述图9所示的实施例中的步骤906,本公开实施例在此不再赘述。
176.步骤1108、在终端设备处于目标状态的情况下,事件分发管理模块向交换模块发送第二通知。
177.本公开实施例中在终端设备处于目标状态的情况下,事件分发管理模块向交换模块发送第二通知可以参考上述图9所示的实施例中的步骤907,本公开实施例在此不再赘述。
178.步骤1109、交换模块接收第二通知。
179.步骤1110、响应于第二通知,交换模块按照预设规则对主acc对应的加速度数据和副acc对应的加速度数据进行处理,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据。
180.本公开实施例中交换模块接收第二通知以及响应于第二通知,交换模块对主acc对应的加速度数据和副acc对应的加速度数据进行处理,得到主acc对应的目标加速度数据和副acc对应的目标加速度数据可以参考上述图9所示的实施例中的步骤908-步骤909,本公开实施例在此不再赘述。
181.步骤1111、交换模块向事件分发管理模块发送主acc对应的目标加速度数据和副acc对应的目标加速度数据。
182.步骤1112、事件分发管理模块接收主acc对应的目标加速度数据和副acc对应的目标加速度数据。
183.在事件分发管理模块接收到主acc对应的目标加速度数据和副acc对应的目标加速度数据后,会向待处理应用发送主acc对应的目标加速度数据和副acc对应的目标加速度数据。以使待处理应用根据主acc对应的目标加速度数据和副acc对应的目标加速度数据,
对目标显示界面的显示方向进行调整,从而使目标显示界面正确显示。
184.步骤1113、事件分发管理模块向待处理应用发送主acc对应的目标加速度数据和副acc对应的目标加速度数据。
185.在一些示例中,事件分发管理模块向待处理应用发送主acc对应的目标加速度数据和副acc对应的目标加速度数据可以包括:首先,事件分发管理模块向sensor客户端管理器发送回复消息,该回复消息包括主acc对应的目标加速度数据和副acc对应的目标加速度数据。然后sensor客户端管理器接收回复消息。响应于该回复消息,sensor客户端管理器通过qmi核间通信模块和qmi通信模块,向sensor hidl服务发送加速度数据回复消息,该加速度数据回复消息包括主acc对应的目标加速度数据和副acc对应的目标加速度数据。sensor hidl服务接收该加速度数据回复消息。响应于该加速度数据回复消息,向systemservice中的sensorservice发送主acc对应的目标加速度数据和副acc对应的目标加速度数据。sensorservice接收到主acc对应的目标加速度数据和副acc对应的目标加速度数据后,将主acc对应的目标加速度数据和副acc对应的目标加速度数据发送至待处理应用,以使后续待处理应用基于主acc对应的目标加速度数据和副acc对应的目标加速度数据,对目标显示界面的显示方向执行相应的调整操作。
186.步骤1114、待处理应用接收主acc对应的目标加速度数据和副acc对应的目标加速度数据,并基于主acc对应的目标加速度数据和副acc对应的目标加速度数据,对目标显示界面的显示方向进行调整,以得到调整后的显示方向。
187.待处理应用接收到主acc对应的目标加速度数据和副acc对应的目标加速度数据后,待处理应用可以根据主acc对应的目标加速度数据对目标显示界面的显示方向进行调整,以得到调整后的显示方向,利用调整后的显示方向正确显示目标显示界面。
188.在一些示例中,基于主acc对应的目标加速度数据和副acc对应的目标加速度数据,对目标显示界面的显示方向进行调整,以得到调整后的显示方向可以是基于主acc对应的目标加速度数据,对目标显示界面的显示方向进行调整,以得到调整后的显示方向。
189.在另一些示例中,基于主acc对应的目标加速度数据,对目标显示界面的显示方向进行调整,以得到调整后的显示方向可以是基于主acc对应的目标加速度数据,确定目标方向,在目标方向与目标显示界面的显示方向不同的情况下,将目标显示界面的显示方向调整为目标方向(即调整后的显示方向)。示例性的,将目标显示界面的显示方向调整为目标方向可以是将横向显示调整为纵向显示;或者将纵向显示调整为横向显示;又或者将显示方向旋转180
°
后显示等等。
190.在一些示例中,当待处理应用存在特定处理机制时,待处理应用可以自行决策采用主acc对应的目标加速度数据和副acc对应的目标加速度数据,对目标显示界面的显示方向进行调整。还是采用原有的主acc对应的加速度数据和副acc对应的加速度数据,对目标显示界面的显示方向进行调整。本公开对此不作限制,以实际使用为准。其中,特定处理机制可以用于解决背景技术中提出的问题。
191.因此,采用本方案当待处理应用启动第一监听事件或第二监听事件时,可以通过姿态传感器和常见传感器,获取终端设备的折叠姿态和各个屏幕的显示状态。根据终端设备的折叠姿态和各个屏幕的显示状态,可以得出终端设备的状态。在终端设备处于目标状态时,由于第一加速度传感器对应的显示界面和目标显示界面具有相背对的关系,所以利
用该背对关系和副acc对应的加速度数据,可以准确的得出目标显示界面对应的目标加速度数据。之后待处理应用可以利用目标加速度数据调整目标显示界面,能使目标显示界面正确显示,从而提高用户的使用体验。
192.为了便于理解,下面结合附图12对本公开实施例提供的数据处理方法进行说明。如图9所示,该数据处理方法可以包括以下步骤1201-步骤1203。
193.步骤1201、获取姿态数据,姿态数据用于指示终端设备的折叠姿态,以及终端设备中各个屏幕的显示状态,显示状态包括亮屏状态和灭屏状态。
194.在一些示例中,获取姿态数据,包括:获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据;根据位姿数据,确定终端设备的折叠姿态;根据显示状态数据,确定终端设备中各个屏幕的显示状态。
195.本公开实施例中的第一位姿传感器相当于图9所示的实施例中的姿态传感器,第二状态传感器相当于图9所示的实施例中的常见传感器,所以第二状态传感器可以对应多个传感器。本公开实施例中的获取姿态数据,姿态数据用于指示终端设备的折叠姿态,以及终端设备中各个屏幕的显示状态,显示状态包括亮屏状态和灭屏状态,可以参考上述图9所示的实施例中的步骤901-步骤905,本公开实施例在此不再赘述。
196.步骤902、在根据姿态数据,确定终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,目标显示界面为目标状态对应的显示界面,第一加速度传感器对应的显示界面和目标显示界面相背对。
197.本公开实施例中的第一加速度传感器相当于图9所示的实施例中的副acc。第一加速度传感器对应的加速度数据相当于图9所示的实施例中的副acc对应的加速度数据。目标加速度数据相当于图9所示的实施例中的主acc对应的目标加速度数据。
198.本公开实施例中在根据姿态数据,确定终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,目标显示界面为目标状态对应的显示界面,第一加速度传感器对应的显示界面和目标显示界面相背对,可以参考上述图9所示的实施例中的步骤906-步骤909,本公开实施例在此不再赘述。
199.在一些示例中,目标状态包括第一状态、第二状态和第三状态中的任一状态;其中,第一状态包括终端设备的折叠姿态为终端设备的内屏的折叠角度处于第一目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第二状态包括内屏的折叠角度处于第二目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第三状态包括内屏的折叠角度处于第三目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态。其中,终端设备的折叠姿态包括终端设备的内屏的折叠角度。
200.本公开实施例中的第一目标预设角度范围相当于图5所示的实施例中的帐篷态对应的第五预设角度范围。第二目标预设角度范围相当于图5所示的实施例中的台历态对应的第五预设角度范围。第三目标预设角度范围相当于图5所示的实施例中的展开态对应的第一预设角度范围。
201.在一些示例中,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,包括:对第一加速度传感器对应的加速度数据进行取反处理,得到目标加速度数据,并将目标加速度数据存储在预设缓存位置。
202.本公开实施例中对第一加速度传感器对应的加速度数据进行取反处理,得到目标
加速度数据,并将目标加速度数据存储在预设缓存位置。可以参考上述图9所示的实施例中的步骤909中的内容,本公开实施例在此不再赘述。
203.在一些示例中,预设缓存位置包括第一加速度传感器对应的缓存位置和第二加速度传感器对应的缓存位置;将目标加速度数据存储在预设缓存位置,包括:将目标加速度数据存储在预设缓存位置中的第二加速度传感器对应的缓存位置。
204.本公开实施例中的第一加速度传感器对应的缓存位置相当于图9所示的实施例中的副acc对应的缓存池。第二加速度传感器对应的缓存位置相当于图9所示的实施例中的主acc对应的缓存池。将目标加速度数据存储在预设缓存位置中的第二加速度传感器对应的缓存位置相当于图9所示的实施例中的将主acc对应的目标加速度数据存储在主acc对应的缓存池。
205.本公开实施例中将目标加速度数据存储在预设缓存位置中的第二加速度传感器对应的缓存位置,可以参考上述图9所示的实施例中的步骤909中的内容,本公开实施例在此不再赘述。
206.步骤903、基于目标加速度数据,显示目标显示界面。
207.本公开实施例中基于目标加速度数据,显示目标显示界面,可以参考上述图11所示的实施例中的步骤1114,本公开实施例在此不再赘述。
208.在一些示例中,在获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据之前,方法还包括:检测到用户的开机操作,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。
209.本公开实施例中检测到用户的开机操作,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据,可以参考上述图11所示的实施例中的步骤901-步骤903,本公开实施例在此不再赘述。
210.在一些示例中,在获取第一姿态传感器的姿态数据以及第二状态传感器的显示状态数据之前,方法还包括:响应于预设事件,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据,预设事件包括监听第一加速度传感器和第二加速度传感器,或者,监听运动传感器。
211.本公开实施例中的监听第一加速度传感器和第二加速度传感器相当于图11所示的实施例中的第一监听事件。监听运动传感器相当于图11所示的实施例中的第二监听事件。
212.本公开实施例中响应于预设事件,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据,预设事件包括监听第一加速度传感器和第二加速度传感器,或者,监听运动传感器可以参考上述图11所示的实施例中的步骤1101a、1101b、步骤1102-1104,本公开实施例在此不再赘述。
213.在一些示例中,终端设备为折叠屏终端设备。
214.对应于前述实施例中的方法,本公开实施例还提供一种数据处理装置。该数据处理装置可以应用于电子设备,用于实现前述实施例中的方法。该数据处理装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
215.例如,图13示出了一种数据处理装置1300的结构示意图,如图13所示,该数据处理
装置1300可以包括:获取模块1301、确定模块1302和显示模块1303等。
216.其中,获取模块1301,被配置为获取姿态数据,姿态数据用于指示终端设备的折叠姿态,以及终端设备中各个屏幕的显示状态,显示状态包括亮屏状态和灭屏状态。
217.确定模块1302,被配置为在根据姿态数据,确定终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,目标显示界面为目标状态对应的显示界面,第一加速度传感器对应的显示界面和目标显示界面相背对。
218.显示模块1303,还被配置为基于目标加速度数据,显示目标显示界面。
219.在一种可能的实现方式中,获取模块1301,还被配置为获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。确定模块1302,还被配置为根据位姿数据,确定终端设备的折叠姿态;以及根据显示状态数据,确定终端设备中各个屏幕的显示状态。
220.在一种可能的实现方式中,目标状态包括第一状态、第二状态和第三状态中的任一状态;其中,第一状态包括终端设备的折叠姿态为终端设备的内屏的折叠角度处于第一目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第二状态包括内屏的折叠角度处于第二目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态;第三状态包括内屏的折叠角度处于第三目标预设角度范围内,内屏处于灭屏状态,外屏处于亮屏状态。
221.在一种可能的实现方式中,确定模块1302,还被配置为对第一加速度传感器对应的加速度数据进行取反处理,得到目标加速度数据,并将目标加速度数据存储在预设缓存位置。
222.在一种可能的实现方式中,预设缓存位置包括第一加速度传感器对应的缓存位置和第二加速度传感器对应的缓存位置;确定模块1302,还被配置为将目标加速度数据存储在预设缓存位置中的第二加速度传感器对应的缓存位置。
223.在一种可能的实现方式中,该数据处理装置还包括监听模块1304。监听模块,被配置为检测到用户的开机操作,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据。
224.在一种可能的实现方式中,监听模块1304,还被配置为响应于预设事件,监听第一位姿传感器和第二状态传感器,以获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据,预设事件包括监听第一加速度传感器和第二加速度传感器,或者,监听运动传感器。
225.在一种可能的实现方式中,终端设备为折叠屏终端设备。
226.应理解以上装置中单元或模块(以下均称为单元)的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且装置中的单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元以软件通过处理元件调用的形式实现,部分单元以硬件的形式实现。
227.例如,各个单元可以为单独设立的处理元件,也可以集成在装置的某一个芯片中实现,此外,也可以以程序的形式存储于存储器中,由装置的某一个处理元件调用并执行该单元的功能。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里的处理元件又可以称为处理器,可以是一种具有信号的处理能力的集成电路。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路实现或者以软件
通过处理元件调用的形式实现。
228.应理解,本公开提供的上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本公开实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
229.在一个例子中,以上装置中的单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个asic,或,一个或多个dsp,或,一个或者多个fpga,或这些集成电路形式中至少两种的组合。
230.再如,当装置中的单元可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如cpu或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统soc的形式实现。
231.在一种实现中,以上装置实现以上方法中各个对应步骤的单元可以通过处理元件调度程序的形式实现。例如,该装置可以包括处理元件和存储元件,处理元件调用存储元件存储的程序,以执行以上方法实施例的方法。存储元件可以为与处理元件处于同一芯片上的存储元件,即片内存储元件。
232.在另一种实现中,用于执行以上方法的程序可以在与处理元件处于不同芯片上的存储元件,即片外存储元件。此时,处理元件从片外存储元件调用或加载程序于片内存储元件上,以调用并执行以上方法实施例的方法。
233.例如,本公开实施例还可以提供一种装置,如:电子设备,可以包括:处理器,用于存储该处理器可执行指令的存储器。该处理器被配置为执行上述指令时,使得该电子设备实现如前述实施例的数据处理方法。该存储器可以位于该电子设备之内,也可以位于该电子设备之外。且该处理器包括一个或多个。
234.在又一种实现中,该装置实现以上方法中各个步骤的单元可以是被配置成一个或多个处理元件,这些处理元件可以设置于对应上述的电子设备上,这里的处理元件可以为集成电路,例如:一个或多个asic,或,一个或多个dsp,或,一个或者多个fpga,或者这些类集成电路的组合。这些集成电路可以集成在一起,构成芯片。
235.例如,本公开实施例还提供一种芯片,该芯片可以应用于上述电子设备。芯片包括一个或多个接口电路和一个或多个处理器;接口电路和处理器通过线路互联;处理器通过接口电路从电子设备的存储器接收并执行计算机指令,以实现以上方法实施例中的方法。
236.本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备可以实现如上述的数据处理方法。
237.本公开实施例还提供一种计算机程序产品,包括如上述电子设备运行的计算机指令,当计算机指令在电子设备中运行时,使得电子设备实可以现如上述的数据处理方法。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
238.在本公开所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以
结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
239.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
240.另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
241.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本公开实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,如:程序。该软件产品存储在一个程序产品,如计算机可读存储介质中,包括若干指令用以使得一个终端设备(可以是单片机,芯片等)或处理器(processor)执行本公开各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
242.例如,本公开实施例还可以提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备实现如前述方法实施例中的数据处理方法。
243.以上,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何在本公开揭露的技术范围内的变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。

技术特征:
1.一种数据处理方法,其特征在于,方法包括:获取姿态数据,所述姿态数据用于指示终端设备的折叠姿态,以及所述终端设备中各个屏幕的显示状态,所述显示状态包括亮屏状态和灭屏状态;在根据所述姿态数据,确定所述终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,所述目标显示界面为所述目标状态对应的显示界面,所述第一加速度传感器对应的显示界面和所述目标显示界面相背对;基于所述目标加速度数据,显示所述目标显示界面。2.根据权利要求1所述的方法,其特征在于,所述获取姿态数据,包括:获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据;根据所述位姿数据,确定所述终端设备的折叠姿态;根据所述显示状态数据,确定所述终端设备中各个屏幕的显示状态。3.根据权利要求1所述的方法,其特征在于,所述目标状态包括第一状态、第二状态和第三状态中的任一状态;其中,第一状态包括所述终端设备的折叠姿态为所述终端设备的内屏的折叠角度处于第一目标预设角度范围内,所述内屏处于灭屏状态,外屏处于亮屏状态;第二状态包括所述内屏的折叠角度处于第二目标预设角度范围内,所述内屏处于灭屏状态,所述外屏处于亮屏状态;第三状态包括所述内屏的折叠角度处于第三目标预设角度范围内,所述内屏处于灭屏状态,外屏处于亮屏状态。4.根据权利要求1所述的方法,其特征在于,所述利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,包括:对所述第一加速度传感器对应的加速度数据进行取反处理,得到所述目标加速度数据,并将所述目标加速度数据存储在预设缓存位置。5.根据权利要求4所述的方法,其特征在于,所述预设缓存位置包括第一加速度传感器对应的缓存位置和第二加速度传感器对应的缓存位置;所述将所述目标加速度数据存储在预设缓存位置,包括:将所述目标加速度数据存储在所述预设缓存位置中的所述第二加速度传感器对应的缓存位置。6.根据权利要求2所述的方法,其特征在于,在所述获取第一位姿传感器的位姿数据以及第二状态传感器的显示状态数据之前,所述方法还包括:检测到用户的开机操作,监听所述第一位姿传感器和所述第二状态传感器,以获取所述第一位姿传感器的位姿数据以及所述第二状态传感器的显示状态数据。7.根据权利要求2所述的方法,其特征在于,在所述获取第一姿态传感器的姿态数据以及第二状态传感器的显示状态数据之前,所述方法还包括:响应于预设事件,监听所述第一位姿传感器和所述第二状态传感器,以获取所述第一位姿传感器的位姿数据以及所述第二状态传感器的显示状态数据,所述预设事件包括监听第一加速度传感器和第二加速度传感器,或者,监听运动传感器。8.根据权利要求1-7中任一项所述的方法,其特征在于,所述终端设备为折叠屏终端设备。9.一种电子设备,其特征在于,所述电子设备包括处理器,用于存储所述处理器可执行
指令的存储器;所述处理器被配置为执行所述指令时,使得所述电子设备实现如权利要求1至8中任一项所述的方法。10.一种计算机可读存储介质,其上存储有计算机程序指令;其特征在于,当所述计算机程序指令被电子设备执行时,使得电子设备实现如权利要求1至8中任一项所述的方法。

技术总结
本公开提供一种数据处理方法和电子设备,应用于终端技术领域,当折叠屏手机处于中间状态时,能够准确的显示目标显示界面,从而提高用户满意度。该方法包括:获取姿态数据,姿态数据用于指示终端设备的折叠姿态,以及终端设备中各个屏幕的显示状态,显示状态包括亮屏状态和灭屏状态;在根据姿态数据,确定终端设备处于目标状态的情况下,利用第一加速度传感器对应的加速度数据,得到目标显示界面对应的目标加速度数据,目标显示界面为目标状态对应的显示界面,第一加速度传感器对应的显示界面和目标显示界面相背对;基于目标加速度数据,显示目标显示界面。目标显示界面。目标显示界面。


技术研发人员:刘铁良
受保护的技术使用者:荣耀终端有限公司
技术研发日:2023.07.10
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐