CN114816082A - 应用于云应用的输入控制方法、装置以及电子设备 - Google Patents

应用于云应用的输入控制方法、装置以及电子设备 Download PDF

Info

Publication number
CN114816082A
CN114816082A CN202110077732.0A CN202110077732A CN114816082A CN 114816082 A CN114816082 A CN 114816082A CN 202110077732 A CN202110077732 A CN 202110077732A CN 114816082 A CN114816082 A CN 114816082A
Authority
CN
China
Prior art keywords
input
character
cloud
input method
display area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110077732.0A
Other languages
English (en)
Inventor
吴家平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110077732.0A priority Critical patent/CN114816082A/zh
Publication of CN114816082A publication Critical patent/CN114816082A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation

Abstract

本申请实施例公开了一种应用于云应用的输入控制方法、装置以及电子设备,涉及云技术以及大数据等领域。该方法包括:在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域,第一操作是用户发起的用于启动输入法的操作;在通过本地输入法的字符输入区域接收字符编辑操作时,通过云输入法的输入字符显示区域显示字符编辑操作对应的文本编辑结果。采用该方法,在云应用中,用户可以根据需要切换为自己喜欢的本地输入法的字符输入区域进行字符编辑,能够有效提升用户的输入效率与输入体验,并使得云应用中的输入法的模式变得不再单一,提高了云应用中输入法的灵活性。

Description

应用于云应用的输入控制方法、装置以及电子设备
技术领域
本申请涉及云技术以及大数据等领域,尤其涉及一种应用于云应用的输入控制方法、装置以及电子设备。
背景技术
随着云技术的发展,越来越多的人开始使用云应用。云应用的工作原理是把传统软件“本地安装、本地运算”的使用方式变为“即取即用”的服务,通过互联网或局域网连接并操控远程服务器集群,完成业务逻辑或运算任务的一种新型应用,不仅可以帮助用户降低互联网技术(Internet Technology,简称IT)成本,更能大大提高工作效率。
以云游戏(Cloud gaming)为例,云游戏是一种以云计算技术为基础的在线游戏技术。云游戏运行在云端服务器上,一般是提供一种默认的云端输入法(也就是云游戏中预配置好的输入法)。当玩家在游戏中打字的时候,就会拉起默认的输入法。这种提供默认的输入法的方式,使得输入法模式单一,会存在用户由于使用不习惯而导致输入效率低,以及玩家打字体验不好的问题。
因此,如何解决云应用中输入法模式单一的问题,成为亟需解决的问题。
发明内容
本申请实施例提供了一种应用于云应用的输入控制方法、装置以及电子设备,能够有效提升用户的输入效率与输入体验,并提高了云应用中输入法的灵活性。
一方面,本申请实施例提供一种应用于云应用的输入控制方法,该方法包括:
在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和上述云应用对应的云输入法的输入字符显示区域,其中,上述第一操作是用户发起的用于启动输入法的操作;
在通过上述本地输入法的字符输入区域接收到字符编辑操作时,通过上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果。
一方面,本申请实施例提供了一种应用于云应用的输入控制装置,该装置包括:
输入法显示模块,用于在云应用的显示界面获取到第一操作时,显示终端设备的本地字符输入区域和上述云应用对应于云服务器的云端输入显示区域,其中,上述第一操作是用户发起的用于启动输入法的操作;
编辑结果显示模块,用于在通过上述本地字符输入区域接收到字符编辑操作时,通过上述云端输入显示区域显示上述字符编辑操作对应的编辑结果。
在一种可选的实施例中,上述输入法显示模块,用于:
响应于上述第一操作,向云服务器发送第一指令,以使上述云服务器基于上述第一指令启动云输入法,以使在上述终端设备上显示上述云输入法的输入字符显示区域,并向上述终端设备发送输入法启动消息;
响应于上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域。
在一种可选的实施例中,上述输入法显示模块,还用于:
响应于上述第一操作,隐藏上述本地输入法的输入字符显示区域以及上述云输入法的字符输入区域。
在一种可选的实施例中,上述输入法显示模块,用于:
不重叠的显示上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域。
在一种可选的实施例中,上述输入法显示模块,用于:
在上述本地输入法的字符输入区域的上方显示上述云输入法的输入字符显示区域;
在上述本地输入法的字符输入区域对应的本地输入法的输入字符显示区域,显示上述云输入法的输入字符显示区域。
在一种可选的实施例中,上述编辑结果显示模块,用于:
在通过上述本地输入法的字符输入区域接收到上述字符编辑操作时,向云服务发送上述字符编辑操作对应的事件消息;
接收上述云服务器基于上述事件消息发送的对应于上述云输入法的输入字符显示区域的渲染画面;
接收上述渲染画面,通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
在一种可选的实施例中,上述字符编辑操作包括字符输入操作、或字符修改操作、或字符删除操作;
若上述字符编辑操作为上述字符输入操作,上述事件消息中包含对应的输入结果,上述渲染画面包括上述与上述输入结果对应的输入结果画面,上述编辑结果显示模块,用于:
通过上述云输入法的输入字符显示区域显示上述输入结果画面对应的文本编辑结果;
若上述字符编辑操作为上述字符修改操作,上述事件消息中包含与上述字符修改操作对应的字符修改信息,上述渲染画面包括与上述字符修改信息对应的字符修改指令,上述编辑结果显示模块,用于:
通过上述云输入法的输入字符显示区域显示上述字符修改画面对应的文本编辑结果;
若上述字符编辑操作为上述字符删除操作,上述事件消息中包含与上述字符删除操作对应的字符删除信息,上述渲染画面包括与上述字符删除信息对应的字符删除画面,上述编辑结果显示模块,用于:
通过上述云输入法的输入字符显示区域显示上述字符删除画面对应的文本编辑结果。
在一种可选的实施例中,上述输入法显示模块,还用于:
在上述云应用的显示界面获取到第二操作时,关闭上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域,其中,上述第二操作是用户发起的用于关闭输入法的操作。
在一种可选的实施例中,上述输入法显示模块,还用于:
响应于上述第二操作,向云服务器发送第二指令,以使上述云服务器基于上述第二指令关闭云输入法,以使在上述终端设备上关闭上述云输入法的输入字符显示区域,并向上述终端设备发送输入法关闭消息;
响应于上述输入法关闭消息,关闭本地输入法,关闭上述本地输入法的字符输入区域。
一方面,本申请实施例提供一种应用于云应用的输入控制方法,该方法包括:
接收终端设备发送的第一指令,其中,上述第一指令是上述终端设备响应于用户在云应用的显示界面的第一操作发送的,其中,上述第一操作是用户发起的用于启动输入法的操作;
响应于上述第一指令,启动云输入法,以使上述终端设备显示上述云应用对应的云输入法的输入字符显示区域,向上述终端设备发送输入法启动消息,以使上述终端设备根据上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域,并在通过上述终端设备的上述本地输入法的字符输入区域接收到用户的字符编辑操作时,以使在上述终端设备的上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果。
一方面,本申请实施例提供了一种应用于云应用的输入控制装置,该装置包括:
指令接收模块,用于接收终端设备发送的第一指令,其中,上述第一指令是上述终端设备响应于用户在云应用的显示界面的第一操作发送的,其中,上述第一操作是用户发起的用于启动输入法的操作;
编辑结果处理模块,用于响应于上述第一指令,启动云输入法,以使上述终端设备显示上述云应用对应的云输入法的输入字符显示区域,向上述终端设备发送输入法启动消息,以使上述终端设备根据上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域,并在通过上述终端设备的上述本地输入法的字符输入区域接收到用户的字符编辑操作时,控制在上述终端设备的上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果。
在一种可选的实施例中,上述编辑结果处理模块,用于:
接收上述终端设备发送的上述字符编辑操作对应的事件消息;
根据上述事件消息确定对应于上述云输入法的输入字符显示区域的渲染画面,向上述终端设备发送上述渲染画面,以使上述终端设备根据上述渲染画面,在上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
一方面,本申请实施例提供了一种应用于云应用的输入控制系统,该系统包括云服务器和终端设备,其中:
上述终端设备,用于接收用户在云应用的显示界面的第一操作,并响应于上述第一操作向上述云服务器发送第一指令,其中,上述第一操作是用户发起的用于启动输入法的操作;
上述云服务器,用于接收上述第一指令,响应于上述第一指令,启动云输入法,以使上述终端设备显示上述云应用对应的云输入法的输入字符显示区域,并向上述终端设备发送输入法启动消息;
上述终端设备,用于接收并响应于上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域;
上述终端设备,还用于在通过上述本地输入法的字符输入区域接收字符编辑操作时,向上述云服务器发送上述字符编辑操作对应的事件消息;
上述云服务器,还用于接收上述事件消息,根据上述事件消息确定对应于上述云输入法的输入字符显示区域的渲染画面,向上述终端设备发送上述渲染画面;
上述终端设备,还用于接收上述渲染画面,通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
在一种可选的实施例中,上述系统还包括代理服务器,上述终端设备通过上述代理服务器与上述云服务器进行信息交互。
一方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,该处理器和存储器相互连接;该存储器用于存储计算机程序;该处理器被配置用于在调用上述计算机程序时,执行上述应用于云应用的输入控制方法的任一种可能的实现方式提供的方法。
一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现上应用于云应用的输入控制方法的任一种可能的实现方式提供的方法。
一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述应用于云应用的输入控制方法的任一种可能的实现方式提供的方法。
本申请提供的技术方案带来的有益效果是:
在本申请实施例中,本申请实施例所提供的应用于云应用的输入控制方法、装置以及电子设备,用户在使用云应用时,可以通过云应用的显示界面启动输入法,此时,终端设备显示的是本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域,对于用户而言,可以通过显示的本地输入法的字符输入区域进行字符编辑,并通过云输入法的输入字符显示区域显示字符编辑操作对应的文本编辑结果。采用这种方式,一方面,用户可以将输入法切换为自己惯用的本地输入法进行字符编辑,不仅提高了用户的字符编辑效率以及用户的输入使用体验,而且解决了云应用中输入法模式单一的技术问题。另一方面,由于用户使用的是本地输入法进行字符编辑,对于用户而言,能够即时的看到本地输入法的按键响应,提高了用户的输入感知。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种应用于云应用的输入控制系统在一种应用场景下的实施流程示意图;
图2a是本申请实施例提供的一种应用于云应用的输入控制方法的流程示意图;
图2b是本申请实施例提供的一种云应用的显示界面的界面示意图;
图2c是本申请实施例提供的一种本地输入法的字符输入区域和云输入法的输入字符显示区域的示意图;
图2d是本申请实施例提供的一种文本编辑过程的示意图;
图2e是本申请实施例提供的一种文本编辑结果的示意图;
图2f是本申请实施例提供的一种发送文本编辑结果的示意图;
图3a是本申请实施例提供的另一种应用于云应用的输入控制方法的流程示意图;
图3b是本申请实施例提供的一种重写Android系统中的输入法得到云输入法的示意图;
图3c是本申请实施例提供的一种云输入法与云游戏后端的通讯过程的流程示意图;
图3d是本申请实施例提供的一种云输入法和云文本框的界面示意图;
图3e是本申请实施例提供的另一种重写Android系统中的输入法得到云输入法的示意图;
图3f是本申请实施例提供的一种云输入法向云游戏客户端发送消息的流程示意图;
图3g是本申请实施例提供的一种云文本框和本地输入法的软件盘的显示高度的示意图;
图3h是本申请实施例提供的一种重载输入、删除、完成输入接口的示意图;
图3i是本申请实施例提供的一种云游戏客户端向云输入法发送消息的流程示意图;
图4是本申请实施例提供的分布式系统100应用于区块链系统的一个可选的结构示意图;
图5是本申请实施例提供的区块结构(Block Structure)一个可选的示意图;
图6是本申请实施例提供的一种应用于云应用的输入控制装置的结构示意图;
图7是本申请实施例提供的另一种应用于云应用的输入控制装置的结构示意图;
图8是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的应用于云应用的输入控制方法涉及云技术的多种领域,如云技术(Cloud technology)中的云计算、云服务、云游戏、云视频等,以及大数据领域中的相关数据计算处理领域。
云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。本申请实施例所提供的应用于云应用的输入控制方法可基于云技术中的云计算(cloud computing)实现。
云计算是指通过网络以按需、易扩展的方式获得所需资源,是网格计算(GridComputing)、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
云游戏(Cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
云视频(Cloud video)是指基于云计算商业模式应用的视频网络平台服务。在云平台上,所有的视频供应商,代理商,策划服务商,制作商,行业协会,管理机构,行业媒体,法律结构等都集中云整合成资源池,各个资源相互展示和互动,按需交流,达成意向,从而降低成本,提高效率,这样的概念就是云视频概念。
人工智能云服务,一般也被称作是AIaaS(AI as a Service,AI即服务)。这是目前主流的一种人工智能平台的服务方式,具体来说AIaaS平台会把几类常见的人工智能服务进行拆分,并在云端提供独立或者打包的服务,如处理资源转换请求等。
大数据(Big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。随着云时代的来临,大数据也吸引了越来越多的关注。基于大数据需要特殊的技术,以有效地实施本实施例所提供的应用于云应用的输入控制方法,其中适用于大数据的技术,包括大规模并行处理数据库、数据挖掘、分布式文件系统、分布式数据库、以及上述云计算等。
作为一个示例,图1中示出了本申请实施例所适用的一种应用于云应用的输入控制系统在一种应用场景下的实施流程示意图,可以理解的是,本申请实施例所提供的应用于云应用的输入控制方法可以适用于但不限于应用于如图1所示的应用场景中。
本示例中,以云应用为云游戏为例,该示例中的应用于云应用的输入控制系统可以包括但不限于终端设备101、网络102、服务器103。终端设备101(如用户的智能手机)可以通过网络102与服务器103通信。服务器103可以包括数据库1031和处理引擎1032,处理器1032用于处理云应用在运行过程中产生的各种数据,在云游戏场景下,处理器1032可以将游戏场景渲染为视频音频流,通过网络传输给玩家(即用户)的终端设备。存储器1031用于存储云应用的应用程序代码以及云应用运行过程中需要存储或缓存的各种数据,还可以包括用户登录该云应用的登录信息、用户在使用该云应用时所产生的数据记录等。
终端设备101中可以包括人机交互屏幕1011,处理器1012及存储器1013。可以在该人机交互屏幕上显示云应用的显示界面。用户可以通过该人机交互屏幕1011与终端设备101进行交互实现对云应用的操作,如可以通过人机交互屏幕1011接收用户的第一操作,其中,该第一操作是用户发起的用于启动输入法的操作。处理器1012可以用于播放从服务器103接收到的云应用(如云游戏)对应的视频音频流(如云应用的游戏画面),并响应于第一操作向服务器103发送第一指令。在本地输入法启动后,该人机交互屏幕1011还可以用于显示终端设备101的本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域,以及通过本地输入法的字符输入区域接收字符编辑操作。处理器1012还可以用于根据字符编辑操作得到文本编辑结果。存储器1013用于存储终端设备101的各种数据,如文本编辑结果。
如图1所示,以云应用为云游戏为例,本申请中的应用于云应用的输入控制系统的具体交互过程可以包括步骤S1-S8:
步骤S1,用户触发云游戏启动操作,终端设备101通过网络102向服务器103发送云游戏启动操作,服务器103接收到该云游戏启动操作之后,在服务器103中运行云游戏,处理引擎1032将云游戏的游戏场景渲染为视频音频流,并通过网络102向终端设备101发送渲染后的视频音频流。
步骤S2,终端设备101接收该云游戏的视频音频流,并在人机交互屏幕1011显示该云游戏的视频音频流。
步骤S3,在终端设备101中,通过人机交互屏幕1011接收用户的相关操作。例如,用户在玩游戏的过程中,可以通过点击/触摸该显示界面中的聊天框与触发第一操作,其中,该第一操作是用户发起的用于启动输入法的操作,处理器1012响应于该第一操作通过网络102向上述云服务器发送与该第一操作对应的第一指令。
步骤S4,服务器103中的处理引擎1032接收该第一指令,确定出该第一指令作用为拉起输入法后,可以启动云输入法,拉起云输入法的输入字符显示区域,并进行渲染,通过网络102向终端设备101发送该云输入法的输入字符显示区域(即图中所示的01)的渲染结果,并通过网络102向终端设备发送输入法启动消息。
步骤S5,终端设备101接收输入法启动消息,拉起本地输入法,并在人机交互屏幕1011中显示本地输入法的字符输入区域(即图中所示的02),以及接收该云输入法的输入字符显示区域的渲染结果,在人机交互屏幕1011中显示云输入法的输入字符显示区域。
步骤S6,对于用户而言,用户可以通过人机交互屏幕1011中显示本地输入法的字符输入区域进行字符编辑,输入聊天过程中想要发送的聊天消息,当用户点击/触摸该本地输入法的字符输入区域的相应按钮时,处理器1012即可获取到用户的字符编辑操作,并得到该字符编辑操作对应的事件消息,并通过网络102向服务器103发送该事件消息。
步骤S7,服务器103中的处理引擎1032在接收到事件消息之后,可以根据该事件消息确定对应于云输入法的输入字符显示区域的渲染画面,并通过网络102向终端设备101发送该渲染画面。
步骤S8,终端设备101接收服务器103发送的渲染画面,通过人机交互屏幕1011在云输入法的输入字符显示区域显示该渲染画面对应的文本编辑结果。
其中,服务器103中的数据库1031用于存储步骤S1、S4和S7中产生的各种数据,如云游戏的游戏场景的视频音频流,终端设备101中的存储器1013用于存储步骤S2-S3、S5-S6和S8中产生的各种数据,如事件消息。
可理解,上述示例中,以云应用为云游戏中为例,对用户可以在终端设备使用本地输入法输入聊天信息的应用场景进行了说明,在实际应用场景中,并不限定于该应用场景。云应用可以为各种应用场景下的应用,如在线办公软件、云存储、电子邮件、地图导航、云音乐、云视频、减肥健身、理财软件、电子商务和搜索引擎等等,使用上述云应用的输入控制系统,用户可以在终端设备的云应用显示界面使用本地输入法输入想要输入的信息。具体地,云应用还可以为云视频,如用户可以在使用终端设备观看视频的过程中,在云视频的显示界面使用本地输入法输入弹幕信息。云应用还可以为云音乐,如用户可以在评论区通过本输入法输入评论信息,等等,本申请实施例对于具体的使用场景不作任何限定。
其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、Wi-Fi及其他实现无线通信的网络。终端设备可以是智能手机(如Android手机、iOS手机等)、平板电脑、笔记本电脑、数字广播接收器、MID(Mobile InternetDevices,移动互联网设备)、PDA(个人数字助理)、台式计算机、车载终端(例如车载导航终端)、智能音箱、智能手表等,终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,但并不局限于此。具体也可基于实际应用场景需求确定,在此不作限定。
参见图2a,图2a是本申请实施例提供的一种应用于云应用的输入控制方法的流程示意图,该方法可以由任一电子设备执行,如可以是服务器,也可以是终端设备和服务器交互完成,可选的,可以由终端设备执行,如图2a所示,本申请实施例提供的应用于云应用的输入控制方法包括如下步骤:
步骤S201,在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和上述云应用对应的云输入法的输入字符显示区域,其中,上述第一操作是用户发起的用于启动输入法的操作。
步骤S202,在通过上述本地输入法的字符输入区域接收到字符编辑操作时,通过上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果。
可选的,云应用运行在云端服务器上,并不知道用户的终端设备(如手机)本地用的是什么输入法,云应用一般会提供一种默认的输入法。当用户需要打字的时候,就会拉起云应用的默认的输入法。这种方式下,会存在以下两个问题:问题1、不同的用户有不同的惯用输入法,有的用户惯用输入法A,有的用户惯用输入法B,给所有的用户均提供云应用默认的输入法的话,对这些用户来说,会造成打字体验不好的问题;2、用户在云应用中打字时,软键盘(SoftKeyBoard,也叫虚拟键盘)是运行在云服务器中的,终端设备(如手机)本地的触屏指令首先要传输到云服务器上,然后才会触发云端软键盘的按键响应,存在一定的延时,影响用户体验。
为了解决上述问题,本申请提供了一种应用于云应用的输入控制方法,该方法的具体实现步骤如下:
步骤1,在终端设备中,显示云应用的显示界面,通过该显示界面接收用户的第一操作。其中,上述第一操作是用户发起的用于启动输入法的操作。
参见图2b,图2b是本申请实施例提供的一种云应用的显示界面的界面示意图,如图2b所示,该云应用为云游戏,该云游戏的显示界面中显示的是聊天界面,以及玩家1(即终端设备对应的用户,图中未示出)对应的聊天框,以及玩家2、玩家3、玩家4和玩家5的相关信息,玩家1和其他玩家2、玩家3、玩家4和玩家5进行聊天,如图所示,玩家2发送的聊天信息为“来个人”,玩家3发送的聊天信息为“来一个有麦的”、玩家4发送的聊天信息为“有麦的来”,玩家5发送的聊天信息为“求带”,玩家1可以通过点击/触摸聊天框以触发第一操作。其中,图2b所示的显示界面中还可以显示云游戏的其他游戏元素,并不限定于显示图2b所示的信息。
步骤2,在获取到该第一操作后,可以在该终端设备中显示该终端设备的本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域。
其中,本地输入法的字符输入区域可以理解为本地输入法的软键盘,也可以称之为虚拟键盘。区别于实体键盘,软键盘是终端设备(如手机)上弹出来的软件键盘,会占用终端设备(如手机)的屏幕的空间。云输入法的输入字符显示区域可以理解为云应用对应的云文本框。
在一示例中,终端设备中显示的本地输入法的软件盘可以由用户直接点击/触摸控制。或者,还可以通过该终端设备外接的实体键盘控制在该终端设备的屏幕中显示的本地输入法的软件盘,在此不作限定。
参见图2c,图2c是本申请实施例提供的一种本地输入法的字符输入区域和云输入法的输入字符显示区域的示意图,如图2c所示,当用户点击/触摸图2b中的聊天框后,即可显示本地输入法的字符输入区域和云输入法的输入字符显示区域。用户通过自己惯用的本地输入法编辑想要输入的字符。
步骤3,通过显示的本地输入法的字符输入区域,可以接收用户的字符编辑操作,并在云输入法的输入字符显示区域显示该字符编辑操作对应的文本编辑结果。
参见图2d,图2d是本申请实施例提供的一种文本编辑过程的示意图,如图2b所示,用户可以通过显示的本地输入法进行字符编辑,图2d中,当用户分别触摸按钮“C”、“E”和“S”(即字符编辑操作)时,该本地输入法的字符输入区域即对应显示“测试”、“厕所”、“测速”、“测算”、“侧身”、“侧睡”、“册山”和“策士”,当用户点击图2d中的“测试”或者空格键时,其中,图2d中所示的为点击空格键,此时,可以显示如图2e所示的应用的文本编辑结果的界面,即在云输入法的输入字符显示区域显示“测试”(即文本编辑结果),并在本地输入法的字符输入区域显示与测试相关的候选文本,即图2e中所示的“卷”、“服”、“题”、“仪”、“版”、“了”、“下”。
步骤4,当用户完成输入后,会相应的关闭本地输入法的字符输入区域和云输入法的输入字符显示区域,并切换显示为文本发送界面,如图2f所示,此时,聊天框中显示待发送的文本为“测试”,用户可以通过点击/触摸“发送”按钮,将文本“测试”发送出去。
可理解,上述仅为一种示例,本申请实施例在此不作限定。
通过本申请实施例,用户在使用云应用时,可以通过云应用的显示界面启动输入法,此时,终端设备显示的是本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域,对于用户而言,可以通过显示的本地输入法的字符输入区域进行字符编辑,并通过云输入法的输入字符显示区域显示字符编辑操作对应的文本编辑结果。采用这种方式,一方面,用户可以将输入法切换为自己惯用的本地输入法进行字符编辑,不仅提高了用户的字符编辑效率以及用户的输入使用体验,而且解决了云应用中输入法模式单一的技术问题。另一方面,由于用户使用的是本地输入法进行字符编辑,对于用户而言,能够即时的看到本地输入法的按键响应,提高了用户的输入感知。
以下详述如何启动并显示本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域的具体过程。
在一种可选的实施例中,上述在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和上述云应用对应的云输入法的输入字符显示区域,包括:
响应于上述第一操作,向云服务器发送第一指令,以使上述云服务器基于上述第一指令启动云输入法,以使在上述终端设备上显示上述云输入法的输入字符显示区域,并向上述终端设备发送输入法启动消息;
响应于上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域。
可选的,当接收到用户的第一操作之后,终端设备可以响应该第一操作向云服务器发送对应的第一指令。该第一指令为点击屏幕指令,或者触摸屏幕指令,在此不作限定。
当云服务器接收到该第一指令之后,可以响应该第一指令,当确定该第一指令对应于启动输入法时,则可以启动云输入法,并使终端设备显示该云输入法的输入字符显示区域,同时,向终端设备发送输入法启动消息,告知终端设备需要拉起输入法。
当终端设备接收到该输入法启动消息之后,启动本地输入法,并拉起该本地输入法的字符输入区域。
具体地,第一操作表示用户想要进行文本输入,操作的具体形式不做限定,比如可以是用户在云应用的“聊天框”的点击/触摸操作。该第一指令中可以包括第一操作在云应用的客户端的显示界面中的位置信息(如坐标信息),云服务器接收到第一指令后,可以根据该位置信息确定用户在显示界面中的操作位置,基于该操作位置确定用户的具体操作,比如当确定第一操作是对应于“聊天框”的显示区域所在的位置时,可以确定该第一指令是用于启动云输入法的,从而可以响应该第一指令,启动云输入法,相应地,弹出云输入法的输入字符显示区域,同时将云输入法的输入字符显示区域的显示画面进行渲染,得到渲染结果,向终端设备发送该渲染结果,当终端设备接收到该渲染结果后,即可在终端设备的显示界面显示该云输入法的输入字符显示区域。同时,云服务器向终端设备发送输入法启动消息,告知终端设备需要拉起输入法,当终端设备接收到该输入法启动消息之后,启动本地输入法,并拉起该本地输入法的字符输入区域。
通过本申请实施例,当在终端设备发起第一操作时,云服务器可以拉起云输入法,并发送输入法启动消息给终端设备,使终端设备启动本地输入法,通过这种方式,在云应用中,可以使终端设备即时的启动本地输入法,使用户能够使用惯用的本地输入法输入文本,提高了输入体验和输入效率。
在一种可选的实施例中,还可以包括:
响应于上述第一操作,隐藏上述本地输入法的输入字符显示区域和上述云输入法的字符输入区域中的至少一项。
可选的,当本地输入法和云输入法为同一个输入法,本地输入法的字符输入区域和云输入法的字符输入区域的显示效果一致,且本地输入法的输入字符显示区域和云输入法的输入字符显示区域的显示效果一致时,可以将本地输入法的输入字符显示区域和云输入法的字符输入区域中的至少一项进行隐藏,在此不作限定。
在一种可选的实施例中,还可以包括:
响应于上述第一操作,隐藏上述本地输入法的输入字符显示区域以及上述云输入法的字符输入区域。
可选的,当终端设备接收到用户的第一操作时,对于用户而言,只需要看到本地输入法的字符输入区域(即本地输入法的软件盘),以及最终用于显示字符的云输入法的输入字符显示区域(即文本框)即可。此时,可以将响应于该第一操作所启动的本地输入法的输入字符显示区域(即本地文本框)以及云输入法的字符输入区域(即云输入法的软件盘)进行隐藏,来避免用户看到两个输入法,两个文本框。
在隐藏本地输入法的输入字符显示区域以及云输入法的字符输入区域时,可以采取多种方式,例如,可以将本地输入法的输入字符显示区域以及云输入法的字符输入区域设置为透明(如透明度为0)。或者,设置不弹出本地输入法的输入字符显示区域以及云输入法的字符输入区域。或者,使本地输入法的字符输入区域和云输入法的输入字符显示区域所在的区域,能够完全覆盖住本地输入法的输入字符显示区域以及云输入法的字符输入区域所在的区域,等等。本实施例对此不作任何限定。
其中,在隐藏本地输入法的输入字符显示区域时,可以设置本地输入法的输入字符显示区域占用显示界面的区域为一个像素点的大小、且在屏幕的边界位置,来防止用户误碰该区域,本实施例中对该区域的具体设置不作限定。
通过本申请实施例,通过隐藏本地输入法的输入字符显示区域以及云输入法的字符输入区域,可以使用户只看到一个输入字符显示区域(即文本框)和一个字符输入区域(即软件盘),避免了显示多个文本框和多个软件盘,提高了显示效果设置的合理性。
在一种可选的实施例中,上述显示终端设备的本地输入法的字符输入区域和上述云应用对应的云输入法的输入字符显示区域,包括:
不重叠的显示上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域。
其中,对于上述不重叠的显示本地输入法的字符输入区域和云输入法的输入字符显示区域的具体实现方式,本申请实施例不做限定,可以根据实际需求及不同的应用场景进行配置。例如,可以使本地输入的字符输入区域的上边界和云输入法的输入字符显示区域的下边界正好重合,或者留有一定的空隙,或者将云文本框显示在本地输入法的软件盘的下方或者左方或者右方,等等。
在一种可选的实施例中,上述不重叠的显示上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域,包括:
在上述本地输入法的字符输入区域的上方显示上述云输入法的输入字符显示区域;
在上述本地输入法的字符输入区域对应的本地输入法的输入字符显示区域,显示上述云输入法的输入字符显示区域。
可选的,可以按照以下多种方式显示本地输入法的字符输入区域(即本地输入法的软件盘)和云输入法的输入字符显示区域(即云文本框),具体方式如下:
方式1:可以使云输入法的输入字符显示区域显示在本地输入法的字符输入区域的上方,且以本地输入法的字符输入区域和云输入法的输入字符显示区域互不遮挡为准。
方式2:可以在本地输入法的字符输入区域对应的本地输入法的输入字符显示区域(即本地文本框)原本所在的区域,显示该云输入法的输入字符显示区域(即云本文框)。例如,可以设置云文本框的大小和本地文本框的大小一致,然后使云本文框遮挡住本地文本框、或者显示云文本框且设置本地文本框为透明、或者显示云文本框且不弹出本地文本框等。
可理解,以上方式仅为一种示例,且可以互相组合,在此不作任何限定。
通过本申请实施例,可以通过多种方式显示本地输入法的字符输入区域和云输入法的输入字符显示区域,提高了显示方式的灵活性。
在一种可选的实施例中,上述在通过上述本地输入法的字符输入区域接收到字符编辑操作时,通过上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果,包括:
在通过上述本地输入法的字符输入区域接收到上述字符编辑操作时,向云服务发送上述字符编辑操作对应的事件消息;
接收上述云服务器基于上述事件消息发送的对应于上述云输入法的输入字符显示区域的渲染画面;
接收上述渲染画面,通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
可选的,可以通过本地输入法的字符输入区域接收用户的字符编辑操作,如字符输入操作、字符修改操作、或者字符删除操作,此时会相应的触发该字符编辑操作对应的事件消息,可以向云服务器发送该事件消息。
当云服务器接收到该事件消息时,会根据该事件消息使云输入进行相应的处理,得到处理结果,并在云输入法的输入字符显示区域对该处理结果进行渲染,得到该事件消息对应的渲染画面,并向终端设备发送该渲染画面。
当终端设备接收到云服务器发送的渲染画面时,播放该渲染画面,在云输入法的输入字符显示区域显示该渲染画面对应的文本编辑结果。例如,如果该渲染画面为一个操作画面,那么,终端设备可以播放该操作画面、以及该操作画面播放结束时对应的文本结果,该文本结果即为文本编辑结果。
以上仅为一种示例,本申请实施例在此不作限定。
通过本申请实施例,用户可以通过惯用的本地输入法灵活地进行字符编辑操作,极大地提高了用户的打字体验,进而可以提高用户的打字效率。
在一种可选的实施例中,上述字符编辑操作包括字符输入操作、或字符修改操作、或字符删除操作;
若上述字符编辑操作为上述字符输入操作,上述事件消息中包含对应的输入结果,上述渲染画面包括与上述输入结果对应的输入结果画面,上述通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果,包括:
通过上述云输入法的输入字符显示区域显示上述输入结果画面对应的文本编辑结果;
若上述字符编辑操作为上述字符修改操作,上述事件消息中包含与上述字符修改操作对应的字符修改信息,上述渲染画面包括与上述字符修改信息对应的字符修改画面,上述通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果,包括:
通过上述云输入法的输入字符显示区域显示上述字符修改画面对应的文本编辑结果;
若上述字符编辑操作为上述字符删除操作,上述事件消息中包含与上述字符删除操作对应的字符删除信息,上述渲染画面包括与上述字符删除信息对应的字符删除画面,上述通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果,包括:
通过上述云输入法的输入字符显示区域显示上述字符删除画面对应的文本编辑结果。
以下分别以字符编辑操作为字符输入操作、字符修改操作或字符删除操作进行说明:
1、字符输入操作:用户可以通过本地输入法的字符输入区域输入字符(即字符输入操作),并通过未显示的本地输入法的输入字符显示区域截获用户输入的字符,将截获到的字符转换为相应的输入结果,然后向云服务器发送该输入结果,当云服务接收到该输入结果之后,云服务器中的云输入法可以提取该输入结果中的文本,并将提取到的该文本提交至云文本框,并将该文本对应的输入过程进行渲染,得到该云本框对应的输入结果画面,将该输入结果画面发送至终端设备,当终端设备接收到该输入结果画面之后,播放该输入结果画面,即可在云输入法的输入字符显示区域看到显示的该输入结果画面(该输入结果画面中包括该文本)。
2、字符修改操作:用户可以通过本地输入法的字符输入区域选中待修改的字符,并将待修改的字符修改为目标字符(即字符修改操作),此时,会触发得到该字符修改操作对应的字符修改信息,并向云服务器发送该字符修改信息,当云服务接收到该字符修改信息之后,基于该字符修改信息,得到与字符修改信息对应、且与云文本框对应的字符修改画面,将该字符修改画面发送至终端设备,当终端设备接收到该字符修改画面之后,即可在云文本框对应播放该字符修改画面,该字符修改画面包括字符修改过程以及字符修改结果,其中,字符修改过程可以为选中待修改的字符,并将待修改的字符修改为目标字符的过程,字符修改结果可以为修改后的目标字符,该目标字符即为文本编辑结果。
3、字符删除操作:用户可以通过本地输入法的字符输入区域选中进行字符删除(即字符删除操作),此时,会触发得到该字符删除操作对应的字符删除信息,并向云服务器发送该字符删除信息,当云服务接收到该字符删除信息之后,基于该字符删除信息,得到与字符删除信息对应、且与云文本框对应的字符删除画面,将该字符删除画面发送至终端设备,当终端设备接收到该字符删除画面之后,即可在云文本框对应播放该字符删除画面,该字符删除画面包括字符删除过程以及字符删除结果,其中,字符删除过程可以为将光标前面的至少一个文字进行删除的过程,字符删除结果可以为将云文本框当前显示的文本信息中的至少一个文字进行删除之后的文本信息,删除文字之后的文本信息即为字符编辑结果。
可理解,上述仅为一种示例,本申请实施例在此不作任何限定。
需要说明的是,作为一种可选实施方式,用户在进行字符编辑的过程中,可以对字符输入操作或者字符修改操作或者字符删除操作分别进行单独处理。即用户每进行一次字符编辑操作,就对该操作进行一次处理,如当用户触发字符输入操作时,就对字符输入操作进行处理,当用户触发字符修改操作时,即对字符修改操作进行处理,当用户触发字符删除操作时,就对字符删除操作进行处理。
在实际应用中,用户在进行字符编辑的过程中,可能会出现多次编辑的情况,例如,在一个相对较短的时间内,用户可能会依次进行了字符输入操作、字符修改操作或者字符删除操作中多个操作,作为另一可选实施方式,可以在云应用的客户端配置一缓存空间,可以将一定预设时间(如0.1秒、0.5秒等)内发生的字符编辑操作(可能是字符输入操作、字符修改操作或者字符删除操作中一个或多个)进行缓存处理,当达到该预设时间时,将该预设时间内所发生的全部的字符编辑操作分别对应的事件消息统一发送至云服务器进行处理。举例来说,在预设时间(如0.5秒)内,如果依次存在字符输入操作和字符删除操作这种情况时,可以将该预设时间发生的字符输入操作和字符删除操作存储至一个缓存空间,当预设时间结束后,将该预设时间内所发生的字符输入操作对应的输入结果和字符删除操作对应的字符删除信息统一发送至云服务器,由云服务器对该预设时间内的输入结果和字符删除信息进行统一处理,得到该预设时间内的输入结果对应的输入结果画面和字符删除信息对应的字符删除画面,向终端设备发送该输入结果画面和字符删除画面,当终端设备接收到该输入结果画面和字符删除画面时,播放该输入结果画面和字符删除画面,可以避免云服务器频繁处理。
通过本申请实施例,可以通过字符输入操作、字符修改操作、或字符删除操作灵活的进行字符输入、字符修改或者字符删除,提高了用户的打字体验,由于用户使用的是惯用的本地输入法,在进行字符编辑时,还提高了用户的打字效率。
在一种可选的实施例中,还可以包括:
在上述云应用的显示界面获取到第二操作时,关闭上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域,其中,上述第二操作是用户发起的用于关闭输入法的操作。
可选的,当用户不需要使用输入法或者完成字符输入的时候,即可在云应用的显示界面进行第二操作,响应该第二操作,关闭本地输入法的字符输入区域和云输入法的输入字符显示区域。其中,上述第二操作是用户发起的用于关闭输入法的操作。
以本地输入法的字符输入区域简称为本地输入法的软键盘,云输入法的输入字符显示区域简称为云本文框,来描述关闭本地输入法的软键盘和云文本框的具体过程。
用户可以通过点击/触摸除了本地输入法的软键盘和云本文框之外的其他空白区域,或者点击/触摸除了本地输入法的软键盘和云本文框之外的显示界面中的其他元素,或者点击/触摸返回键,来关闭本地输入法的软键盘和云本文框,在实际应用中,可根据实际的显示界面的具体设置实现,在此不作任何限定。
通过本申请实施例,用户可以根据需要随时关闭输入法和文本框,方便灵活,提高了用户的输入体验。
在一种可选的实施例中,上述在上述云应用的显示界面获取到第二操作时,关闭上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域,包括:
响应于上述第二操作,向云服务器发送第二指令,以使上述云服务器关闭云输入法,以使在上述终端设备上关闭上述云输入法的输入字符显示区域,并向上述终端设备发送输入法关闭消息;
响应于上述输入法关闭消息,关闭本地输入法,关闭上述本地输入法的字符输入区域。
可选的,关闭本地输入法的字符输入区域和云输入法的输入字符显示区域的具体实现过程如下所示:
接收用户的第二操作,响应该第二操作,向云服务器发送该第二操作对应的第二指令。该第二指令可以为点击屏幕指令,或者触摸屏幕指令,在此不作限定。
当云服务器接收到该第二指令之后,云服务器会响应该第二指令,当确定该第二指令对应于关闭云输入法,则可以关闭云输入法,并使终端设备关闭云输入法的输入字符显示区域,并向终端设备发送输入法关闭消息。
终端设备在接收到该输入法关闭消息之后,会根据该输入法关闭消息,关闭本地输入法。
具体地,第二操作表示用户不需要进行文本输入,操作的具体形式不做限定,比如可以是用户在除了云文本框和本地输入法所在的区域的点击/触摸操作。该第二指令中可以包括第二操作在云应用的客户端的显示界面中的位置信息(如坐标信息),云服务器接收到第二指令后,可以根据该位置信息确定用户在显示界面中的操作位置,基于该操作位置确定用户的具体操作,比如当确定第二操作是对应于除了云文本框和本地输入法所在的区域的位置时,可以确定该第二指令是用于关闭云输入法的,从而可以响应该第二指令,启关闭云输入法,相应地,关闭云文本框,同时将关闭云文本框的画面进行渲染,得到渲染结果,向终端设备发送该渲染结果,当终端设备接收到该渲染结果后,即可在终端设备的显示界面显示关闭该云文本框的过程。同时,云服务器向终端设备发送输入法关闭消息,告知终端设备需要关闭输入法,当终端设备接收到该输入法关闭消息之后,关闭本地输入法,并关闭该本地输入法的字符输入区域(即本地文本框)。
通过本申请实施例,终端设备和云服务器可以通过交互在关闭本地输入法的同时,相应的关闭云输入法对应的云文本框,方便灵活。
参见图3a,图3a是本申请实施例提供的另一种应用于云应用的输入控制方法的流程示意图,该方法可以由任一电子设备执行,如可以是服务器,也可以是终端设备和服务器交互完成,可选的,可以由服务器执行,如图3a所示,本申请实施例提供的应用于云应用的输入控制方法包括如下步骤:
步骤S301,接收终端设备发送的第一指令,其中,上述第一指令是上述终端设备响应于用户在云应用的显示界面的第一操作发送的,其中,上述第一操作是用户发起的用于启动输入法的操作。
步骤S302,响应于上述第一指令,启动云输入法,以使上述终端设备显示上述云应用对应的云输入法的输入字符显示区域,向上述终端设备发送输入法启动消息,以使上述终端设备根据上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域,并在通过上述终端设备的上述本地输入法的字符输入区域接收到用户的字符编辑操作时,以使在上述终端设备的上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果。
可选的,以下以云应用为云游戏为例进行详细说明。
以下先对本申请实施例涉及到几个概念进行介绍:
webrtc:一种开源的实时音视频通讯方案。
View:Android绘图里的视图。
ContentView:用于放实际绘图内容的视图。
EditText:Android中用来输入文字的文本框。
socket:网络通讯的接口。
容器:虚拟化的一种方案,一台服务器可以运行多个容器,每个容器里可以运行安卓或者其它操作系统。
云游戏后端(CloudGame):云游戏项目中用来从服务器端Android系统中采集游戏音频和视频的模块,并且负责将触屏坐标,传感器数据等注入云游戏。在GameMatrix云游戏项目中该模块取名为CloudGame。
云游戏传输代理(WebrtcProxy):负责接收云游戏后端发送过来的音视频数据,进行编码,通过网络发送给手机端,并且负责将手机端发送过来触屏坐标,传感器数据等发送给云游戏后端。在GameMatrix云游戏项目中,该模块取名为WebrtcProxy。其中,该云游戏传输代理即为前文描述的代理服务器。
以下对云游戏对应的云输入法进行详细介绍:
在一示例中,本申请实施例对云服务器中的Android容器中的输入法(如InputMethodService)进行了重新编写,得到云游戏对应的云输入法(名为CgInputMethod)。具体地,该云输入法继承自Android系统中的InputMethodService输入法。CgInputMethod输入法安装在云服务器的Android容器里,并且将该云输入法设置为默认输入法,重写了在InputMethodService的onCreate,如图3b所示,其中,图中所示的箭头表示继承,即CgInputMethod输入法中的onCreate函数继承了InputMethodService输入法中的onCreate函数。其中,onCreate函数可以为一种消息响应函数。
如图3c所示,运行在云服务器的容器中的Android系统会将该云输入法启动为后台一个服务(Service),并且会调用到CgInputMethod的onCreate函数,在onCreate函数中,会创建一个线程create thread,在该线程里创建套接字socket,该socket绑定到指定的某个端口,通过该socket连接到云游戏后端上,之后会通过云游戏后端跟终端设备(如手机)上的云游戏客户端进行通讯。
其中,CgInputMethod输入法与云游戏后端的通讯过程的流程示意图如图3c所示。具体地,云游戏后端启动的时候会创建一个socket套接字,并通过bind函数将该socket绑定指定的端口上(此处端口号和CgInputMethod中socket使用相同的端口号),然后,通过listen函数监听CgInputMethod的socket与云游戏后端的socket的连接,当CgInputMethod中调用了connect函数时,CgInputMethod与云游戏后端建立了通信连接,云游戏后端通过accept函数返回这路连接,CgInputMethod和云游戏后端之间就可以通过该路连接互相发送读/写消息了(即图中所示的write/read)。
以下终端设备如何知道需要拉起/关闭输入法进行详细介绍:
在一示例中,如图2b所示,用户在云游戏中点击/触摸游戏中的聊天框(即第一操作)开始打字的时候,终端设备会向云服务器发送对应于该第一操作的第一指令,当云服务器接收到第一指令的时候,如图3d所示,运行在云游戏中的CgInputMethod输入法(即云输入法的字符输入区域)以及相应的云文框(即云输入法的输入字符显示区域)就会被Android系统拉起。
Android系统拉起或关闭输入法的时候,会分别调用输入法的onStartInput函数/onFinishInput函数。其中,onStartInput函数用于拉起输入法,onFinishInput函数用于关闭输入法。本申请实施例中在云输入法CgInputMethod中重写了InputMethodService的onStartInput/onFinishInput函数,如图3e所示,其中,图中所示的箭头表示继承,即CgInputMethod输入法中的onCreate函数、onStartInput函数和onFinishInput函数继承了InputMethodService输入法中的onCreate函数、onStartInput函数和onFinishInput函数。
其中,onStartInput/onFinishInput这两个函数,分别用于向云游戏后端发送拉起输入法和关闭输入法消息,并且经由云游戏传输代理发送到终端设备(如手机)上的云游戏客户端,云游戏客户端根据收到的是拉起输入法消息还是关闭输入法消息,相应的拉起或关闭终端设备(如手机)本地的输入法。其中,拉起输入法消息对应于上述第一指令,关闭输入法消息对应于上述第二指令。
参见图3f所示,图3f是本申请实施例提供的一种云输入法向云游戏客户端发送消息的流程示意图。如图3f所示,云输入法可以将拉起输入法消息/关闭输入法消息,发送至云游戏后端,云游戏后端再将该拉起输入法消息/关闭输入法消息发送至云游戏传输代理(即前文描述的代理服务器),然后由云游戏传输代理将该拉起输入法消息/关闭输入法消息发送至终端设备(如手机)上的云游戏客户端。
当终端设备接收到拉起输入法消息/关闭输入法消息时,终端设备即可知道需要拉起/关闭本地输入法,会相应的拉起/关闭用户惯用的本地输入法,并在终端设备显示本地输入法的软件盘和云输入框,使用户可以使用自己惯用的本地输入法进行字符编辑。
在一示例中,由于云服务器中运行的是CgInputMethod输入法,手机本地运行的是用户自己喜欢的输入法,云服务器和终端设备所显示的是两种不同的输入法,由于这两种输入法的软键盘布局和大小不一样,终端设备本地的软键盘就有遮挡住云游戏中的云文本框的可能。为了确保终端设备的本地输入法拉起的软键盘不会盖住云游戏中的云文本框,并以使得云游戏中的云文本框正好坐落在终端设备本地输入法的软件键盘的上方,可以通过将终端设备本地输入法的软键盘和云输入法的软键盘高度调整为一致来实现,具体地实现过程如下所示:
云游戏客户端的EditText文本框(即云文本框)布局在Android的ContentView(即用于放实际绘图内容的视图)的视图里,ContentView默认铺满手机全屏。当玩家点击/触摸该EditText文本框时,终端设备本地输入法的软键盘会相应弹出,ContentView会被软键盘推上去,即云文本框会被相应的推上去,如图3g所示,图3g左边为未点击/触摸该EditText文本框之前的示意图,可以看出,此时的ContentView的高度为第一高度(即EditText文本框的显示高度为第一高度),当点击/触摸该EditText文本框之后,本地输入法的软件盘弹出,该EditText文本框被推上去,此时ContentView的高度为第二高度(即EditText文本框的显示高度为第二高度)。
为了达到如图3g所示的显示效果,避免本地输入法的软件盘遮挡住云文本框,可以按照以下方式实现,具体如下:
通过获取终端设备本地ContentView的高度phoneContentViewHeight(也可以理解为除了本地软件盘之外的其他显示区域占终端设备的整个屏幕的高度),以及整个屏幕的高度phoneDisplayHeight(也可以称为终端设备的屏幕的显示高度),计算出本地输入法的软键盘的高度phoneSoftKeyBoardHeight:
phoneSoftKeyBoardHeight=phoneDisplayHeight-phoneContentViewHeight
然后计算出本地输入法的软键盘占整个屏幕的比例ratio:
ratio=phoneSoftKeyBoardHeight/phoneDisplayHeight
然后,云游戏客户端将该比例ratio通过云游戏传输代理、云游戏后端最终送入云服务器中的CgInputMethod输入法。CgInputMethod输入法获取到该ratio后,云服务器中的CgInputMethod输入法会获取Android容器中的屏幕高度(记为containerDisplayHeight),并且反推出云服务器中Android容器中软键盘的高度(记为expectedContainerSoftKeyBoardHeight):
expectedContainerSoftKeyBoardHeight=containerDisplayHeight*ratio
得到该Android容器中软键盘的高度之后,云服务器中的CgInputMethod输入法会用该高度拉起云输入法的软键盘,并且将云游戏的云文本框顶至该高度。此时终端设备本地输入法的软键盘的高度和Android容器内云输入法的软键盘的高度是一致的,能确保用户能够看到完整的云文本框,且云文本框和本地输入法的软件盘互不遮挡。
此外,由于终端设备本地输入法的软键盘弹出是从底部往上弹的,这有一个过程,该过程虽然非常短,通常只有几百毫秒,但是考虑到云服务器中的Android容器里的CgInputMethod输入法软键盘同时也会有一个从底部网上弹的过程,为了避免玩家同时看到两个软键盘往上弹,可以将云服务器中的Android容器里的CgInputMethod输入法软键盘设置为透明,确保玩家只看到本地输入法的软键盘往上弹。
通过本申请实施例,通过重写得到云输入法,使得云输入法可以和云游戏客户端建立通讯连接,当云输入法向终端设备发送拉起输入法消息/关闭输入法消息时,终端设备即可知道需要拉起/关闭本地输入法,此时,云游戏客户端也会相应的拉起/关闭本地输入法,一方面,用户使用惯用的本地输入法,极大地提高了打字体验,且提高了打字效率,另一方面,通过设置云输入法为透明,可以确保用户只看到本地输入法的软件盘向上弹出的过程,提高了显示效果,又一方面,用户通过本地输入法的软件盘进行字符编辑等操作,可以达到接近于本地游戏的快速输入法的按键响应,提升了云游戏体验。
以下详细介绍终端设备如何将本地的字符编辑操作反馈到云服务器。
在一种可选的实施例中,上述以使在上述终端设备的上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果,包括:
接收上述终端设备发送的上述字符编辑操作对应的事件消息;
根据上述事件消息确定对应于上述云输入法的输入字符显示区域的渲染画面,向上述终端设备发送上述渲染画面,以使上述终端设备根据上述渲染画面,在上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
可选的,本地输入法可以使用一个透明的本地文本框作为载体接收输入(即字符输入操作),可以从本地文本框中获取用户输入的文字,但是对于处理用户删除(即字符删除操作),修改(即字符修改操作),完成输入等功能,单靠本地文本框还不够。可以采取重载BaseInputConnection的commitText,deleteSurroundingText和performEditorAction接口来实现获取玩家输入文字,删除文字和完成输入(如前文描述的关闭输入法)的功能。
其中,BaseInputConnection是Android系统框架里用来处理输入法和文本框之间通信的接口,如图3h所示,通过重载BaseInputConnection的commitText,deleteSurroundingText和performEditorAction这3个接口,在用户输入文字,删除文字和完成输入时分别会被调用到。在这些接口里,会将相应的事件通过网络发送到云服务器的云游戏传输代理,经由云游戏后端最终发送给CgInputMethod输入法。
具体地,参见图3i所示,图3i是本申请实施例提供的一种云游戏客户端向云输入法发送消息的流程示意图。如图3i所示,云游戏客户端可以将输入文字,删除文字和完成输入等事件消息,通过云游戏客户端发送至云游戏传输代理,然后经由云游戏传输代理将这些事件消息发送至云游戏后端,云游戏后端再将这些事件消息发送至云输入法,云输入法会根据这些事件消息得到相应的渲染画面。
其中,云服务器中的CgInputMethod输入法对云游戏客户端事件消息的处理过程具体如下所示:
CgInputMethod输入法中的commitText()在收到字符输入操作对应的事件消息之后,CgInputMethod输入法会提取该事件消息中的文字,将该文字提交给云游戏中的云文本框。
CgInputMethod输入法中的deleteSurroundingText()在收到字符删除操作对应的事件消息之后,CgInputMethod输入法会删除云文本框中光标的前一个文字。
CgInputMethod输入法中的performEditorAction在收到字符完成输入操作对应的事件消息之后,CgInputMethod输入法会关闭云输入法和云文本框。
在一种可选的实施例中,上述系统包括云服务器和终端设备,包括:
上述终端设备,用于接收用户在云应用的显示界面的第一操作,并响应于上述第一操作向上述云服务器发送第一指令,其中,上述第一操作是用户发起的用于启动输入法的操作;
上述云服务器,用于接收上述第一指令,响应于上述第一指令,启动云输入法,控制上述终端设备显示上述云应用对应的云输入法的输入字符显示区域,并向上述终端设备发送输入法启动消息;
上述终端设备,用于接收并响应于上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域;
上述终端设备,还用于在通过上述本地输入法的字符输入区域接收到字符编辑操作时,向上述云服务器发送上述字符编辑操作对应的事件消息;
上述云服务器,还用于接收上述事件消息,根据上述事件消息确定对应于上述云输入法的输入字符显示区域的渲染画面,向上述终端设备发送上述渲染画面;
上述终端设备,还用于接收上述渲染画面,通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
在一种可选的实施例中,上述系统还包括代理服务器,上述终端设备通过上述代理服务器与上述云服务器进行信息交互。
可选的,对于该云应用的输入控制系统中云服务器、终端设备和代理服务器(即前文描述的云游戏传输代理)之间的交互过程,可参考前文描述,在此不再赘述。
本申请实施例中所涉及的各电子设备(包括但不限于云服务器、服务器103和终端设备)可以是区块链系统的节点,所涉及的服务器(包括但不限于云服务器、服务器103)可以是区块链服务器,本申请实施例中所需要存储的数据也可以存储于区块链节点中。本申请实施例涉及的应用于云应用的输入控制系统可以是由客户端(如云游戏客户端)、多个区块链节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。
以分布式系统为区块链系统为例,参见图4,图4是本申请实施例提供的分布式系统100应用于区块链系统的一个可选的结构示意图,由多个节点200(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端300形成,节点之间形成组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission ControlProtocol)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
参见图4示出的区块链系统中各节点的功能,涉及的功能包括:
1)路由,节点具有的基本功能,用于支持节点之间的通信。
节点除具有路由功能外,还可以具有以下功能:
2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
例如,应用实现的业务包括:
2.1)钱包,用于提供进行电子货币的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币;
2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(Block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。
参见图5,图5是本申请实施例提供的区块结构(Block Structure)一个可选的示意图,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
参见图6,图6是本申请实施例提供的一种应用于云应用的输入控制装置的结构示意图。本申请实施例提供的应用于云应用的输入控制装置1包括:
输入法显示模块11,用于在云应用的显示界面获取到第一操作时,显示终端设备的本地字符输入区域和上述云应用对应于云服务器的云端输入显示区域,其中,上述第一操作是用户发起的用于启动输入法的操作;
编辑结果显示模块12,用于在通过上述本地字符输入区域接收到字符编辑操作时,通过上述云端输入显示区域显示上述字符编辑操作对应的编辑结果。
在一种可选的实施例中,上述输入法显示模块,用于:
响应于上述第一操作,向云服务器发送第一指令,以使上述云服务器基于上述第一指令启动云输入法,以使在上述终端设备上显示上述云输入法的输入字符显示区域,并向上述终端设备发送输入法启动消息;
响应于上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域。
在一种可选的实施例中,上述输入法显示模块,还用于:
响应于上述第一操作,隐藏上述本地输入法的输入字符显示区域以及上述云输入法的字符输入区域。
在一种可选的实施例中,上述输入法显示模块,用于:
不重叠的显示上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域。
在一种可选的实施例中,上述输入法显示模块,用于:
在上述本地输入法的字符输入区域的上方显示上述云输入法的输入字符显示区域;
在上述本地输入法的字符输入区域对应的本地输入法的输入字符显示区域,显示上述云输入法的输入字符显示区域。
在一种可选的实施例中,上述编辑结果显示模块,用于:
在通过上述本地输入法的字符输入区域接收到上述字符编辑操作时,向云服务发送上述字符编辑操作对应的事件消息;
接收上述云服务器基于上述事件消息发送的对应于上述云输入法的输入字符显示区域的渲染画面;
接收上述渲染画面,通过上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
在一种可选的实施例中,上述字符编辑操作包括字符输入操作、或字符修改操作、或字符删除操作;
若上述字符编辑操作为上述字符输入操作,上述事件消息中包含对应的输入结果,上述渲染画面包括与上述输入结果对应的输入结果画面,上述编辑结果显示模块,用于:
通过上述云输入法的输入字符显示区域显示上述输入结果画面对应的文本编辑结果;
若上述字符编辑操作为上述字符修改操作,上述事件消息中包含与上述字符修改操作对应的字符修改信息,上述渲染画面包括与上述字符修改信息对应的字符修改画面,上述编辑结果显示模块,用于:
通过上述云输入法的输入字符显示区域显示上述字符修改画面对应的文本编辑结果;
若上述字符编辑操作为上述字符删除操作,上述事件消息中包含与上述字符删除操作对应的字符删除信息,上述渲染画面包括与上述字符删除信息对应的字符删除画面,上述编辑结果显示模块,用于:
通过上述云输入法的输入字符显示区域显示上述字符删除画面对应的文本编辑结果。
在一种可选的实施例中,上述输入法显示模块,还用于:
在上述云应用的显示界面获取到第二操作时,关闭上述本地输入法的字符输入区域和上述云输入法的输入字符显示区域,其中,上述第二操作是用户发起的用于关闭输入法的操作。
在一种可选的实施例中,上述输入法显示模块,还用于:
响应于上述第二操作,向云服务器发送第二指令,以使上述云服务器基于上述第二指令关闭云输入法,以使在上述终端设备上关闭上述云输入法的输入字符显示区域,并向上述终端设备发送输入法关闭消息;
响应于上述输入法关闭消息,关闭本地输入法,关闭上述本地输入法的字符输入区域。
参见图7,图7是本申请实施例提供的另一种应用于云应用的输入控制装置的结构示意图。本申请实施例提供的应用于云应用的输入控制装置2包括:
指令接收模块21,用于接收终端设备发送的第一指令,其中,上述第一指令是上述终端设备响应于用户在云应用的显示界面的第一操作发送的,其中,上述第一操作是用户发起的用于启动输入法的操作;
编辑结果处理模块22,用于响应于上述第一指令,启动云输入法,以使上述终端设备显示上述云应用对应的云输入法的输入字符显示区域,向上述终端设备发送输入法启动消息,以使上述终端设备根据上述输入法启动消息,启动本地输入法,显示上述本地输入法的字符输入区域,并在通过上述终端设备的上述本地输入法的字符输入区域接收到用户的字符编辑操作时,以使在上述终端设备的上述云输入法的输入字符显示区域显示上述字符编辑操作对应的文本编辑结果。
在一种可选的实施例中,上述编辑结果处理模块,用于:
接收上述终端设备发送的上述字符编辑操作对应的事件消息;
根据上述事件消息确定对应于上述云输入法的输入字符显示区域的渲染画面,向上述终端设备发送上述渲染画面,以使上述终端设备根据上述渲染画面,在上述云输入法的输入字符显示区域显示上述渲染画面对应的文本编辑结果。
在本申请实施例中,本申请实施例所提供的应用于云应用的输入控制方法、装置、电子设备及存储介质,在本申请实施例中,本申请实施例所提供的应用于云应用的输入控制方法、装置以及电子设备,用户在使用云应用时,可以通过云应用的显示界面启动输入法,此时,终端设备显示的是本地输入法的字符输入区域和云应用对应的云输入法的输入字符显示区域,对于用户而言,可以通过显示的本地输入法的字符输入区域进行字符编辑,并通过云输入法的输入字符显示区域显示字符编辑操作对应的文本编辑结果。采用这种方式,一方面,用户可以将输入法切换为自己惯用的本地输入法进行字符编辑,不仅提高了用户的字符编辑效率以及用户的输入使用体验,而且解决了云应用中输入法模式单一的技术问题。另一方面,由于用户使用的是本地输入法进行字符编辑,对于用户而言,能够即时的看到本地输入法的按键响应,提高了用户的输入感知。
具体实现中,上述应用于云应用的输入控制装置1可通过其内置的各个功能模块执行如上述图2a中各个步骤所提供的实现方式,上述应用于云应用的输入控制装置2可通过其内置的各个功能模块执行如上述图3a中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
上文主要介绍说明了执行主体为硬件,来实施本申请中的应用于云应用的输入控制方法,但是本申请的应用于云应用的输入控制方法的执行主体并不仅限于硬件,本申请中的应用于云应用的输入控制方法的执行主体还可以为软件,上述应用于云应用的输入控制装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如,该应用于云应用的输入控制装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。
在一些实施例中,本申请实施例提供的应用于云应用的输入控制装置可以采用软硬件结合的方式实现,作为示例,本申请实施例提供的应用于云应用的输入控制装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的应用于云应用的输入控制方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
在另一些实施例中,本申请实施例提供的应用于云应用的输入控制装置可以采用软件方式实现,图6示出的应用于云应用的输入控制装置1,其可以是程序和插件等形式的软件,并包括一系列的模块,包括输入法显示模块11和编辑结果显示模块12用于实现本申请实施例提供的应用于云应用的输入控制方法。图7示出的应用于云应用的输入控制装置2,其可以是程序和插件等形式的软件,并包括一系列的模块,包括指令接收模块21和编辑结果处理模块22用于实现本申请实施例提供的应用于云应用的输入控制方法。
参见图8,图8是本申请实施例提供的一种电子设备的结构示意图。如图8所示,本实施例中的电子设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述电子设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1004可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图8所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图8所示的电子设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的计算机程序。
应当理解,在一些可行的实施方式中,上述处理器1001可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
具体实现中,上述电子设备1000可通过其内置的各个功能模块执行如上述图2a、图3a中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,被处理器执行以实现图2a、图3a中各个步骤所提供的方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。
上述计算机可读存储介质可以是前述任一实施例提供的任务处理装置的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。上述计算机可读存储介质还可以包括磁碟、光盘、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(randomaccess memory,RAM)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2a、图3a中任一种可能的实施方式所提供的方法。
本申请的权利要求书和说明书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (15)

1.一种应用于云应用的输入控制方法,其特征在于,包括:
在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和所述云应用对应的云输入法的输入字符显示区域,其中,所述第一操作是用户发起的用于启动输入法的操作;
在通过所述本地输入法的字符输入区域接收到字符编辑操作时,通过所述云输入法的输入字符显示区域显示所述字符编辑操作对应的文本编辑结果。
2.根据权利要求1所述的方法,其特征在于,所述在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和所述云应用对应的云输入法的输入字符显示区域,包括:
响应于所述第一操作,向云服务器发送第一指令,以使所述云服务器基于所述第一指令启动云输入法,以使所述终端设备上显示所述云输入法的输入字符显示区域,并向所述终端设备发送输入法启动消息;
响应于所述输入法启动消息,启动本地输入法,显示所述本地输入法的字符输入区域。
3.根据权利要求1所述的方法,其特征在于,还包括:
响应于所述第一操作,隐藏所述本地输入法的输入字符显示区域以及所述云输入法的字符输入区域。
4.根据权利要求1所述的方法,其特征在于,所述显示终端设备的本地输入法的字符输入区域和所述云应用对应的云输入法的输入字符显示区域,包括:
不重叠的显示所述本地输入法的字符输入区域和所述云输入法的输入字符显示区域。
5.根据权利要求1所述的方法,其特征在于,所述在通过所述本地输入法的字符输入区域接收到字符编辑操作时,通过所述云输入法的输入字符显示区域显示所述字符编辑操作对应的文本编辑结果,包括:
在通过所述本地输入法的字符输入区域接收到所述字符编辑操作时,向云服务发送所述字符编辑操作对应的事件消息;
接收所述云服务器基于所述事件消息发送的对应于所述云输入法的输入字符显示区域的渲染画面;
接收所述渲染画面,通过所述云输入法的输入字符显示区域显示所述渲染画面对应的文本编辑结果。
6.根据权利要求5所述的方法,其特征在于,所述字符编辑操作包括字符输入操作、或字符修改操作、或字符删除操作;
若所述字符编辑操作为所述字符输入操作,所述事件消息中包含对应的输入结果,所述渲染画面包括所述与所述输入结果对应的输入结果画面,所述通过所述云输入法的输入字符显示区域显示所述渲染画面对应的文本编辑结果,包括:
通过所述云输入法的输入字符显示区域显示所述输入结果画面对应的文本编辑结果;
若所述字符编辑操作为所述字符修改操作,所述事件消息中包含与所述字符修改操作对应的字符修改信息,所述渲染画面包括与所述字符修改信息对应的字符修改画面,所述通过所述云输入法的输入字符显示区域显示所述渲染画面对应的文本编辑结果,包括:
通过所述云输入法的输入字符显示区域显示所述字符修改画面对应的文本编辑结果;
若所述字符编辑操作为所述字符删除操作,所述事件消息中包含与所述字符删除操作对应的字符删除信息,所述渲染画面包括与所述字符删除信息对应的字符删除画面,所述通过所述云输入法的输入字符显示区域显示所述渲染画面对应的文本编辑结果,包括:
通过所述云输入法的输入字符显示区域显示所述字符删除画面对应的文本编辑结果。
7.根据权利要求1所述的方法,其特征在于,还包括:
在所述云应用的显示界面获取到第二操作时,关闭所述本地输入法的字符输入区域和所述云输入法的输入字符显示区域,其中,所述第二操作是用户发起的用于关闭输入法的操作。
8.一种应用于云应用的输入控制方法,其特征在于,包括:
接收终端设备发送的第一指令,其中,所述第一指令是所述终端设备响应于用户在云应用的显示界面的第一操作发送的,所述第一操作是用户发起的用于启动输入法的操作;
响应于所述第一指令,启动云输入法,以使所述终端设备显示所述云应用对应的云输入法的输入字符显示区域,向所述终端设备发送输入法启动消息,以使所述终端设备根据所述输入法启动消息,启动本地输入法,显示所述本地输入法的字符输入区域,并在通过所述终端设备的所述本地输入法的字符输入区域接收到用户的字符编辑操作时,以使在所述终端设备的所述云输入法的输入字符显示区域显示所述字符编辑操作对应的文本编辑结果。
9.根据权利要求8所述的方法,其特征在于,所述以使在所述终端设备的所述云输入法的输入字符显示区域显示所述字符编辑操作对应的文本编辑结果,包括:
接收所述终端设备发送的所述字符编辑操作对应的事件消息;
根据所述事件消息确定对应于所述云输入法的输入字符显示区域的渲染画面,向所述终端设备发送所述渲染画面,以使所述终端设备根据所述渲染画面,在所述云输入法的输入字符显示区域显示所述渲染画面对应的文本编辑结果。
10.一种应用于云应用的输入控制系统,其特征在于,所述系统包括云服务器和终端设备,包括:
所述终端设备,用于接收用户在云应用的显示界面的第一操作,并响应于所述第一操作向所述云服务器发送第一指令,所述第一操作是用户发起的用于启动输入法的操作;
所述云服务器,用于接收所述第一指令,响应于所述第一指令,启动云输入法,以使所述终端设备显示所述云应用对应的云输入法的输入字符显示区域,并向所述终端设备发送输入法启动消息;
所述终端设备,用于接收并响应于所述输入法启动消息,启动本地输入法,显示所述本地输入法的字符输入区域;
所述终端设备,还用于在通过所述本地输入法的字符输入区域接收到字符编辑操作时,向所述云服务器发送所述字符编辑操作对应的事件消息;
所述云服务器,还用于接收所述事件消息,根据所述事件消息确定对应于所述云输入法的输入字符显示区域的渲染画面,向所述终端设备发送所述渲染画面;
所述终端设备,还用于接收所述渲染画面,通过所述云输入法的输入字符显示区域显示所述渲染画面对应的文本编辑结果。
11.根据权利要求10所述的系统,其特征在于,所述系统还包括代理服务器,所述终端设备通过所述代理服务器与所述云服务器进行信息交互。
12.一种应用于云应用的输入控制装置,其特征在于,包括:
输入法显示模块,用于在云应用的显示界面获取到第一操作时,显示终端设备的本地输入法的字符输入区域和所述云应用对应的云输入法的输入字符显示区域,其中,所述第一操作是用户发起的用于启动输入法的操作;
编辑结果显示模块,用于在通过所述本地输入法的字符输入区域接收到字符编辑操作时,通过所述云输入法的输入字符显示区域显示所述字符编辑操作对应的文本编辑结果。
13.一种应用于云应用的输入控制装置,其特征在于,包括:
指令接收模块,用于接收终端设备发送的第一指令,其中,所述第一指令是所述终端设备响应于用户在云应用的显示界面的第一操作发送的,所述第一操作是用户发起的用于启动输入法的操作;
编辑结果处理模块,用于响应于所述第一指令,启动云输入法,以使所述终端设备显示所述云应用对应的云输入法的输入字符显示区域,向所述终端设备发送输入法启动消息,以使所述终端设备根据所述输入法启动消息,启动本地输入法,显示所述本地输入法的字符输入区域,并在通过所述终端设备的所述本地输入法的字符输入区域接收到用户的字符编辑操作时,以使在所述终端设备的所述云输入法的输入字符显示区域显示所述字符编辑操作对应的文本编辑结果。
14.一种电子设备,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接;
所述存储器用于存储计算机程序;
所述处理器被配置用于在调用所述计算机程序时,执行如权利要求1至7或权利要求8至9任一项中所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至7或权利要求8至9任一项中所述的方法。
CN202110077732.0A 2021-01-20 2021-01-20 应用于云应用的输入控制方法、装置以及电子设备 Pending CN114816082A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110077732.0A CN114816082A (zh) 2021-01-20 2021-01-20 应用于云应用的输入控制方法、装置以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110077732.0A CN114816082A (zh) 2021-01-20 2021-01-20 应用于云应用的输入控制方法、装置以及电子设备

Publications (1)

Publication Number Publication Date
CN114816082A true CN114816082A (zh) 2022-07-29

Family

ID=82525195

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110077732.0A Pending CN114816082A (zh) 2021-01-20 2021-01-20 应用于云应用的输入控制方法、装置以及电子设备

Country Status (1)

Country Link
CN (1) CN114816082A (zh)

Similar Documents

Publication Publication Date Title
JP7013466B2 (ja) アプリケーションデータ処理方法、装置、及びコンピュータプログラム
US20220385952A1 (en) Method and apparatus for displaying live broadcast data, and device and storage medium
US9256898B2 (en) Managing shared inventory in a virtual universe
US10320717B2 (en) System and method of using conversational agent to collect information and trigger actions
US20110252461A1 (en) Methods, apparatus and systems for providing secure information via multiple authorized channels to authenticated users and user devices
WO2022205772A1 (zh) 直播间的页面元素展示方法及装置
CN109074277A (zh) 在移动应用中启用有状态动态链接
JP2013084283A (ja) リアルタイムカーネル
CN111343073B (zh) 一种视频处理方法、装置及终端设备
CN111314204B (zh) 一种互动方法、装置、终端和存储介质
US9123019B1 (en) Method, web browser and system for co-browsing online content
WO2023093414A1 (zh) 微应用的开发方法、装置、设备、存储介质及程序产品
US10372512B2 (en) Method and apparatus for automatic processing of service requests on an electronic device
US20220224663A1 (en) Message Display Method and Apparatus, Terminal, and Computer-Readable Storage Medium
WO2020220773A1 (zh) 图片预览信息的显示方法、装置、电子设备及计算机可读存储介质
JP2020161135A (ja) チャットスレッドを表示するための方法およびシステム
CN111651418B (zh) 一种文档内容下载方法、装置、计算机设备和存储介质
CN111970192B (zh) 基于会话群组的信息编辑方法及装置
CN112764746A (zh) 数据处理方法、装置、电子设备及存储介质
CN114816082A (zh) 应用于云应用的输入控制方法、装置以及电子设备
CN115469855A (zh) 一种游戏实体对象的编辑方法、装置、设备和介质
CN112054951B (zh) 资源传输方法、装置、终端及介质
CN113144606A (zh) 虚拟对象的技能触发方法及相关设备
CN115040866A (zh) 云游戏图像处理方法、装置、设备及计算机可读存储介质
WO2024007655A1 (zh) 一种社交处理方法及相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination