输入法显示控制方法及相关装置与流程

文档序号:32406874发布日期:2022-12-02 20:39阅读:116来源:国知局
输入法显示控制方法及相关装置与流程

1.本技术涉及终端技术领域,尤其涉及一种输入法显示控制方法及相关装置。


背景技术:

2.随着终端设备的发展,应用软件的种类越来越多。用户在使用过程经常需要从一个应用切换至另一应用,这也就涉及到了两个应用的显示界面之间的切换。
3.可能的实现中,当终端设备接收到用户切换显示界面的操作后,终端设备的显示界面可以从应用一的界面切换至应用二的界面,其中,应用一的界面显示输入法(input method editor,ime),应用二的界面不显示输入法。
4.但是,终端设备的显示界面切换至应用二的界面时,输入法可能在应用二的界面上短暂显示后消失,也就是说,输入法可能在应用二的界面上闪烁。这样,会导致用户的视觉体验不流畅、使用体验感不佳。


技术实现要素:

5.本技术实施例提供一种输入法显示控制方法及相关装置,应用于终端技术领域。在终端设备的显示界面由显示输入法的应用界面切换到不显示输入法的另一应用界面的过程中,该方法可以基于获取到的窗口令牌预先判断出另一应用界面上不显示输入法,使得输入法在另一应用界面上不出现闪烁的情况。
6.第一方面,本技术实施例提出一种输入法显示控制方法。该方法包括:终端设备显示第一应用的界面,第一应用的界面中包括输入法的输入界面;终端设备接收到第一操作;第一操作用于将第一应用向第二应用切换;响应于第一操作,终端设备判断是否能获取到第一窗口令牌;当终端设备不能获取到第一窗口令牌时,终端设备取消输入法的输入界面的显示,以及向第二应用的界面切换。这样,输入法不在第二应用的界面上显示,不会发生输入法闪烁现象,可以提升用户的视觉流畅度和用户体验感。
7.一种可能的实现方式中,当终端设备获取到第一窗口令牌时,终端设备获取第二窗口令牌;当第二窗口令牌,与第一窗口令牌不相等时,终端设备中的窗口管理服务wms调用checkfocus方法;当checkfocus方法的返回值为false时,终端设备取消输入法的输入界面的显示,以及向第二应用的界面切换。这样,终端设备可以基于获取到的窗口令牌,判断输入法在第二应用的界面上是否显示,判断输入法在第二应用的界面上不显示时,输入法不在第二应用的界面上显示,不会发生输入法闪烁现象,可以提升用户的视觉流畅度和用户体验感。
8.一种可能的实现方式中,当checkfocus方法的返回值为true时,终端设备不取消输入法的输入界面的显示,以及向第二应用的界面切换。这样,在第二应用的界面上需要显示输入法的界面时,输入法界面可以显示,能够满足用户的使用需求,提升用户的使用体验。
9.一种可能的实现方式中,终端设备中的wms调用checkfocus方法之后,还包括:
checkfocus方法调用hasfocus方法;根据hasfocus方法的返回值,确定checkfocus方法的返回值。这样,终端设备可以通过checkfocus方法调用hasfocus方法,获取第二应用与输入法显示相关的参数,进而快速、准确的判断输入法在第二应用的界面上是否显示。
10.一种可能的实现方式中,根据hasfocus方法的返回值,确定checkfocus方法的返回值,包括:当hasfocus方法的返回值为false时,确定第一应用的界面对应的第一视图为view,第二应用的界面对应的第二视图为空值;当hasfocus方法的返回值为true时,确定第二视图为view;当第一视图与第二视图相等时,或者,当第二视图为空值时,得到checkfocus方法的返回值为fasle;当第一视图与第二视图不相等且第二视图为非空值时,得到checkfocus方法的返回值为true。这样,checkfocus方法可以通过hasfocus方法,检测第二视图上是否有输入法焦点,快速、准确的判断输入法是否显示。
11.一种可能的实现方式中,终端设备判断是否能获取到第一窗口令牌,包括:终端设备中的wms调用getwindowtoken方法;当getwindowtoken方法的返回值为true时,终端设备判断能获取到第一窗口令牌;当getwindowtoken方法的返回值为false时,终端设备判断不能获取到第一窗口令牌。这样,终端设备可以基于终端设备能否获取到窗口令牌,进行后续输入法是否显示的判断,能够准确、快速的判断输入法是否显示。
12.一种可能的实现方式中,终端设备判断是否能获取到第一窗口令牌之前,还包括:终端设备中的wms调用insetcontrolchange方法,通过insetcontrolchange方法将控制目标指向的对象由第一应用的界面修改为null。这样,将控制目标指向的对象由第一应用的界面修改为null后,进行后续输入法是否显示的判断时,可以不使用第一应用的输入法显示相关参数,提升判断结果的准确性。
13.一种可能的实现方式中,终端设备显示第一应用的界面之前,还包括:终端设备接收到针对第一应用中编辑框控件的第二操作;终端设备显示第一应用的界面,包括:响应于第二操作,终端设备显示第一应用的界面,且终端设备中的输入管理服务ims建立输入法与编辑框控件的链接。这样,终端设备可以响应于用户的触控操作,调起输入法服务并在应用界面显示输入法,满足用户的使用需求。
14.第二方面,本技术实施例提供一种输入法显示控制装置。该输入法显示控制可以是终端设备,也可以是终端设备内的芯片或者芯片系统。该输入法显示控制装置可以包括处理单元和显示单元。处理单元用于实现第一方面或第一方面的任意一种可能的实现方式中与处理相关的任意方法。显示单元用于实现第一方面或第一方面的任意一种可能的实现方式中与显示相关的任意方法。当该输入法显示控制是终端设备时,该处理单元可以是处理器,该显示单元可以是显示屏。该输入法显示控制装置还可以包括存储单元,该存储单元可以是存储器。该存储单元用于存储指令,该处理单元执行该存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种方法。当该输入法显示控制装置是终端设备内的芯片或者芯片系统时,该处理单元可以是处理器。该处理单元执行存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种方法。该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存等),也可以是该终端设备内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器等)。
15.示例性的,显示单元用于显示第一应用的界面,第一应用的界面中包括输入法的
输入界面;处理单元用于接收到第一操作;第一操作用于将第一应用向第二应用切换;响应于第一操作,处理单元还用于判断终端设备是否能获取到第一窗口令牌;当终端设备不能获取到第一窗口令牌时,处理单元还用于取消输入法的输入界面的显示,以及向第二应用的界面切换。
16.一种可能的实现中,当终端设备获取到第一窗口令牌时,处理单元还用于获取第二窗口令牌;当第二窗口令牌,与第一窗口令牌不相等时,终端设备中的窗口管理服务wms调用checkfocus方法;当checkfocus方法的返回值为false时,处理单元还用于取消输入法的输入界面的显示,以及向第二应用的界面切换。
17.一种可能的实现中,当checkfocus方法的返回值为true时,处理单元还用于不取消输入法的输入界面的显示,以及向第二应用的界面切换。
18.一种可能的实现中,checkfocus方法调用hasfocus方法;根据hasfocus方法的返回值,确定checkfocus方法的返回值。
19.一种可能的实现中,当hasfocus方法的返回值为false时,确定第一应用的界面对应的第一视图为view,第二应用的界面对应的第二视图为空值;当hasfocus方法的返回值为true时,确定第二视图为view;当第一视图与第二视图相等时,或者,当第二视图为空值时,得到checkfocus方法的返回值为fasle;当第一视图与第二视图不相等且第二视图为非空值时,得到checkfocus方法的返回值为true。
20.一种可能的实现中,终端设备中的wms调用getwindowtoken方法;当getwindowtoken方法的返回值为非空值时,处理单元还用于判断能获取到第一窗口令牌;当getwindowtoken方法的返回值为空值时,处理单元还用于判断不能获取到第一窗口令牌。
21.一种可能的实现中,终端设备中的wms调用insetcontrolchange方法,通过insetcontrolchange方法将控制目标指向的对象由第一应用的界面修改为null。
22.一种可能的实现中,处理单元还用于接收到针对第一应用中编辑框控件的第二操作;响应于第二操作,显示单元还用于显示第一应用的界面,且终端设备中的输入管理服务ims建立输入法与编辑框控件的链接。
23.第三方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序。计算机程序被处理器执行时实现如第一方面的方法。
24.第四方面,本技术实施例提供一种计算机程序产品,计算机程序产品包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面的方法。
25.第五方面,本技术实施例提供了一种芯片,芯片包括处理器,处理器用于调用存储器中的计算机程序,以执行如第一方面所述的方法。
26.应当理解的是,本技术的第二方面至第五方面与本技术的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
27.图1为本技术实施例提供的应用场景示意图;图2为可能实现中的输入法显示逻辑图;图3为本技术实施例提供的终端设备的结构示意图;
图4为本技术实施例提供的一种终端设备的软件架构示意图;图5a为本技术实施例提供的判断输入法是否显示的方法示意图;图5b为本技术实施例提供的输入法的组成示意图;图5c为本技术实施例提供的应用界面切换时的状态示意图;图6为本技术实施例提供的一种具体的输入法显示控制方法示意图;图7为本技术实施例提供的输入法显示控制方法示意图;图8为本技术实施例提供的一种输入法显示控制装置的结构示意图;图9为本技术实施例提供的一种电子设备的硬件结构示意图;图10为本技术实施例提供的一种芯片的结构示意图。
具体实施方式
28.为了便于清楚描述本技术实施例的技术方案,以下,对本技术实施例中所涉及的部分术语和技术进行简单介绍:1.界面:界面(activity)为应用(application)提供了可视化的用户界面,activity可以监听用户在界面上的操作,并对用户的操作做出响应,实现与用户的交互。
29.2.窗口:窗口(window)可以理解为activity的下属,每个activity对应一个window,window用于承载和管理视图;3.视图:视图(view)是android中控件的基类,例如,view可以是搜索(search)控件的基类。view需要通过window来展示在界面activity上,一个activity上可以包括一个或多个view。
30.4、其他术语为了便于清楚描述本技术实施例的技术方案,本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
31.本技术实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,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可以是单个,也可以是多个。
32.需要说明的是,本技术实施例中的“在
……
时”,可以为在某种情况发生的瞬时,也可以为在某种情况发生后的一段时间内,本技术实施例对此不作具体限定。此外,本技术实施例提供的显示界面仅作为示例,显示界面还可以包括更多或更少的内容。
33.5、终端设备本技术实施例的终端设备也可以为任意形式的电子设备,例如,电子设备可以包括具有图像处理功能的手持式设备、车载设备等。例如,一些电子设备为:手机(mobile phone)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备(mobile internet device,mid)、可穿戴设备,虚拟现实(virtual reality,vr)设备、增强现实(augmented reality,
ar)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、蜂窝电话、无绳电话、会话启动协议(session initiation protocol,sip)电话、无线本地环路(wireless local loop,wll)站、个人数字助理(personal digital assistant,pda)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,5g网络中的终端设备或者未来演进的公用陆地移动通信网络(public land mobile network,plmn)中的终端设备等,本技术实施例对此并不限定。
34.作为示例而非限定,在本技术实施例中,该电子设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
35.此外,在本技术实施例中,电子设备还可以是物联网(internet of things,iot)系统中的终端设备,iot是未来信息技术发展的重要组成部分,其主要技术特点是将物品通过通信技术与网络连接,从而实现人机互连,物物互连的智能化网络。
36.本技术实施例中的电子设备也可以称为:终端设备、用户设备(user equipment,ue)、移动台(mobile station,ms)、移动终端(mobile terminal,mt)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置等。
37.在本技术实施例中,电子设备或各个网络设备包括硬件层、运行在硬件层之上的操作系统层,以及运行在操作系统层上的应用层。该硬件层包括中央处理器(central processing unit,cpu)、内存管理单元(memory management unit,mmu)和内存(也称为主存)等硬件。该操作系统可以是任意一种或多种通过进程(process)实现业务处理的计算机操作系统,例如,linux操作系统、unix操作系统、android操作系统、ios操作系统或windows操作系统等。该应用层包含浏览器、通讯录、文字处理软件、即时通信软件等应用。
38.示例性的,图1为本技术实施例提供的一种应用场景示意图。在图1对应的实施例中,以终端设备为手机进行示例说明,该示例并不构成对本技术实施例的限定,为便于描述,后续实施例均以手机为例进行说明。
39.如图1中的a所示,手机的显示界面为设置应用的界面。响应于用户选择搜索栏(search bar)101的操作,手机的显示界面由图1中的a切换为图1中的b。
40.如图1中的b所示,手机的显示界面包括搜索栏101以及输入法102。当手机接收到用户选择主界面键103的操作时,手机的显示界面由图1中的b切换为图1中的c。
41.可能的实现中,用户还可以通过平移滑动应用界面的底部等手势操作的方式实现不同应用之间的切换,本技术实施例对此不做具体限定。
42.如图1中的c所示,手机的显示界面为主界面,也可以称为桌面(launcher),输入法102短暂显示于主界面后消失。输入法消失后的界面如图1中的d所示。
43.如图1中的d所示,手机的显示界面为主界面,主界面上不显示输入法102。
44.示例性的,图2为可能实现中的输入法显示逻辑图。
45.以手机为例,当手机接收到用户由应用a切换到应用b的操作时,相应的,手机的显示界面由应用a的界面activitya切换到应用b的界面activityb。其中,应用a的界面activitya显示输入法,应用b的界面activityb不显示输入法。
46.当手机的显示界面由activitya切换到activityb时,手机响应于controlchange的指令,将控制输入法的controltarget由activitya切换至activityb。
47.一种情况下,当应用a切换到应用b的速度较快时,也就是说,activityb的进程拉起较快时,控制输入法的controltarget可以由activitya切换到activityb。由于activityb上不显示输入法,checkfocus检测不到输入法focus,ime的状态为隐藏(hide),输入法不显示在activityb上。
48.另一种情况下,当应用a切换到应用b的速度较慢时,也就是说,应用b由于系统负载较重等原因,应用b对应的activityb没有创建完成时,控制输入法的controltarget先由activitya切换到null,activityb创建完成后,controltarget由null切换到activityb。
49.当controltarget由activitya切换到null时,如果手机将null视为activitya,由于应用a的界面activitya显示输入法,checkfocus可以检测到输入法focus,ime的状态为显示(show),输入法显示在activityb上。当activityb创建完成后,controltarget由null切换到activityb时,checkfocus检测不到输入法focus,ime的状态切换为hide,输入法不显示在应用b的界面上。
50.也就是说,当手机的显示界面由显示输入法的应用a的界面,切换到不显示输入法的应用b的界面时,输入法可能出现在应用b的界面短暂显示后消失的现象,也就是输入法闪烁的现象。
51.有鉴于此,本技术实施例提供一种输入法控制方法,在终端设备的显示界面由显示输入法的应用界面切换到不显示输入法的另一应用界面的过程中,该方法可以基于获取到的窗口令牌预先判断出另一应用界面上不显示输入法,使得输入法在另一应用界面上不出现闪烁的情况。这样,可以提升界面切换过程中用户视觉体验的流畅度,进而提升用户的使用体验。
52.图3示出了终端设备100的结构示意图。
53.终端设备100可以包括处理器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等。
54.可以理解的是,本发明实施例示意的结构并不构成对终端设备100的具体限定。在
本技术另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
55.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
56.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
57.在一些实施例中,处理器110可以包括一个或多个接口。
58.终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
59.终端设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。
60.终端设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
61.终端设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
62.触摸传感器180k,也称“触控器件”。触摸传感器180k可以设置于显示屏194,由触摸传感器180k与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180k用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于终端设备100的表面,与显示屏194所处的位置不同。例如,本技术实施例中,当用户选择终端设备显示界面上的搜索栏时,触摸传感器180k可以将检测到的用户触摸操作传递给应用处理器,应用处理器对接收到的触摸事件类型判断后,终端设备的显示界面上可以显示输入法。
63.电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的android系统为例,示例性说明电子设备100的软件结构。
64.图4是本发明实施例提供的终端设备100的软件结构框图。
65.分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。
66.应用程序层可以包括一系列应用程序包。
67.如图4所示,应用程序包可以包括相机,图库,设置,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。本技术实施例中,图库、设置、地图,导航以及短信息等应用
中,响应于用户选择应用界面上的输入框或搜索栏等操作,上述应用的界面上可以显示输入法。
68.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
69.如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器,任务管理器等。
70.窗口管理器(window manager)用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
71.窗口管理服务(window manager service,wms)是窗口管理器的具体实现,本技术实施例中,wms用于创建和管理输入法的界面,建立controltarget与acitivty的关联,还可以用于判断并修改输入法的可见性。
72.内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
73.视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
74.电话管理器用于提供终端设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
75.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
76.通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。
77.活动管理器(activity manager)用于管理应用程序生命周期并提供常用的导航退回功能。
78.活动管理服务(activity manager service,ams)是活动管理器的具体实现,本技术实施例中,ams用于修改activitya和activityb的状态。
79.输入管理服务(input manager service,ims)用于管理输入事件,本技术实施例中,ims用于判断并修改输入法的可见性。
80.系统用户界面(systemui)为系统提供了基础的显示界面,例如:终端设备屏幕顶端的状态栏、屏幕底部的导航栏、下拉界面的快速设置栏等。本技术实施例中,systemui可以响应于用户切换应用的操作,拉起新的应用对应的界面。
81.系统服务器(system server)用于启动和管理系统服务(system service),wms、ams以及ims是运行在system server进程中的服务。
82.android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
83.核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
84.应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线
程管理,安全和异常的管理,以及垃圾回收等功能。
85.系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)等。
86.表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
87.媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如: mpeg4,h.264,mp3,aac,amr,jpg,png等。
88.三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
89.2d图形引擎是2d绘图的绘图引擎。
90.内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
91.示例性的,图5a为本技术实施例提供的判断输入法是否显示的方法示意图。如图5a所示,以判断设置应用中是否显示输入法为例,方法如下:s501、终端设备接收到用户的触控操作,systemui拉起新的activity。
92.本技术实施例中,触控操作可以指用于调起输入法服务的操作,以触控操作作用于如图1所示的设置应用的界面为例,触控操作可以包括用户点击设置应用的搜索栏101的操作。可以理解的是,触控操作也可以作用于输入框等,本技术实施例对此不做具体限定。
93.在接收到触控操作之前,终端设备显示的界面可以为activitya1,响应于用户的触控操作,systemui拉起新的activity,其中,新的activity界面可以称为activitya。
94.以设置应用为例,如图1中的a所示,手机的显示界面为设置应用的界面,响应于用户选择搜索栏的操作,手机的显示界面由图1中的a切换为图1中的b。其中,图1中的a可以对应于activitya1,图1中的b可以对应于activitya。
95.ams将activitya1的状态由resume修改为pause,ams将activitya的状态置为resume。
96.其中,resume可以指运行状态,也就是activity处于运行且能与用户交互的状态,例如,当activity处于resume状态时,用户可以点击activity上的搜索栏,响应于用户的操作,activity上可以显示输入法,实现与用户的交互。pause可以指暂停状态,也就是activity处于暂停运行且不能与用户交互的状态。
97.s502、ims建立输入法与设置应用的搜索栏的关联。
98.本技术实施例中,ims可以由systemserver启动。systemserver是系统用于启动服务(service)的入口。ims启动后,可以建立输入法与设置应用的搜索栏的逻辑关联。
99.s503、ims调用wms。
100.ims调用wms内部相关接口,wms可以建立controltarget与activitya的关联,使得controltarget指向activitya,其中,controltarget指向activitya,表示输入法由activitya控制。也可以理解为,wms可以建立输入法与界面之间的关联。
101.也就是说,在接收到对搜索栏的触发后,如图5b所示,为了实现输入法的显示,需要ims建立输入法与搜索栏的逻辑关联,以及需要wms建立输入法与界面的关联。
102.进一步的,wms可以管理输入法界面对应的窗口。
103.s504、判断是否显示输入法。
104.由于输入法界面对应的窗口由wms管理,输入法的逻辑由ims建立,所以wms和ims都需要进行输入法是否显示的判断,当ims判断输入法不显示和/或wms判断输入法不显示时,输入法不能显示。
105.其中,ims判断输入法是否显示的方式可以与wms判断输入法是否显示的方式相似,下面将具体说明ims判断输入法是否显示的方式,wms判断输入法是否显示的方式不做赘述。
106.示例性的,ims可以调用checkfocus方法,判断activitya上是否显示输入法。例如,checkfocus方法调用hasfocus方法查询activitya对应的view的focus属性(或称为hasfocus的值),hasfocus的值为fasle时,表示activitya对应的view没有获取到输入法焦点focus;hasfocus的值为true时,表示activitya对应的view获取到输入法焦点focus。其中,每个view可以对应于一个focus属性,focus属性由应用中自带的参数mattachinfo.mhaswindowfocus决定。
107.进一步的,结合hasfocus的值,s5041-s5045示出了一种ims判断输入法是否显示的具体实现。
108.s5041、当hasfocus的值为否即false时,mservedview为view,mnextservedview为null。
109.其中,mservedview可以指接收到用户触控操作前、没有切换的view,mnextservedview可以指接收到用户触控操作后、要切换的下一个view。
110.当hasfocus的值为false时,说明mnextservedview没有获取到输入法焦点foucs。在mnextservedview没有获取到输入法焦点focus的情况下,mnextservedview为null,表示mnextservedview上不能显示输入法。
111.s5042、当hasfocus的值为是即true时,mnextservedview为view。
112.当hasfocus的值为true时,说明mnextservedview获取到输入法焦点foucs。在mnextservedview获取到输入法焦点focus的情况下,mnextservedview为view,表示mnextservedview上可以显示输入法。
113.s5043、ims判断条件1或条件2是否成立。
114.其中,条件1可以指:mservedview与mnextservedview的值相等,条件2可以指:mnextservedview的值为null。
115.s5044、当条件1或者条件2成立时,checkfocus的值为false,ims将contorltarget中的可见性修改为hide。
116.可能的实现中,当条件1:mservedview与mnextservedview的值相等成立时,说明接收到用户触控操作前、没有切换的view,与接收到用户触控操作后、要切换的下一个view是同一个view,在系统不需强制显示输入法时,checkfocus的值为false,ims将contorltarget中的可见性置为hide,输入法不显示。
117.可能的实现中,mnextservedview的值为null,说明mnextservedview上不能显示输入法,checkfocus的值为false,ims将contorltarget中的可见性修改为hide,输入法不显示。
118.s5045、当条件1和条件2不成立时,checkfocus的值为true,ims将contorltarget中的可见性修改为show。
119.也就是说,在不满足条件1以及不满足条件2的情况下,checkfocus的值为true,表示mnextservedview上检测到输入法焦点focus,inputmanagerservice将contorltarget中的可见性修改为show,输入法显示在activitya界面上。
120.可以理解的是,当ims和wms均判断输入法显示成立,且contorltarget中的可见性为show时,输入法显示可以显示在界面上。
121.可以理解的是,上述的s501中,终端设备接收到用户的用于调起输入法服务的触控操作时,systemui也可以不拉起新的activity,例如,短信应用中,当终端设备接收到用户选择短信界面输入框的操作时,短信应用对应的activity不发生变化。
122.可能的实现中,上述的s503也可以在s501之前执行,例如,在终端设备启动设置应用,设置应用调用addwindow首次创建activitya对应的window时,wms建立controltarget与activitya的关联,使得controltarget指向activitya,wms将输入法的可见性设置为hide。
123.本技术实施例以设置应用中显示输入法为例,在设置应用中显示输入法之后,终端设备可能基于用户触发等向其他应用(例如主界面应用)切换,切换后的应用中可能不显示输入法,则本技术实施例可以基于获取到的窗口令牌判断出另一应用界面上不显示输入法,使得输入法在另一应用界面上不出现闪烁的情况。
124.示例性的,图5c为本技术实施例提供的应用界面切换时的状态示意图。
125.图5c中,以应用a切换为应用b,应用a的界面为activitya,应用b的界面为主界面activityb为例进行说明。
126.如图5c所示,手机显示应用a的界面activitya,当手机接收到用户点击三键导航中的主界面键的操作时,响应于用户的操作,手机将activitya向主界面activityb切换。
127.具体的,当手机接收到用户点击主界面键的操作时,应用框架层中的ams将activitya的状态由resume修改为pause。
128.可以理解的是,上述的各状态可以替换为任意形式的字符或数值,各状态对应的字符或数值可以区分activity所处的状态即可,本技术实施例对此不做具体限定。
129.当ams将activitya的状态由resume修改为pause后,systemui响应于用户点击三键导航中的主界面键的操作,拉起主界面activityb。
130.可能的实现中,当终端设备接收到用户通过手势将activitya切换为activityb的操作时,由手势拉起activityb。
131.activityb拉起后,ams将activityb的状态置为resume。
132.当终端设备响应于用户的操作,将activitya向activityb切换时,在activityb没有创建完成的情况下,wms无法获取到controltarget对应的控制者为activityb,也就是说,wms无法通过activityb的相关参数(如activityb对应的view的focus属性),判断在activityb上是否显示输入法,wms只能获取到activitya的相关参数,如果wms使用显示输入法的activitya的相关参数进行输入法是否显示的判断时,不显示输入法的activityb上显示输入法,不符合用户的预期。
133.示例性的,针对不显示输入法的activityb上显示输入法的问题,图6为本技术实施例提供的一种具体的输入法显示控制方法示意图。图6中,以应用a切换为应用b,应用a的界面为activitya,activitya上显示输入法,应用b的界面为主界面activityb,activityb
不显示输入法为例进行说明,可以理解的是,该示例并不构成对输入法显示控制方法的具体限定。
134.s601、终端设备接收到用户对三键导航中主界面键的操作。
135.用户可以按照如图1所示的方式,对三键导航中的主界面按键进行操作,此处不再赘述。终端设备响应于用户对三键导航中主界面键的操作,将终端设备的显示界面由activitya向activityb切换。
136.s602、wms调用getcontrol方法,判断是否获取到控制者。
137.本技术实施例中,getcontrol用于获取控制者,其中,控制者用于控制输入法。
138.当getcontrol为空值时,则wms判断不能获取到控制者,终端设备可以执行后续的步骤s604-s608。
139.当getcontrol为非空值时,则wms判断能获取到控制者,终端设备可以执行后续的步骤s603。
140.s603、当getcontrol的返回值为非空值时,wms调用insetcontrolchange,利用insetcontrolchange将controltarget由activitya修改为activityb。
141.当getcontrol的为非空值时,也就是在getcontrol可以获取到控制者时,wms可以调用insetcontrolchange,insetcontrolchange将controltarget由activitya修改为activityb。
142.insetcontrolchange将controltarget由activitya修改为activityb后,可以理解为应用b已经拉起,终端设备从应用a的界面切换为显示应用b的界面。则当应用b的界面中接收到输入法显示的请求时,应用b的界面上可以显示输入法,此处不再赘述。
143.s604、当getcontrol的为空值时,insetcontrolchange将controltarget由activitya修改为null。
144.当getcontrol的返回值为空值时, getcontrol不能获取到控制输入法的控制者activityb,wms调用insetcontrolchange将控制输入法的controltarget由activitya修改为null。
145.s605、wms调用getwindowtoken方法,判断是否获取到窗口令牌(window token)。
146.由于在创建activityb的过程中,window创建流程触发较早,所以可以通过获取window对应的windowtoken,来判断activityb的界面上是否显示输入法。wms调用getwindowtoken方法,判断是否获取到windowtoken。
147.当getwindowtoken的返回值为空值时,则wms判断不能获取到窗口令牌,终端设备可以执行后续的s608。
148.当getwindowtoken的返回值为非空值时,则wms判断能获取到窗口令牌,终端设备可以执行后续的s606-607。
149.s606、当wms判断能获取到窗口令牌时,判断servedview.getwindowtoken与windowtoken是否不相等。
150.其中,servedview.getwindowtoken可以指servedview对应的windowtoken,servedview为activitya对应的view。
151.s607、当servedview.getwindowtoken与windowtoken不相等时,wms调用checkfocus判断是否显示输入法。
152.当servedview.getwindowtoken与windowtoken不相等成立时,也就是说,servedview对应的windowtoken与wms通过getwindowtoken获取到的windowtoken不相等,说明wms通过getwindowtoken获取到的windowtoken为activityb对应的windowtoken。
153.wms基于activityb对应的windowtoken,可以获取到activityb的view对应的focus属性,也就是hasfocus的值,进而,wms可以利用checkfocus方法判断activityb界面是否显示输入法。
154.当checkfocus的返回值为true时,输入法显示;当checkfocus的返回值为false时,输入法不显示。
155.wms调用checkfocus方法判断activityb界面是否显示输入法可以参照图5a中对checkfocus方法的相关描述,此处不再赘述。
156.s608、当wms判断不能获取到窗口令牌时,输入法不显示。
157.当getwindowtoken的返回值为空值时,说明wms没有获取到windowtoken,也就是说,activityb对应的window没有创建完成,不满足输入法可以显示的条件,输入法不显示。
158.这样,在终端设备从显示输入法的activitya向不显示输入法的activityb切换时,可以通过windowtoken判断输入法是否显示,使得输入法可以在activityb上不发生短暂显示后消失的闪烁现象,提升用户的视觉流畅度和使用体验感。
159.示例性的,图7示出了本技术实施例的一种输入法显示控制方法。方法包括:s701、终端设备显示第一应用的界面,第一应用的界面中包括输入法的输入界面。
160.本技术实施例中,第一应用的界面可以如图1中b所示,第一应用的界面中包括输入法的输入界面,其中,输入法的输入界面可以包括软键盘、表情面板、语音输入面板等输入界面,本技术实施例对此不做具体限定。第一应用的界面也可以理解为图6中的activitya。
161.s702、终端设备接收到第一操作;第一操作用于将第一应用向第二应用切换。
162.本技术实施例中,第一操作可以对应于图1中b所示的用户选择三键导航中主界面键103的操作,可能的实现中,第一操作还可以为用户平移滑动应用界面的底部等用于切换不同应用的操作,本技术实施例对此不做具体限定。
163.第一应用和第二应用为不同的应用,第一应用可以对应于图1中a和图1中b所示的设置应用,第二应用可以对应于图1中c和图1中d所示的主界面应用。
164.响应于第一操作,第一应用向第二应用切换,终端设备的显示界面由第一应用的界面向第二应用的界面切换。例如,当终端设备接收到用户选择三键导航中主界面键的操作时,设置应用向主界面应用切换,设置应用的界面向主界面切换。
165.s703、响应于第一操作,终端设备判断是否能获取到第一窗口令牌。
166.本技术实施例中,第一窗口令牌可以对应于步骤s605中wms通过getwindowtoken方法获取的windowtoken,窗口令牌的相关描述可以参照步骤s605中对windowtoken的描述,此处不再赘述。
167.可以理解的是,当第二应用对应的窗口没有创建完成且终端设备能获取到第一窗口令牌时,第一窗口令牌可以为第一应用的界面对应的窗口令牌;当第二应用对应的窗口创建完成时,第一窗口令牌可以为第二应用的界面对应的窗口令牌。
168.s704、当终端设备不能获取到第一窗口令牌时,终端设备取消输入法的输入界面
的显示,以及向第二应用的界面切换。
169.本技术实施例中,第二应用的界面可以如图1中d所示,其中,第二应用的界面中不包括输入法的输入界面。例如,第二应用的界面可以是主界面、相机应用的界面等,本技术实施例对此不做具体限制。第二应用的界面也可以理解为图6中的activityb。
170.当终端设备不能获取到第一窗口令牌时,可以对应于步骤s608,输入法不在第二应用的界面上显示。也就是说,终端设备不能获取到第一窗口令牌时,由于没有输入法显示的窗口,输入法不具备显示的条件,故输入法不显示。
171.这样,输入法不在第二应用的界面上显示,不会发生输入法闪烁现象,可以提升用户的视觉流畅度和用户体验感。
172.s705、当终端设备获取到第一窗口令牌时,终端设备获取第二窗口令牌;当第二窗口令牌,与第一窗口令牌不相等时,终端设备中的窗口管理服务wms调用checkfocus方法。
173.当checkfocus方法的返回值为false时,终端设备取消输入法的输入界面的显示,以及向第二应用的界面切换。
174.本技术实施例中,第二窗口令牌可以为基于终端设备调用的视图获取到的窗口令牌,第二窗口令牌可以对应于步骤s606中的servedview.getwindowtoken。
175.对应于步骤s606,当第一窗口令牌与第二窗口令牌不相等时,也就是说,第一窗口令牌和第二窗口令牌不是同一个窗口令牌,则第一窗口令牌为第二应用对应的窗口令牌,终端设备可以获取到第二应用与输入法显示相关的参数,进而终端设备中的窗口管理服务wms可以通过checkfocus方法判断输入法是否显示在第二应用的界面上。
176.其中,checkfocus方法用于判断输入法是否显示,当checkfocus的返回值为true时,输入法可以显示,当checkfocus的返回值为false时,输入法不显示。
177.这样,终端设备可以基于获取到的窗口令牌,判断输入法在第二应用的界面上是否显示,判断输入法在第二应用的界面上不显示时,输入法不在第二应用的界面上显示,不会发生输入法闪烁现象,可以提升用户的视觉流畅度和用户体验感。
178.进一步的,结合hasfocus方法,s7051-s7052示出了一种判断输入法是否显示的具体实现。
179.s7051、checkfocus方法调用hasfocus方法。
180.当第一窗口令牌为第二应用对应的窗口令牌时,终端设备可以获取到第二应用的与输入法显示相关的参数,例如第二应用的界面对应的视图的输入法焦点属性,其中,输入法焦点属性可以调用hasfocus方法查询获取。hasfocus方法的相关描述可以参照步骤s504中对hasfocus方法的相关描述,此处不再赘述。
181.根据hasfocus方法的返回值,确定checkfocus方法的返回值。其中,hasfocus方法的返回值可以为true,也可以为false。
182.这样,终端设备可以通过checkfocus方法调用hasfocus方法,获取第二应用与输入法显示相关的参数,进而快速、准确的判断输入法在第二应用的界面上是否显示。
183.s7052、当hasfocus方法的返回值为false时,确定第一应用的界面对应的第一视图为view,第二应用的界面对应的第二视图为空值;当hasfocus方法的返回值为true时,确定第二视图为view。
184.当第一视图与第二视图相等时,或者,当第二视图为空值时,得到checkfocus方法
的返回值为fasle。
185.当第一视图与第二视图不相等且第二视图为非空值时,得到checkfocus方法的返回值为true。
186.本技术实施例中,第一视图可以为第一应用的界面对应的视图,也就是接收到第一操作前、没有切换的视图;第二视图可以为第二应用的界面对应的视图,也就是接收到第一操作后、切换的视图;对应于步骤s5041、s5042,第一视图可以对应于mservedview,第二视图可以对应于mnextservedview。
187.当hasfocus方法的返回值为false时,也就是第二视图没有获取到输入法焦点的情况下,第一视图为view,第二视图为空值;当hasfocus方法的返回值为true时,也就是第二视图获取到输入法焦点的情况下,第二视图为view。
188.当第一视图与第二视图相等时,也就是第一视图和第二视图为同一个视图时,或者,当第二视图为空值时,checkfocus方法的返回值为fasle,则输入法在第二应用的界面上不显示。
189.当第一视图与第二视图不相等且第二视图为非空值时,得到checkfocus方法的返回值为true,则输入法在第二应用的界面上显示。
190.这样,checkfocus方法可以通过hasfocus方法,检测第二视图上是否获取到输入法焦点,快速、准确的判断输入法是否显示。
191.s706、当checkfocus方法的返回值为true时,终端设备不取消输入法的输入界面的显示,以及向第二应用的界面切换。
192.也就是说,当checkfocus方法的返回值为true时,判断在第二应用的界面上可以显示输入法的输入界面。
193.这样,在第二应用的界面上需要显示输入法的界面时,输入法界面可以显示,能够满足用户的使用需求,提升用户的使用体验。
194.可以理解的是,上述步骤中,s705-s706为可选的步骤。
195.可能的实现中,终端设备中的wms调用getwindowtoken方法;当getwindowtoken方法的返回值为非空值时,终端设备判断能获取到第一窗口令牌;当getwindowtoken方法的返回值为空值时,终端设备判断不能获取到第一窗口令牌。
196.其中,getwindowtoken方法用于获取windowtoken,getwindowtoken的具体描述可以参照步骤s605中的描述,此处不再赘述。
197.这样,终端设备可以基于终端设备能否获取到窗口令牌,通过本技术实施例提供的输入法显示控制方法进行后续输入法是否显示的判断,能够准确、快速的判断输入法是否显示。
198.可能的实现中,终端设备判断是否能获取到第一窗口令牌之前,还包括:终端设备中的wms调用insetcontrolchange方法,通过insetcontrolchange方法将控制目标指向的对象由第一应用的界面修改为null。
199.其中,insetcontrolchange方法用于修改控制目标指向的对象,也就是控制者,控制目标指向的对象可以理解为步骤s603、步骤s604中的contorltarget。
200.对应于步骤s604,在终端设备不能获取到控制目标指向的对象为第二应用的界面
时,终端设备可以调用insetcontrolchange方法,将控制目标指向的对象指向的对象由第一应用的界面修改为null。
201.这样,将控制目标指向的对象由第一应用的界面修改为null后,进行后续输入法是否显示的判断时,可以不使用第一应用的输入法显示相关参数,提升判断结果的准确性。
202.可能的实现中,终端设备显示第一应用的界面之前,还包括:终端设备接收到针对第一应用中编辑框控件的第二操作;终端设备显示第一应用的界面,包括:响应于第二操作,终端设备显示第一应用的界面,且终端设备中的输入管理服务ims建立输入法与编辑框控件的链接。
203.其中,编辑框控件可以指输入框、搜索栏等用于调起输入法服务的控件,第二操作可以指终端设备接收到的用户选择编辑框控件的操作,用户可以通过单击、长按等方式选择编辑框控件,本技术实施例不做具体限定。
204.对应于步骤s501,第一应用中编辑框控件可以对应于设置应用的搜索栏,第二操作可以对应于用户的触控操作。当终端设备接收到用户的第二操作时,终端设备的界面上可以显示第一应用的界面。
205.对应于步骤s502,当ims启动后,终端设备中的ims可以建立输入法与编辑框控件的链接,也就是建立输入法与编辑框控件的逻辑关联。
206.这样,终端设备可以响应于用户的触控操作,调起输入法服务并在应用界面显示输入法,满足用户的使用需求。
207.上面结合图6-图7,对本技术实施例提供的方法进行了说明,下面对本技术实施例提供的执行上述方法的装置进行描述。如图8所示,图8为本技术实施例提供的一种输入法显示控制装置的结构示意图,该输入法显示控制装置可以是本技术实施例中的终端设备,也可以是终端设备内的芯片或芯片系统。
208.如图8所示,输入法显示控制装置800可以用于电路、硬件组件或者芯片中,该输入法显示控制装置包括处理单元801。其中,处理单元801用于支持输入法显示控制装置执行的步骤,例如,处理单元用于处理图6中的s601至s607的步骤。
209.一种可能的实现方式中,该输入法显示控制装置还可以包括:存储单元803。其中,存储单元803可以包括一个或者多个存储器,存储器可以是一个或者多个设备、电路中用于存储程序或者数据的器件。
210.存储单元803可以独立存在,通过通信总线与处理单元801相连。存储单元803也可以和处理单元801集成在一起。
211.以输入法显示控制装置可以是本技术实施例中的终端设备的芯片或芯片系统为例,存储单元803可以存储终端设备的方法的计算机执行指令,以使处理单元801执行上述实施例中终端设备的方法。存储单元803可以是寄存器、缓存或者随机存取存储器(random access memory,ram)等,存储单元803可以和处理单元801集成在一起。存储单元803可以是只读存储器(read-only memory,rom)或者可存储静态信息和指令的其他类型的静态存储设备,存储单元803可以与处理单元801相独立。
212.一种可能的实现方式中,输入法显示控制装置还可以包括:通信单元802。其中,通信单元802用于支持输入法显示控制装置与其它设备交互。示例性的,当该输入法显示控制装置是终端设备时,该通信单元802可以是通信接口或接口电路。当该输入法显示控制装置
是终端设备内的芯片或芯片系统时,该通信单元802可以是通信接口。例如通信接口可以为输入/输出接口、管脚或电路等。
213.本实施例的装置对应地可用于执行上述方法实施例中执行的步骤,其实现原理和技术效果类似,此处不再赘述。
214.图9为本技术实施例提供的一种电子设备的硬件结构示意图,如图9所示,该电子设备包括处理器901,通信线路904以及至少一个通信接口(图9中示例性的以通信接口903为例进行说明)。
215.处理器901可以是一个通用中央处理器(central processing unit,cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制本技术方案程序执行的集成电路。
216.通信线路904可包括在上述组件之间传送信息的电路。
217.通信接口903,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线局域网(wireless local area networks,wlan)等。
218.可能的,该电子设备还可以包括存储器902。
219.存储器902可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路904与处理器相连接。存储器也可以和处理器集成在一起。
220.其中,存储器902用于存储执行本技术方案的计算机执行指令,并由处理器901来控制执行。处理器901用于执行存储器902中存储的计算机执行指令,从而实现本技术实施例所提供的方法。
221.可能的,本技术实施例中的计算机执行指令也可以称之为应用程序代码,本技术实施例对此不作具体限定。
222.在具体实现中,作为一种实施例,处理器901可以包括一个或多个cpu,例如图9中的cpu0和cpu1。
223.在具体实现中,作为一种实施例,电子设备可以包括多个处理器,例如图9中的处理器901和处理器905。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
224.示例性的,图10为本技术实施例提供的一种芯片的结构示意图。芯片1000包括一个或两个以上(包括两个)处理器1020和通信接口1030。
225.在一些实施方式中,存储器1040存储了如下的元素:可执行模块或者数据结构,或者他们的子集,或者他们的扩展集。
226.本技术实施例中,存储器1040可以包括只读存储器和随机存取存储器,并向处理
器1020提供指令和数据。存储器1040的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,nvram)。
227.本技术实施例中,存储器1040、通信接口1030以及处理器1020通过总线系统1010耦合在一起。其中,总线系统1010除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。为了便于描述,在图10中将各种总线都标为总线系统1010。
228.上述本技术实施例描述的方法可以应用于处理器1020中,或者由处理器1020实现。处理器1020可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1020中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1020可以是通用处理器(例如,微处理器或常规处理器)、数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门、晶体管逻辑器件或分立硬件组件,处理器1020可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。
229.结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。其中,软件模块可以位于随机存储器、只读存储器、可编程只读存储器或带电可擦写可编程存储器(electrically erasable programmable read only memory,eeprom)等本领域成熟的存储介质中。该存储介质位于存储器1040,处理器1020读取存储器1040中的信息,结合其硬件完成上述方法的步骤。
230.在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。其中,计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在存储器中。
231.计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本技术实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,dvd))、或者半导体介质(例如,固态硬盘(solid state disk,ssd))等。
232.本技术实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
233.作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compact disc read-only memory,cd-rom)、ram、rom、eeprom或其它光盘存储器;计算机可读介质可
以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,dsl或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,dsl或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(cd),激光盘,光盘,数字通用光盘(digital versatile disc,dvd),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。
234.上述的组合也应包括在计算机可读介质的范围内。以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1