CN112041791B - 一种显示输入法虚拟键盘的方法及终端 - Google Patents

一种显示输入法虚拟键盘的方法及终端 Download PDF

Info

Publication number
CN112041791B
CN112041791B CN201880092870.2A CN201880092870A CN112041791B CN 112041791 B CN112041791 B CN 112041791B CN 201880092870 A CN201880092870 A CN 201880092870A CN 112041791 B CN112041791 B CN 112041791B
Authority
CN
China
Prior art keywords
message
virtual keyboard
session
terminal
interface
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.)
Active
Application number
CN201880092870.2A
Other languages
English (en)
Other versions
CN112041791A (zh
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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Publication of CN112041791A publication Critical patent/CN112041791A/zh
Application granted granted Critical
Publication of CN112041791B publication Critical patent/CN112041791B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • 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
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72436User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for text messaging, e.g. short messaging services [SMS] or e-mails
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/08Annexed information, e.g. attachments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/42Mailbox-related aspects, e.g. synchronisation of mailboxes

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一种显示输入法虚拟键盘的方法及终端,涉及终端领域,可提高终端的输入效率以及用户的输入体验。该方法包括:终端在触摸屏中显示第一应用的第一会话界面(1901);终端确定第一会话界面中的第一会话消息,该第一会话消息为最近收到的会话消息(1902);终端根据第一会话消息的类型确定对应的第一虚拟键盘,该第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息(1903);终端在上述第一会话界面中显示第一虚拟键盘(1904)。

Description

一种显示输入法虚拟键盘的方法及终端
本申请要求于2018年5月10日提交国际专利局、申请号为PCT/CN2018/086401、发明名称为“一种显示输入法虚拟键盘的方法及终端”的国际专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及终端领域,尤其涉及一种显示输入法虚拟键盘的方法及终端。
背景技术
手机等终端中一般均安装有输入法应用,用户使用输入法应用可以向终端中输入信息。目前,一些输入法应用可支持用户使用不同语言或不同类型的键盘进行信息输入。例如,输入法应用提供的虚拟键盘可以包括拼音键盘、笔画键盘、语音键盘以及表情键盘等。
通常,终端可将某一种键盘设置为默认的主键盘。例如,将拼音键盘设置为默认的主键盘。那么,每次终端启动输入法应用时总是会显示拼音键盘。这样,当用户希望使用其他键盘时需要在输入法应用中手动将主键盘切换为其他类型的键盘,这不仅影响了用户的输入体验同时降低了终端的输入效率。
发明内容
本申请提供一种显示输入法虚拟键盘的方法及终端,可提高终端的输入效率以及用户的输入体验。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请的一技术方案提供一种切换输入法虚拟键盘的方法,包括:终端在触摸屏中显示应用的会话界面,该会话界面是指与群组会话时的聊天界面;终端确定该会话界面中的第一会话消息,第一会话消息为最近收到的会话消息;进而,终端可根据第一会话消息的类型确定对应的第一虚拟键盘,并在该会话界面中显示第一虚拟键盘,使得输入法应用在拉起虚拟键盘时能够自动显示与第一会话消息的类型对应的虚拟键盘,提高终端的输入效率以及用户的输入体验,其中,第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息等;后续,终端可接收用户在输入框中输入的特定字符以及第一联系人,第一联系人为该群组中的一联系人;终端将第一联系人在该群组中最近发送的会话消息确定为第二会话消息;并根据第二会话消息的类型确定对应的第二虚拟键盘;进而,终端在上述会话界面中显示第二虚拟键盘并隐藏第一虚拟键盘,实现第一虚拟键盘与第二虚拟键盘之间的自动切换过程;后续,终端可继续接收用户在输入框中输入的特定字符以及第二联系人,第二联系人为该群组中的一联系人,且第二联系人与第一联系人不同;进而,终端将第二联系人在该群组中最近发送的会话消息确定为第三会话消息;并根据第三会话消息的类型确定对应的第三虚拟键盘;终端在该会话界面中显示第三虚拟键盘,并隐藏第二虚拟键盘(第三虚拟键盘、第二虚拟键盘与第一虚拟键盘可以互不相同),实现第二虚拟键盘与第三虚拟键盘之间的自动切换过程。
第二方面,本申请另一技术方案提供一种显示输入法虚拟键盘的方法,包括:终端在触摸屏中显示第一应用的第一会话界面;终端确定第一会话界面中的第一会话消息,该第一会话消息为最近收到的会话消息;终端根据第一会话消息的类型确定对应的第一虚拟键盘,并在第一会话界面中显示第一虚拟键盘,其中,第一会话消息的类型可以包括文本消息、数字消息、表情消息或语音消息。
也就是说,终端可以根据第一会话消息的类型为用户提供对应类型的虚拟键盘。这样,在用户打开虚拟键盘时,终端可以基于最近的会话消息自动显示与该会话消息的类型匹配的虚拟键盘,从而减少用户在使用输入法APP输入信息的过程中频繁切换虚拟键盘的操作,提高了终端的输入效率以及用户的输入体验。
在一种可能的设计方法中,上述第一会话界面可以是与第一联系人的聊天界面,第一会话消息是指第一联系人最近发送的聊天消息。
或者,上述第一会话界面可以是与群组会话时的聊天界面,第一会话消息是指该群组中一联系人最近发送的聊天消息。
在一种可能的设计方法中,在终端在第一会话界面中显示第一虚拟键盘之后,还可以包括:终端在第一会话界面中显示新接收到的第二会话消息;终端根据第二会话消息的类型确定对应的第二虚拟键盘;终端在第一会话界面中显示第二虚拟键盘,并隐藏第一虚拟键盘。这样,终端在会话界面中可将当前显示的第一虚拟键盘切换为第二虚拟键盘,实现在会话过程中不同虚拟键盘之间的自动切换。
在一种可能的设计方法中,上述第一会话界面中包括输入框;那么,在终端在第一会话界面中显示第一虚拟键盘之后,该方法还包括:终端接收用户在该输入框中输入的特定字符以及第一联系人,第一联系人为该群组会话中的一个联系人;终端将第一联系人在该群组中最近发送的会话消息确定为第三会话消息;终端根据第三会话消息的类型确定对应的第三虚拟键盘;终端在第一会话界面中显示第三虚拟键盘,并隐藏第一虚拟键盘。这样,在多人会话的场景下终端可以针对某一联系人的会话消息为用户自动切换与该会话消息的类型对应的虚拟键盘,减少在多人聊天的场景下用户手动切换键盘的次数。
在一种可能的设计方法中,在终端在第一会话界面中显示第三虚拟键盘之后,该方法还包括:终端接收用户在该输入框中输入的特定字符以及第二联系人,第二联系人为该群组会话中的一个联系人;终端将第二联系人在该群组中最近发送的会话消息确定为第四会话消息;终端根据第四会话消息的类型确定对应的第四虚拟键盘;终端在第一会话界面中显示第四虚拟键盘,并隐藏第三虚拟键盘。
在一种可能的设计方法中,上述第一会话界面中包括输入框;在终端在第一会话界面中显示第一虚拟键盘之后,该方法还包括:终端接收用户在该输入框中输入的特定字符以及第一联系人;终端确定第一联系人的国籍;终端在第一会话界面中显示与第一联系人的国籍对应的虚拟键盘,并隐藏第一虚拟键盘。这样,用户可以使用与联系人国籍对应的虚拟键盘与联系人会话,从而提高终端的输入效率。
在一种可能的设计方法中,上述第一虚拟键盘为第一输入法应用提供的键盘;上述方法还包括:终端在该触摸屏中显示第二应用的第二会话界面;终端确定第二会话界面中的第五会话消息,第五会话消息为最近接收到的会话消息;终端根据第五会话消息的类型确定对应的第五虚拟键盘,第五虚拟键盘为第二输入法应用提供的键盘;终端在第二会话界面中显示第五虚拟键盘。
在一种可能的设计方法中,第五会话消息的类型与第一会话消息的类型相同;第五虚拟键盘的类型与第一虚拟键盘的类型相同。也就是说,终端可在显示虚拟键盘时基于用户的种使用偏好,在不同应用中向用户显示不同输入法APP提供的同一类型的虚拟键盘,从而提高终端的输入效率以及用户的输入体验。
在一种可能的设计方法中,在终端在触摸屏中显示第一应用的第一会话界面之前,还包括:终端在触摸屏中显示第一应用的联系人会话列表,该联系人会话列表中包括与至少一个聊天项目,该聊天项目包括一个联系人的聊天项目或群组的聊天项目;其中,终端在触摸屏中显示第一应用的第一会话界面,具体包括:响应于针对目标聊天项目的打开操作,终端在触摸屏中显示该目标聊天项目的第一会话界面。
在一种可能的设计方法中,该虚拟键盘包括与文本消息对应的文本键盘、与语音消息对应的语音键盘、与表情消息对应的表情键盘、或者与数字消息对应的数字键盘;该表情键盘包括与emoji消息对应的emoji键盘、与颜文字消息对应的颜文字键盘或者与表情包消息对应的表情包键盘。
在一种可能的设计方法中,第一应用是微信,第二应用是支付宝;或,该联系人会话列表中包括第一联系人的聊天项目、第二联系人的聊天项目以及该会话群组的聊天项目,第一联系人的聊天项目中包含至少一条未读消息;或,该虚拟键盘中包括设置按钮,该设置按钮用于开启或关闭自动切换虚拟键盘的功能;第一会话消息为表情消息,第一虚拟键盘为表情键盘;或,第一会话消息为语音消息,第一虚拟键盘为语音键盘;或,响应于用户向该语音键盘输入的语音,终端在该输入框中输入与该语音对应的文字或音频信息;响应于用户在该语音键盘上的发送操作,终端在第一会话界面中输入该输入框中的文字或音频信息。
第三方面,本申请另一技术方案提供一种显示输入法虚拟键盘的终端,包括:显示单元、确定单元以及接收单元,其中,显示单元,用于显示应用的会话界面,该会话界面可以是与群组会话时的聊天界面;确定单元,用于确定显示单元所显示的上述会话界面中的第一会话消息,第一会话消息为最近收到的会话消息;以及根据第一会话消息的类型确定对应的第一虚拟键盘,第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息;显示单元,还用于在该会话界面中显示第一虚拟键盘;接收单元,用于接收用户在该输入框中输入的特定字符以及第一联系人,第一联系人为该群组中的一联系人;确定单元,还用于将第一联系人在该群组中最近发送的会话消息确定为第二会话消息;根据第二会话消息的类型确定对应的第二虚拟键盘;显示单元,还用于在该会话界面中显示第二虚拟键盘,并隐藏第一虚拟键盘;接收单元,还用于接收用户在该输入框中输入的特定字符以及第二联系人,第二联系人为该群组中的一联系人,第二联系人与第一联系人不同;确定单元,还用于将第二联系人在该群组中最近发送的会话消息确定为第三会话消息;根据第三会话消息的类型确定对应的第三虚拟键盘;显示单元,还用于在该会话界面中显示第三虚拟键盘,并隐藏第二虚拟键盘,第三虚拟键盘、第二虚拟键盘与第一虚拟键盘互不相同。
第四方面,本申请另一技术方案提供一种显示输入法虚拟键盘的终端,包括显示单元和确定单元,其中,显示单元用于:显示第一应用的第一会话界面;确定单元用于:确定显示单元所显示的第一会话界面中的第一会话消息,第一会话消息为最近收到的会话消息;根据第一会话消息的类型确定对应的第一虚拟键盘,第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息;显示单元还用于:在第一会话界面中显示第一虚拟键盘。
在一种可能的设计方法中,上述终端还可以包括接收单元,用于:在第一会话界面中显示新接收到的第二会话消息;确定单元还用于:根据第二会话消息的类型确定对应的第二虚拟键盘;显示单元还用于:在第一会话界面中显示第二虚拟键盘,并隐藏第一虚拟键盘。
在一种可能的设计方法中,上述接收单元,还用于:接收用户在该输入框中输入的特定字符以及第一联系人,第一联系人为该群组会话中的一个联系人;确定单元还用于:将第一联系人在该群组中最近发送的会话消息确定为第三会话消息;根据第三会话消息的类型确定对应的第三虚拟键盘;显示单元还用于:在第一会话界面中显示第三虚拟键盘,并隐藏第一虚拟键盘。
在一种可能的设计方法中,上述接收单元,还用于:接收用户在该输入框中输入的特定字符以及第二联系人,第二联系人为该群组会话中的一个联系人;确定单元还用于:将第二联系人在该群组中最近发送的会话消息确定为第四会话消息;根据第四会话消息的类型确定对应的第四虚拟键盘;显示单元还用于:在第一会话界面中显示第四虚拟键盘,并隐藏第三虚拟键盘。
在一种可能的设计方法中,上述接收单元,还用于:接收用户在该输入框中输入的特定字符以及第一联系人;确定单元还用于:确定第一联系人的国籍;显示单元还用于:在第一会话界面中显示与第一联系人的国籍对应的虚拟键盘,并隐藏第一虚拟键盘。
在一种可能的设计方法中,显示单元还用于:在该触摸屏中显示第二应用的第二会话界面;确定单元还用于:确定第二会话界面中的第五会话消息,第五会话消息为最近接收到的会话消息;根据第五会话消息的类型确定对应的第五虚拟键盘,第五虚拟键盘为第二输入法应用提供的键盘;显示单元还用于:在第二会话界面中显示第五虚拟键盘。
在一种可能的设计方法中,显示单元还用于:显示第一应用的联系人会话列表,该联系人会话列表中包括与至少一个聊天项目,该聊天项目包括一个联系人的聊天项目或群组的聊天项目;响应于针对目标聊天项目的打开操作,在触摸屏中显示该目标聊天项目的第一会话界面。
第五方面,本申请另一技术方案提供一种终端,包括:触摸屏、一个或多个处理器、存储器、多个应用程序,以及一个或多个程序;其中,处理器与存储器耦合,上述一个或多个程序被存储在存储器中,当终端运行时,该处理器执行该存储器存储的一个或多个程序,以使终端执行上述任一项切换/显示输入法虚拟键盘的方法。
第六方面,本申请另一技术方案提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当该指令在上述任一项终端上运行时,使得终端执行上述任一项切换/显示输入法虚拟键盘的方法。
第七方面,本申请另一技术方案提供一种包含指令的计算机程序产品,当其在上述任一项终端上运行时,使得终端执行上述任一项切换/显示输入法虚拟键盘的方法。
在本申请中,上述终端中各部件的名字对设备本身不构成限定,在实际实现中,这些部件可以以其他名称出现。只要各个部件的功能和本申请的实施例类似,即属于本申请权利要求及其等同技术的范围之内。
另外,第三方面至第七方面中任一种设计方式所带来的技术效果可参见上述第一方面或第二方面中不同设计方法所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种终端的结构示意图一;
图2为本申请中涉及的一种安卓操作系统的软件架构示意图;
图3为输入法框架的架构示意图;
图4A-4C为本申请实施例提供的一系列表情键盘的示意图;
图5A-5B为本申请实施例提供的一系列显示输入法虚拟键盘的场景示意图一;
图6A-6B为本申请实施例提供的一系列显示输入法虚拟键盘的场景示意图二;
图7为本申请实施例提供的一种显示输入法虚拟键盘的场景示意图三;
图8A-8B为本申请实施例提供的一系列显示输入法虚拟键盘的场景示意图四;
图9A-9C为本申请实施例提供的一系列显示输入法虚拟键盘的场景示意图五;
图10A-10C为本申请实施例提供的一系列显示输入法虚拟键盘的场景示意图六;
图11A-11B为本申请实施例提供的一系列显示输入法虚拟键盘的场景示意图七;
图12为本申请实施例提供的一种显示输入法虚拟键盘的场景示意图八;
图13为本申请实施例提供的一种切换输入法虚拟键盘的场景示意图一;
图14A-14B为本申请实施例提供的一系列切换输入法虚拟键盘的场景示意图二;
图15A-15B为本申请实施例提供的一系列切换输入法虚拟键盘的场景示意图三;
图16为本申请实施例提供的一种显示输入法虚拟键盘的场景示意图九;
图17为本申请实施例提供的一种切换输入法虚拟键盘的场景示意图四;
图18A-18B为本申请实施例提供的一系列设置输入法虚拟键盘的场景示意图;
图19为本申请实施例提供的一种切换输入法虚拟键盘的方法流程示意图;
图20为本申请实施例提供的一种显示输入法虚拟键盘的方法流程示意图;
图21为本申请实施例提供的一种终端的结构示意图二。
具体实施方式
本申请实施例提供的输入法虚拟键盘的显示方法,可以应用于终端。示例性的,该终端可以为平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、手持计算机、上网本、个人数字助理(personal digitalassistant,PDA)、可穿戴电子设备、智能手表等设备,也可以是图1所示的手机100,本申请实施例中对终端的具体形式不做特殊限制。
如图1所示,本申请实施例中的终端可以为手机100。下面以手机100为例对实施例进行具体说明。应该理解的是,图示手机100仅是终端的一个范例,并且手机100可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
如图1所示,手机100具体可以包括:处理器101、射频(radio frequency,RF)电路102、存储器103、触摸屏104、蓝牙装置105、一个或多个传感器106、WI-FI装置107、定位装置108、音频电路109、外设接口110、电源装置111等部件。这些部件可通过一根或多根通信总线或信号线(图1中未示出)进行通信。本领域技术人员可以理解,图1中示出的硬件结构并不构成对手机100的限定,手机100可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对手机100的各个部件进行具体的介绍:
处理器101是手机100的控制中心,利用各种接口和线路连接手机100的各个部分,通过运行或执行存储在存储器103内的应用程序,以及调用存储在存储器103内的数据和指令,执行手机100的各种功能和处理数据。在一些实施例中,处理器101可包括一个或多个处理单元;处理器101还可以集成应用处理器和调制解调处理器;其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器101中。举例来说,处理器101可以是华为技术有限公司制造的麒麟960多核处理器。
射频电路102可用于在收发信息或通话过程中,无线信号的接收和发送。具体地,射频电路102可以将基站的下行数据接收后,给处理器101处理;另外,将涉及上行的数据发送给基站。通常,射频电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频电路102还可以通过无线通信和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短信服务等。
存储器103用于存储应用程序以及数据,处理器101通过运行存储在存储器103的应用程序以及数据,执行手机100的各种功能以及数据处理。存储器103主要包括存储程序区以及存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等);存储数据区可以存储根据使用手机100时所创建的数据(比如音频数据、电话本等)。此外,存储器103可以包括高速随机存取存储器,还可以包括非易失存储器,例如磁盘存储器件、闪存器件或其他易失性固态存储器件等。存储器103可以存储各种操作系统,例如苹果公司所开发的
Figure GPA0000295635490000081
操作系统,谷歌公司所开发的
Figure GPA0000295635490000082
操作系统等。
触摸屏104可以包括触敏表面104-1和显示器104-2。
其中,触敏表面104-1(例如触控面板)可采集手机100的用户在其上或附近的触摸事件(比如用户使用手指、触控笔等任何适合的物体在触敏表面104-1上或在触敏表面104-1附近的操作),并将采集到的触摸信息发送给其他器件例如处理器101。其中,用户在触敏表面104-1附近的触摸事件可以称之为悬浮触控;悬浮触控可以是指,用户无需为了选择、移动或拖动目标(例如图标等)而直接接触触控板,而只需用户位于终端附近以便执行所想要的功能。在悬浮触控的应用场景下,术语“触摸”、“接触”等不会暗示用于直接接触触摸屏,而是在其附近或接近的接触。能够进行悬浮触控的触敏表面104-1可以采用电容式、红外光感以及超声波等实现。触敏表面104-1可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再发送给处理器101,触摸控制器还可以接收处理器101发送的指令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型来实现触敏表面104-1。
显示器(也称为显示屏)104-2可用于显示由用户输入的信息或提供给用户的信息以及手机100的各种菜单。可以采用液晶显示器、有机发光二极管等形式来配置显示器104-2。触敏表面104-1可以覆盖在显示器104-2之上,当触敏表面104-1检测到在其上或附近的触摸事件后,传送给处理器101以确定触摸事件的类型,随后处理器101可以根据触摸事件的类型在显示器104-2上提供相应的视觉输出。虽然在图1中,触敏表面104-1与显示屏104-2是作为两个独立的部件来实现手机100的输入和输出功能,但是在某些实施例中,可以将触敏表面104-1与显示屏104-2集成而实现手机100的输入和输出功能。可以理解的是,触摸屏104是由多层材料堆叠而成,本申请实施例中只展示出了触敏表面(层)和显示屏(层),其他层在本申请实施例中不予记载。另外,在本申请其他一些实施例中,触敏表面104-1可以覆盖在显示器104-2之上,并且触敏表面104-1的尺寸大于显示屏104-2的尺寸,使得显示屏104-2全部覆盖在触敏表面104-1下面,或者,上述触敏表面104-1可以以全面板的形式配置在手机100的正面,也即用户在手机100正面的触摸均能被手机感知,这样就可以实现手机正面的全触控体验。在其他一些实施例中,触敏表面104-1以全面板的形式配置在手机100的正面,显示屏104-2也可以以全面板的形式配置在手机100的正面,这样在手机的正面就能够实现无边框的结构。在本申请其他一些实施例中,触摸屏104还可以包括一组或多组传感器阵列,用于触摸屏104在感测用户在其上的触摸事件的同时也可以感测到用户在其上施加的压力等。
手机100还可以包括蓝牙装置105,用于实现手机100与其他短距离的终端(例如手机、智能手表等)之间的数据交换。本申请实施例中的蓝牙装置可以是集成电路或者蓝牙芯片等。
手机100还可以包括至少一种传感器106,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器。其中,环境光传感器可根据环境光线的明暗来调节触摸屏104的显示器的亮度,接近传感器可在手机100移动到耳边时,关闭显示器的电源。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机100还可配置的指纹传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不予赘述。
WI-FI装置107,用于为手机100提供遵循WI-FI相关标准协议的网络接入,手机100可以通过WI-FI装置107接入到WI-FI接入点,进而帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。在其他一些实施例中,该WI-FI装置107也可以作为WI-FI无线接入点,可以为其他终端提供WI-FI网络接入。
定位装置108,用于为手机100提供地理位置。可以理解的是,该定位装置108具体可以是全球定位系统(global positioning system,GPS)、北斗卫星导航系统等定位系统的接收器。定位装置108在接收到上述定位系统发送的地理位置后,将该信息发送给处理器101进行处理,或者发送给存储器103进行保存。在另外的一些实施例中,该定位装置108可以是辅助全球卫星定位系统(assisted global positioning system,AGPS)的接收器,AGPS是一种在一定辅助配合下进行GPS定位的运行方式,它可以利用基站的信号,配合GPS卫星信号,可以让手机100定位的速度更快;在AGPS系统中,该定位装置108可通过与辅助定位服务器(例如手机定位服务器)的通信而获得定位辅助。AGPS系统通过作为辅助服务器来协助定位装置108完成测距和定位服务,在这种情况下,辅助定位服务器通过无线通信网络与终端例如手机100的定位装置108(即GPS接收器)通信而提供定位协助。
音频电路109、扬声器113、麦克风114可提供用户与手机100之间的音频接口。音频电路109可将接收到的音频数据转换后的电信号,传输到扬声器113,由扬声器113转换为声音信号输出;另一方面,麦克风114将收集的声音信号转换为电信号,由音频电路109接收后转换为音频数据,再将音频数据输出至RF电路102以发送给比如另一手机,或者将音频数据输出至存储器103以便进一步处理。
外设接口110,用于为外部的输入/输出设备(例如键盘、鼠标、外接显示器、外部存储器、用户识别模块卡等)提供各种接口。例如通过通用串行总线接口与鼠标连接,通过用户识别模块卡卡槽上的金属触点与电信运营商提供的用户识别模块(subscriberidentity module,SIM)卡电连接。外设接口110可以被用来将上述外部的输入/输出外围设备耦接到处理器101和存储器103。
手机100还可以包括给各个部件供电的电源装置111(比如电池和电源管理芯片),电池可以通过电源管理芯片与处理器101逻辑相连,从而通过电源装置111实现管理充电、放电、以及功耗管理等功能。
尽管图1未示出,手机100还可以包括摄像头、闪光灯、微型投影装置、近场通信(near field communication,NFC)装置等,在此不予赘述。
示例性地,在手机100的存储器120中可以存储
Figure GPA0000295635490000101
操作系统,该操作系统是一个以linux为基础的移动设备操作系统,并结合手机100中的上述硬件实现各种各样的功能。下面,将详细说明该存储的
Figure GPA0000295635490000102
操作系统的软件架构。需要说明的是,本申请实施例仅以
Figure GPA0000295635490000103
操作系统为示例来说明终端要实现本实施例的技术方案的所需的软件环境,本领域技术人员可以理解,本申请实施例也可以以其它操作系统来实现。
示例性地,图2是一种可以运行在上述终端中的
Figure GPA0000295635490000104
操作系统的软件架构示意图。该软件架构可以分为四层,分别为应用程序层,应用程序框架层,函数库层和linux内核层。
1、应用程序(applications)层
应用程序层是操作系统的最上一层,包括操作系统的原生应用程序,例如电子邮件客户端、短信、通话、日历、浏览器、联系人等。当然,对于开发者来说,开发者可以编写应用程序并安装到该层。
在本申请实施例中,应用程序层内安装有一个或多个聊天类应用,例如微信、QQ或者短信等。并且,应用程序层内安装有一个或多个输入法应用,例如百度输入法、搜狗输入法等,本申请实施例对此不做任何限制。
一般而言,应用程序是使用Java语言开发,通过调用应用程序框架层所提供的应用程序编程接口(application programming interface,API)来完成。
2、应用程序框架(application framework)层
应用程序框架层主要是为开发者提供了可以访问应用程序所使用的各种API,开发者可以通过应用程序框架来与操作系统的底层(例如函数库、linux内核等)进行交互,开发自己的应用程序。该应用程序框架主要是android操作系统的一系列的服务和管理系统。应用程序框架主要包括如下基础服务:
活动管理器(activity manager):用来管理应用程序生命周期并提供常用的导航回退功能;
内容提供器(content providers):用来管理不同应用程序间的数据共享和访问;
通知管理器(notification manager):用于控制应用程序在状态栏、锁屏界面等显示提示信息(例如警告(alerts)、通知(notifications)等)给用户;
资源管理器(resource manager):提供非代码资源(如字符串、图形和布局文件(layout file)等)供应用程序使用;
剪贴板管理器(clipboard manager):主要提供应用程序内部或者应用程序之间的复制或粘贴功能;
视图(view):具有丰富的、可扩展的视图集合,可用于构建一个应用程序。它具体包括列表(list)、网格(grid)、文本(text)、按钮(button),以及图片(image)等多种类型。
位置管理器(location manager):主要是让应用程序可以访问到终端所处的地理位置。
如图2所示,应用程序框架层内还包括输入法管理器(input method manager,IMM),输入法的实现需要android操作系统各个层的参与。对于用户的输入,需要linux内核层的各种驱动的支持才能识别;需要调用输入法的应用程序运行在应用程序层;应用程序框架层用于显示应用程序的内容、用户界面(user interface,UI)、通知等;函数库层为输入法的运行提供函数支持,例如对于代码的解析、字体及图形的支持、输入动画效果的显示等等。
具体地,输入法框架(input method framework,IMF)是android操作系统的一个系统组件,开发者可以在基于IMF来开发一种输入法应用程序。参见图2,IMF主要包含三个部分:输入法管理器,输入法编辑器,客户端应用程序。
1、输入法管理器是管理IMF其他部分之间交互的一个中心点。它可以看成是一个客户端API,存在于各个应用程序的上下文中,用来与管理所有进程间交互的全局系统服务进行通信。
2、输入法编辑器(input method editor,IME):用来实现一个具体的交互模型,该交互模型允许用户生成文本,处理用户的输入。系统绑定一个当前正在用的输入法,使其创建和运行,系统决定该输入法何时隐藏或者显示它的UI。同一时间只能有一个IME运行。
3、客户端应用程序(client applications,CA)指当前调用输入法的应用程序,例如,微信、短信等,通过IMM控制输入焦点和IME的状态。一次只能有一个客户端应用程序使用IME。
这三个部分需用共同合作才能完成输入法的工作。例如打开一个需要调用输入法的应用程序,当输入框获得输入焦点时,CA会通知IMM打开输入法,然后IMM查看当前选中的IME,并调用该IME。当用户提交了输入时,IME会将输入信息传递给CA完成输入。
下面结合图3对IMF三部分的交互过程进行阐述。
IMM:完成IME和CA的绑定,同时对输入法模块进行一些参数设置和安全控制,起到中间协调的角色。其中,IMM中的inputmethodmanagerservice是整个系统中,一切与输入法有关的总控制中心,CA请求调用输入法即是通过这个进程;windowmanagerservice负责显示输入法,接收用户事件,获得焦点认证。IMM中的inputmethodmanagerservice进程会通过CA的inputmethodclient进程获取当前绑定的CA的信息,比如输入框类型;IMM中的inputmethodmanagerservice进程会通过IME的inputview进程启动、修改、隐藏IME。
IME:接收用户的按键输入信息,并调用客户端接口把输入信息传递给CA。其中,inputview进程可以从触摸屏获取用户的输入信息,也可以通过CA的inputcontext(inputconnection)进程对CA的文本信息进行处理,比如删除字符、替换字符、控制光标位置等操作。
CA:用于显示用户的输入信息,同时为IME提供当前文本框的内容。其中,CA的inputmethodmanager进程通过IMM的inputmethodmanagerservice进程间接控制IME的显示或者隐藏;CA的inputmethodmanager进程通过IME的inputmethodsession(inputmethodsessionwrapper)进程为IME提供当前文本框的状态,比如光标改变等信息,从而让IME调整输入状态;UI控件可以处理一些未经IME处理的按键信息,比如home键信息,使其直接到达CA;inputcontext(inputconnection)进程可以在CA与IME的交互完成后,把输入信息显示在用户界面上;inputmethodclient作为输入法管理服务的客户端实现,用于标识自我并接收来自管理服务端的状态变化。
一般,应用程序层中的输入法应用12可支持多种类型的虚拟键盘(或称为软键盘)。例如,输入法应用12中设置有九宫格类型的拼音键盘、全键盘类型的拼音键盘、英文键盘、数字键盘、表情键盘或者语音键盘等,本申请实施例对此不做任何限制。
示例性的,表情键盘中可以包括表情、符号、图片或动图等元素。例如,如图4A所示,触摸屏中显示的表情键盘为emoji键盘,emoji键盘中包括多种表情元素;如图4B所示,触摸屏中显示的表情键盘为颜文字(kaomoji)键盘,颜文字键盘中包括由符号元素组成的表情;如图4C所示,触摸屏中显示的表情键盘为表情包键盘,表情包键盘中可以包括图片或动图。
在本申请一些实施例中,终端可以检测输入域的类型,根据其类型来提供合适的虚拟键盘,例如,当终端检测到触摸屏上显示的输入域是文本类型,则输入法应用12可以显示全键盘类型的拼音键盘,当终端检测到触摸屏上显示的输入框是数字类型,则输入法应用12可以显示数字键盘。
输入法应用12提供的虚拟键盘中还可以包括用于切换上述键盘类型的切换按钮。如图5A所示,触摸屏中显示的虚拟键盘为九宫格类型的拼音键盘401,拼音键盘401中包括切换按钮402。该切换按钮402具体可以包括用于切换至英文键盘的按钮402a,用于切换至数字键盘的按钮402b,以及用于切换至表情键盘的按钮402c等,本申请对此不做任何限制。当然,输入法应用12中也可以设置有一个切换按钮402,用户通过多次点击切换按钮402可按照一定的顺序依次切换当前显示的虚拟键盘。
示例性地,当检测到用户从拼音键盘401上点击切换按钮402(例如上述按钮402a)的输入操作后,输入法应用12可将该输入操作所对应的输入事件发送给输入法管理器11。输入法管理器11中维护有输入法应用12的各个虚拟键盘的标识,例如,拼音键盘401对应的标识为1,英文键盘403对应的标识为0。那么,输入法管理器11基于上述输入事件可将与英文键盘对应的键盘标识(例如0)传递给输入法应用12。此时,如图5B所示,输入法应用12可以根据该键盘标识将九宫格类型的拼音键盘401切换为英文键盘403。该英文键盘403中的切换按钮可以包括用于切换回拼音键盘401的按钮404。
另外,仍如图2所示,在本申请实施例中,应用程序框架层中还设置有向输入法应用开放的内容感知服务(content sensor service)。该内容感知服务用于获取聊天类应用(例如微信)中聊天界面内的聊天消息或者聊天消息的类型。例如,文本类型的聊天消息、语音类型的聊天消息或者图片类型的聊天消息等。后续实施例中将对终端获取聊天消息或者聊天消息的类型的具体方法进行详细介绍,故此处不予赘述。
输入法应用可预先在内容感知服务中进行注册。例如,输入法应用可向内容感知服务注册自身的包名,并请求内容感知服务对微信的聊天界面中新产生的聊天消息进行监听。这样,当该聊天界面中产生新的聊天消息时,内容感知服务可提取该聊天消息并确定出该聊天消息的具体类型。进而,内容感知服务可将聊天消息的具体类型发送给输入法应用,使得输入法应用可以按照该具体类型在聊天界面中显示对应类型的虚拟键盘。例如,当最近一条的聊天消息为语音类型时,输入法应用可对应显示语音键盘;当最近的聊天消息为表情类型时,输入法应用可对应显示表情键盘等。
也就是说,终端可以基于最近一条的聊天消息自动显示与该聊天消息的类型匹配的虚拟键盘,从而减少用户在使用输入法应用输入信息的过程中频繁切换虚拟键盘的操作,提高了终端的输入效率以及用户的输入体验。
在本申请的一些实施例中,输入法应用也可以调用上述内容感知服务主动获取最近的聊天消息或聊天消息的类型。例如,输入法应用可以在用户点击微信的输入框时调用上述内容感知服务获取最近的聊天消息。或者,内容感知服务也可以在输入法的虚拟键盘未被收起时,主动将最近的聊天消息发送给输入法应用,这样,在虚拟键盘显示的过程中,输入法应用也可以根据最近的聊天消息的类型及时切换虚拟键盘的类型。其中,上述输入法虚拟键盘的具体显示方法可参见下述实施例中的相关描述,故此处不予赘述。
3、函数库(libraries)层
函数库层是应用程序框架的支撑,是连接应用程序框架层与linux内核层的重要纽带。函数库层包括一些由计算机程序C语言或C++语言编译的函数库,这些函数库能被操作系统中的不同的组件使用,它们通过应用程序框架层为开发者提供服务。具体地,函数库可以包括libc函数库,它是专门为基于embedded linux的设备定制的;函数库还可以包括多媒体库(media framework),该库支持多种编码格式的音频或视频的回放和录制,同时支持静态图像文件,以及常见的音频或视频编码格式。函数库还包括界面管理库(surfacemanager),主要负责管理针对显示系统的访问,具体用于在执行多个应用程序时候,负责管理显示与存取操作间的互动,另外也负责2D绘图与3D绘图进行显示合成。
函数库层中还可以包括其他的用于实现手机各个功能的函数库,例如:SGL(scalable graphics library):基于XML(extensible markup language)文件的2D图形图像处理引擎;SSL(secure sockets layer):位于TVP/IP协议与各种应用层协议之间,为数据通讯提供支持;等等。
android runtime是一种在
Figure GPA0000295635490000131
操作系统上的运行环境,是
Figure GPA0000295635490000132
操作系统所使用的一种新的虚拟机。在android Runtime中,采用AOT(ahead-of-time)技术,应用程序在第一次安装的时候,该应用程序的字节码就会被预先编译成机器码,让应用程序成为真正的本地应用,之后再次运行,就省去了编译这一步骤,启动和执行都会变得更加快速。
在本申请其它一些实施例中,android Runtime也可以由核心函数库(corelibraries)和dalvik虚拟机(dalvik virtual machine)代替。核心函数库提供了Java语言API中的大多数功能,主要通过Java原生界面(java native interface,JNI)的方式向应用程序框架层提供调用底层程序库的接口。同时也包含了该操作系统的一些核心API,如android.os、android.net、android.media等等。dalvik虚拟机使用一种JIT(just-in-time)的运行时编译的机制,每次启动一个进程都需要虚拟机在后台重新编译字节码,会对启动速度有一定的影响。每一个应用程序都运行在是一个dalvik虚拟机中的实例中,每一个dalvik虚拟机实例都是一个独立的进程空间。dalvik虚拟机设计成在一个设备可以高效地运行多个虚拟机。dalvik虚拟机可执行文件格式是.dex,dex格式是专为dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。需要提出的是dalvik虚拟机依赖于linux内核提供基本功能(线程、底层内存管理)。可以理解的是,android Runtime、dalvik属于不同类型的虚拟机,本领域技术人员可以在不同情况下选用不同形式的虚拟机。
4、linux内核(linux kernel)层
该层提供操作系统的核心系统服务,如安全性、内存管理、进程管理、网络协议栈和驱动模型等都基于linux内核。linux内核同时也作为硬件和软件栈之间的抽象层。该层有许多与移动设备相关的驱动程序,主要的驱动有:显示驱动;基于linux的帧缓冲驱动;作为输入设备的键盘驱动;基于内存技术设备的flash驱动;照相机驱动;音频驱动;蓝牙驱动;WI-FI驱动等。
为了便于理解,以下结合附图对本申请实施例提供的一种显示/切换输入法虚拟键盘的方法进行具体介绍。
在本申请的一些实施例中,以用户打开应用(APP)中某一用户界面的场景为例:终端接收到用户在触摸屏上针对该APP的第一操作;响应于该第一操作,终端可显示该APP中与某一联系人或群组的聊天界面。进而,终端可获取上述聊天界面中的第一聊天消息。那么,根据该第一聊天消息的类型,终端可确定出输入法APP提供的与该类型对应的第一虚拟键盘,并在上述聊天界面中显示上述第一虚拟键盘,使得第一虚拟键盘被拉起。
其中,上述应用可以是应用市场中被划分为社交类或聊天类的任意应用,例如微信、QQ、WhatsAPP等即时通信应用。或者,上述应用也可以是终端内安装的具有信息收发功能的原生应用程序,例如短信等。又或者,上述应用也可以是在应用市场中被划为工具类具有聊天功能的应用,例如支付宝等。
下面以微信为举例具体说明。图6A所示的用户界面601为微信的联系人会话列表,该显示界面601中可以包括与用户联系的一个或多个联系人的聊天项目。具体地,图6A所示的显示界面601中包括与Sara的聊天项目602,与Mike的聊天项目603以及一个名叫“我的朋友们”的微信群组的聊天项目600。每个聊天项目中具体可包括联系人/群组的头像、昵称以及最近的聊天消息和时间等内容。其中,上述聊天项目602中Sara头像的右上角显示有两条未读消息的角标。
如果终端检测到用户针对上述聊天项目602的第一操作,例如检测到点击该聊天项目602的操作,则说明用户希望进入与联系人Sara的聊天界面。此时,响应于上述第一操作,如图6B所示,终端可显示与Sara的聊天界面604。该聊天界面604中显示的聊天消息可以包括用户已经阅读的聊天消息,还可以包括用户未读的聊天消息。另外,该聊天界面604中还可以包括输入框605。输入框605用于接收用户向Sara输入的聊天信息,该聊天信息可以是文字、语音、数字、图片或者表情等。
一般,用户需要使用终端内安装的输入法APP向输入框605中输入聊天信息。示例性地,当终端检测到用户的手指点击输入框605时,终端可将该点击操作对应的输入事件上报给微信,进而微信可通过相应API调用输入法管理器,向输入法管理器请求将输入法APP提供的虚拟键盘显示在触摸屏上,使得用户可以通过虚拟键盘向输入框605中输入聊天信息。
需要说明的是,图6A和6B所示的场景为用户以上述聊天项目602为入口,从聊天项目602中打开与联系人Sara的聊天界面的场景。可以理解的是,用户还可以从其它入口中执行第一操作以打开与某一联系人的聊天界面。例如,用户可以从负一屏、上拉菜单、下拉菜单、或者锁屏界面中打开与某一联系人的聊天界面,本申请实施例对此不做任何限制。
其中,负一屏是指用户从桌面的主屏幕向右滑动进入的界面,该界面中可以显示用户常用的功能、应用以及订阅的服务和资讯等提醒事项,负一屏菜单也可被称为桌面助理、快捷菜单等。
终端显示出与Sara的聊天界面604后,终端可获取上述聊天界面中的第一聊天消息。其中,第一聊天消息可以是上述聊天界面中最近的一条聊天消息。例如,该第一聊天消息可以是图7所示的聊天界面中用户刚刚发送的语音消息701。又或者,第一聊天消息也可以是上述聊天界面中特定联系人最近发送的聊天消息。例如,该第一聊天消息可以是图7所示的聊天界面中Sara发送的表情消息702。或者,第一聊天消息可以是用户在群组内聊天时某一特定联系人最近发送的聊天消息。其中,某一联系人(例如联系人A)最近发送的聊天消息是指用户上次(最后一次)接收到的联系人A发送的消息。
在本申请的一些实施例中,终端可以通过光学字符识别(optical characterrecognition,OCR)技术获取上述第一聊天消息。其中,OCR技术,是指终端针对印刷体字符,采用光学的方式将图像中的文字、图形等信息转换成为黑白点阵的图像文件,并通过识别软件进一步对该图像文件中的信息进行分析。通过OCR技术可识别截图等图片类型的文件中包含的信息类型,例如文本、语音、图片等。
仍以微信举例,当显示出与Sara的聊天界面604后,终端内的应用程序框架层可以通知应用程序层的截屏应用执行截屏操作。进而,应用程序层中的截屏应用通过相关API访问应用程序框架层提供的截屏接口管理服务,可以截取当前聊天界面604中的内容。在截取成功之后,应用程序层的截屏应用可以生成截图。并且,终端还可以显示生成的截图,并切换回截屏时的聊天界面604。那么,基于聊天界面604的截图,终端可通过OCR技术识别出聊天界面604中包括的各个聊天消息。进而,按照时间顺序,终端可获取到聊天界面604中最近的一条聊天消息或Sara最近发送的聊天消息。仍如图6B所示,聊天界面604中最近的一条聊天消息与Sara最近发送的聊天消息均为同一条语音消息606。
在本申请的另一些实施例中,终端也可以通过获取当前显示帧的缓存数据得到上述第一聊天消息。由于终端在显示时是一个高速绘帧的过程,例如,终端可以60赫兹的频率绘制每一显示帧。在每一显示帧的绘帧过程中,应用程序框架层内的视图(view)可将当前显示帧的内容缓存一段时间。那么,当终端显示出用户与Sara的聊天界面604后,应用程序框架层可以调用接口View decorView=activity.getWindow().getDecorView()获取聊天界面604的整个窗口视图,并调用接口decorView.getChild(i)获取该窗口视图中包括的每个控件。由于聊天界面604中的每条聊天消息均可作为一个控件,因此,终端可以根据获取到的每个控件顺序或位置可以确定聊天界面604中的第一聊天消息。又或者,由于聊天界面604中的输入框605也是一个控件,因此,终端还可以将距离输入框605这一控件最近的控件确定为聊天界面604中的第一聊天消息。
在本申请另一些实施例中,微信也可以向终端的操作系统(例如上述应用程序框架层)开放特定的接口,使得应用程序框架层可以通过调用微信提供的接口获取聊天界面604中的第一聊天消息。
可以理解的是,除了上述方法可以获取第一聊天消息之外,终端还可以使用其他方式来获取第一聊天消息,本申请实施例对终端获取第一聊天消息的方法不做任何限制。
另外,终端可以在不同情况下使用上述方法获取第一聊天消息。
例如,终端显示出与Sara的聊天界面604后,如果接收到用户向聊天界面604的输入框605输入的第二操作,例如点击操作,则说明用户希望使用输入法APP向输入框605内输入信息。此时,响应于该第二操作,终端可通过上述方法获取聊天界面604中的第一聊天消息。
又例如,当终端显示如图6A所示的联系人会话列表时,如果该联系人会话列表中包括未读消息,此时,如果检测到用户点击包含未读消息的聊天项目602,一般说明用户希望回复该未读消息。因此,终端检测到用户针对图6A中的聊天项目602的点击操作后;可响应于上述点击操作,在打开聊天界面604的同时获取聊天界面604中的第一聊天消息。或者,由于图6A所示的联系人会话列表中也包括未读消息的类型等信息,因此,终端也可以在图6A所示的联系人会话列表时获取聊天项目602中的第一聊天消息的类型。
又例如,在终端显示出与Sara的聊天界面604后,如果聊天界面604中显示了新的聊天消息,则聊天界面604中最近的一条聊天消息(即第一聊天消息)也会随之改变。因此,终端还可以在聊天界面604中显示了新的聊天消息时获取聊天界面604中的第一聊天消息。
在终端获取到上述聊天界面中的第一聊天消息后,终端可根据该第一聊天消息的类型确定对应的第一虚拟键盘。示例性的,可以将聊天消息划分为文本、数字、符号、表情、语音等多种消息类型。其中,按照语言种类又可以将文本划分为中文、英文等多种类型,表情也可以划分为emoji、颜文字以及表情包等多种类型。
相应的,输入法APP提供的虚拟键盘也可以划分为文本键盘、数字键盘、符号键盘、表情键盘、语音键盘等多种类型。其中,文本键盘又可以包括中文键盘、英文键盘等多种类型的键盘,表情键盘又可以包括emoji键盘、颜文字键盘或者表情包键盘等多种类型的键盘。
在本申请实施例中,终端可以根据第一聊天消息的类型为用户提供对应类型的虚拟键盘。例如,当第一聊天消息的类型为语音类型时,终端内运行的输入法APP可以将与语音类型对应的语音键盘确定为第一虚拟键盘。这样,在用户打开虚拟键盘时,终端可以基于最近的聊天消息自动显示与该聊天消息的类型匹配的虚拟键盘,从而减少用户在使用输入法APP输入信息的过程中频繁切换虚拟键盘的操作,提高了终端的输入效率以及用户的输入体验。
示例性的,终端可在应用程序框架层中设置一个向输入法APP开放的内容感知服务,该输入法APP可以通过调用该内容感知服务获取终端确定出的第一聊天消息。当然,内容感知服务也可以将获取到的第一聊天消息发送给输入法APP。进而,输入法APP可以根据第一聊天消息的格式或控件类型确定第一聊天消息的类型。例如,当第一聊天消息为textview类型的控件时,可确定第一聊天消息为文本类型;当第一聊天消息为image view类型的控件时,可确定第一聊天消息为图片类型。当然,也可以由上述内容感知服务先确定出第一聊天消息的类型,进而,输入法APP可通过调用该内容感知服务获取到第一聊天消息的类型。
由于在一段时间内用户与联系人之间的聊天方式具有连续性和统一性,因此,输入法APP获取到第一聊天消息的类型后,可将自身支持的多种虚拟键盘中与第一聊天消息的类型对应的虚拟键盘确定为第一虚拟键盘。例如,当第一聊天消息的类型为中文文本时,与其对应的虚拟键盘可以为九宫格类型的拼音键盘或全键盘类型的拼音键盘;当第一聊天消息的类型为数字时,与其对应的虚拟键盘可以为数字键盘;当第一聊天消息的类型为语音时,与其对应的虚拟键盘可以为语音键盘;当第一聊天消息的类型为表情时,与其对应的虚拟键盘可以为表情键盘。当输入法APP支持的表情键盘有多种时,终端可根据第一聊天消息的具体表情类型确定与其对应的虚拟键盘为emoji键盘、颜文字键盘或者表情包键盘。
在本申请的另一些实施例中,如果第一聊天消息的接收时间距离当前时间的时间间隔大于预设时间,则终端可将默认的虚拟键盘确定为上述第一虚拟键盘。例如,第一聊天消息为联系人在3个小时前发给用户的,而预设时间为2小时,则说明当前的输入场景可能已经改变,因此,终端可以不再根据第一聊天消息的类型确定后续准备显示的第一虚拟键盘,而是将默认的虚拟键盘确定为第一虚拟键盘。该默认的虚拟键盘可以是用户使用频率最高的虚拟键盘,或者,该默认的虚拟键盘可以是用户最近一次使用的虚拟键盘,本申请实施例对此不做任何限制。
如图8A所示,如果检测到用户向聊天界面604中的输入框605输入第二操作,例如点击操作,则终端将其对应的输入事件上报给微信后,微信可通过调用应用程序框架层中的输入法管理器,请求输入法APP在上述聊天界面中打开输入法APP中确定的上述第一虚拟键盘。此时,如图8B所示,终端可在上述聊天界面604中显示与语音类型的第一聊天消息606对应的语音键盘801。也就是说,通过第一聊天消息的类型,终端可确定并显示出本次输入过程中用户所需的虚拟键盘的类型,从而在打开虚拟键盘时便可显示出与第一聊天消息的类型对应的虚拟键盘,避免出现用户打开虚拟键盘后需要进行多次切换才能找到所需虚拟键盘的不便。
终端在聊天界面604中显示出语音键盘801之后,输入法APP可开始检测接收到的音频信息。进而,如图9A所示,输入法APP可以将采集到的音频信息以语音的形式输入至输入框605中,并且,当检测到用户点击语音键盘801中的发送按钮802后,微信可以语音的形式将采集到的音频信息发送给Sara。也就是说,如果用户通过语音键盘801输入的消息为语音消息,则输入法APP向输入框605中输入的消息,以及微信发送给联系人的消息也均为语音消息,从而保证输入消息的类型的一致性。
又例如,如图9B所示,输入法APP可以将采集到的音频信息转换为文字的形式输入至输入框605中,这样用户能够直观的确认出输入法APP采集到的音频信息是否准确。并且,当检测到用户点击语音键盘801中的发送按钮802后,微信可仍以语音的形式将采集到的音频信息发送给Sara,保证用户输入消息时的消息类型与联系人接收到的消息类型一致。
又例如,如图9C所示,输入法APP可以将采集到的音频信息转换为文字的形式输入至输入框605中,并且,当检测到用户点击语音键盘801中的发送按钮802后,微信可将输入框中的文字发送给Sara,保证输入框605中输入消息的消息类型与联系人接收到的消息类型一致。
当然,输入法APP也可以通过调用微信提供的软件开发工具包(softwaredevelopment kit,SDK),将采集到的音频信息(或者该音频信息的文字形式)直接通过微信的服务器发送给联系人。此时,用户通过语音键盘801输入的语音信息无需进入输入框605便可显示在聊天界面604中。
需要说明的是,终端接收到用户向输入框605输入的第二操作可以发生在终端获取上述聊天界面中的第一聊天消息之前,也可以发生在终端确定第一虚拟键盘之前,本申请实施例对此不做任何限制。例如,当终端检测到用户向输入框605输入第二操作后,响应于该第二操作,终端可按照上述实施例中的方法获取聊天界面中的第一聊天消息,并根据第一聊天消息的类型在聊天界面中显示第一虚拟键盘。
以上实施例中均以聊天界面中第一聊天消息的类型为语音类型举例说明的,在本申请的一些实施例中,上述第一聊天消息还可以是表情类型的聊天消息。
如图10A所示,如果终端从聊天界面901中获取到的第一聊天消息为Sara发送的emoji表情消息902,则响应于用户向输入框903中输入的第二操作,终端可在聊天界面901中显示与emoji表情消息902对应的emoji键盘904。
或者,如图10B所示,如果终端从聊天界面901中获取到的第一聊天消息为Sara发送的表情包消息905,则响应于用户向输入框903中输入的第二操作,终端可在聊天界面901中显示与表情包消息905对应的表情包键盘906。
或者,如图10C所示,如果终端从聊天界面901中获取到的第一聊天消息为Sara发送的颜文字消息907,则响应于用户向输入框903中输入的第二操作,终端可在聊天界面901中显示与颜文字消息907对应的颜文字键盘908。
在本申请的另一些实施例中,上述第一聊天消息还可以是文本类型的聊天消息。
如图11A所示,如果终端从聊天界面1001中获取到的第一聊天消息为Sara发送的中文文本消息1002,则响应于用户向输入框1003中输入的第二操作,终端可在聊天界面1001中显示与中文文本消息1002对应的拼音键盘1004。如果输入法APP支持多种中文输入键盘,例如,笔画输入键盘、手写输入键盘、九宫格拼音键盘、全键盘拼音键盘以及五笔输入键盘。那么,输入法APP可将用户使用频率最高的中文输入键盘显示在聊天界面1001中,或者,将用户最近一次使用的中文输入键盘显示在聊天界面1001中。
或者,如图11B所示,如果终端从聊天界面1001中获取到的第一聊天消息为Sara发送的英文(或其他语言)的文本消息1005,则响应于用户向输入框1003中输入的第二操作,终端可在聊天界面1001中显示与英文(或其他语言)的文本消息1005对应的英文(或其他语言)键盘1006。
在本申请的另一些实施例中,上述第一聊天消息还可以是群组中的最新聊天消息。例如,如图12所示,名称为“我的朋友们”的群组中包括4位联系人。用户打开“我的朋友们”这一群组的聊天界面后,如果检测到用户向输入框1011中输入第二操作,则终端可以获取到该聊天界面中最近的聊天消息为语音类型的语音消息1012,那么,终端可在该聊天界面中显示与语音消息1012对应的语音键盘1013。
可以看出,在本申请实施例中,终端可以在用户从聊天界面中打开输入法的虚拟键盘时,在聊天界面中显示与最近聊天消息的类型对应的虚拟键盘。这样,在打开输入法APP的虚拟键盘时终端能够自动为用户提供与当前聊天输入方式匹配的虚拟键盘,避免用户多次切换虚拟键盘的不便。
在本申请另外一些实施例中,当终端在上述聊天界面中显示了与上述第一聊天消息的类型对应的第一虚拟键盘后,用户可使用该第一虚拟键盘向输入框中输入聊天信息,并将聊天信息发送给联系人。此时,用户与联系人的聊天界面中会产生新的聊天消息。当然,新的聊天消息也可能是联系人向用户发送的新消息,本申请实施例对此不做任何限制。
当上述聊天界面中产生新的聊天消息后,终端可获取上述聊天界面中新产生的第二聊天消息。进而,根据该第二聊天消息的类型,终端确定输入法APP提供的与第二聊天消息的类型对应的第二虚拟键盘。这样,终端在上述聊天界面中可将当前显示的第一虚拟键盘切换为第二虚拟键盘,实现在聊天过程中不同虚拟键盘之间的自动切换。
其中,上述第二聊天消息可以是指上述聊天界面内新产生的聊天消息中最近的聊天消息,或者,第二聊天消息可以是指上述聊天界面内新产生的聊天消息中联系人最近发送的聊天消息。终端获取第二聊天消息的相关方法可参见上述实施例中终端获取第一聊天消息的具体方法,故此处不再赘述。
示例性的,如图13所示,聊天界面604中新产生的聊天消息包括聊天消息1101和聊天消息1102。其中,聊天消息1102为联系人Sara最近一次发送给用户的聊天消息(即第二聊天消息)。当聊天消息1102为表情类型的聊天消息时,终端可以将与表情类型对应的表情键盘确定为上述第二虚拟键盘。
那么,仍如图13所示,终端可在聊天界面604中将图8B中原本显示的语音键盘801自动切换为与第二聊天消息对应的表情键盘1103。这样,用户与联系人在聊天界面进行聊天的过程中,可根据最近聊天消息的类型在聊天界面中自动切换虚拟键盘的类型,从而方便用户使用同类型的输入方式与联系人聊天,避免用户多次切换虚拟键盘的不便。
当然,如果当上述聊天界面中新产生的第二聊天消息与第一聊天消息的类型不同时,终端检测到用户正在使用与第一聊天消息的类型对应的第一虚拟键盘(例如上述语音键盘801),则终端可以仍继续显示语音键盘801,或者,终端也可以在检测到用户手指离开语音键盘801后将语音键盘801自动切换为表情键盘1103。这样在虚拟键盘的切换过程中不会打扰用户的正常输入过程。
在本申请的一些实施例中,当终端显示与某一联系人或群组的聊天界面时,用户还可以通过执行相应的操作提示相关的联系人查看用户发出的聊天消息。例如,用户向聊天界面的输入框中输入特定字符(如“@”或者“#”)时,可触发终端显示联系人列表供用户选择一个或多个联系人。用户选中了一个或多个联系人后可发送包括上述特定字符的聊天消息,此时,被用户选中的一个或多个联系人的终端会提示用户查看该聊天消息,例如,可以显示“该群组中有人提到你,请查看消息”的提示信息。
如图14A所示,用户在聊天界面内与群组“我的朋友们”中的联系人聊天,终端可以根据聊天界面内最新的聊天消息的类型,例如中文文本消息1401,自动在聊天界面中显示与中文文本消息1401对应的中文键盘1402。如果检测到用户的手指长按或重压某一联系人(例如Mike)的头像的操作时,终端可自动向输入框1403中输入“@Mike”。此时,说明用户希望与Mike对话,那么,终端可查询最近一次接收到的Mike发来的聊天消息的类型。如图14B所示,最近一次接收到的Mike发来的消息为语音消息1404。进而,终端可在聊天界面中将中文键盘1402自动切换为与语音消息1404对应的语音键盘1405。这样,在多人聊天的场景下终端可以针对某一联系人的聊天消息为用户自动切换与该聊天消息的类型对应的虚拟键盘,减少在多人聊天的场景下用户手动切换键盘的次数。
又例如,当终端检测到输入框1403中输入了“@Mike”时,终端也可将当前的虚拟键盘切换为最近一次与Mike对话时所使用的虚拟键盘,从而提高与Mike聊天时的输入效率。
当然,用户在向输入框1403中输入“@Mike”时也可手动切换当前显示的虚拟键盘,本申请实施例对此不做任何限制。
另外,如果用户在输入框1403中“@”了多个联系人,例如,用户向输入框1403中输入了“@Mike”和“@Sara”。那么,终端可以从这多个联系人中选择一个联系人,例如选择最近联系的联系人,或者联系频率最高的联系人(例如Sara),进而根据最近一次接收到的Sara发来的消息的类型,显示与该消息的类型对应的虚拟键盘。
另外,上述实施例中均以终端切换同一输入法APP中不同类型的虚拟键盘为例说明的。可以理解的是,终端内可能安装有多个输入法APP。那么,终端在确定与第一聊天消息(或第二聊天消息)的类型对应的虚拟键盘时,还可以在多个输入法APP提供的虚拟键盘中进行选择,使得终端可以根据聊天消息的类型在多种输入法APP之间自动切换。
例如,终端内安装有输入法APPA和输入法APPB。如图15A所示,终端获取到的第一聊天消息为微信中Sara发送的表情消息1201。那么,如果输入法APPA和输入法APPB均设置有与表情类型消息对应的表情键盘,则终端可以将用户上一次在微信中使用的表情键盘,或者在微信中使用频率最高的表情键盘(例如输入法APPA提供的表情键盘1202)显示在与Sara的聊天界面中。
又例如,如图15B所示,终端获取到的第一聊天消息为QQ中Alice发送的表情消息1201。那么,如果输入法APPA和输入法APPB均设置有与表情类型消息对应的表情键盘,则终端可以将用户上一次在QQ中使用的表情键盘,或者在QQ中使用频率最高的表情键盘(例如输入法APPB提供的表情键盘1203)显示在与Alice的聊天界面中。
可以看出,虽然终端获取到的第一聊天消息均属于表情类型的聊天消息,但由于在不同应用中用户对不同输入法APP提供的表情键盘的使用偏好不一样,因此,本申请实施例中终端可在显示虚拟键盘时基于用户的这种使用偏好,在不同应用中向用户显示不同输入法APP提供的同一类型的虚拟键盘,从而提高终端的输入效率以及用户的输入体验。
在本申请的另一些实施例中,终端还可以统计在不同应用运行时用户分别使用各类虚拟键盘的频率。例如,终端在运行游戏应用A时,终端可统计用户分别使用语音键盘、表情键盘、拼音键盘以及数字键盘进行输入的频率。例如,如果在预定时间内,终端检测到用户连续5次调出了语音键盘进行输入,则说明在游戏应用A的应用场景下用户比较习惯于使用语音键盘进行输入,因此终端可记录游戏应用A与语音键盘之间的对应关系。这样的话,后续在终端运行游戏应用A的过程中,如果检测到用户执行了打开虚拟键盘的操作,则终端可根据已经记录的对应关系显示出语音键盘。这样一来,用户在不同应用中使用虚拟键盘时,终端都能够根据用户对不同类型的虚拟键盘的使用频率,显示出符合用户使用习惯的虚拟键盘。
进一步地,仍以上述游戏应用A举例,由于用户在游戏应用A中对虚拟键盘的使用习惯能够很大程度上反映出用户在大部分游戏类应用中对虚拟键盘的使用习惯。因此,终端确定出游戏应用A与语音键盘之间的对应关系后,还可建立终端内安装的各个游戏类应用与语音键盘之间的对应关系。这样,在终端运行游戏应用B的过程中,如果终端检测到用户执行了打开虚拟键盘的操作,则终端也可以显示出对应的语音键盘,方便用户在游戏场景下使用符合自身使用习惯的虚拟键盘进行输入。
又或者,终端也可以在显示输入法应用的虚拟键盘时,对某一特定虚拟键盘的使用频率进行统计,从而确定出该虚拟键盘使用频率较高的应用场景。以表情键盘中的Animoji(动话表情)键盘为例,终端可以在每次显示Animoji键盘时,记录此时调用该Animoji键盘的应用包名。进而,终端可以统计出使用Animoji键盘的频率最高的应用(例如微信应用)。这样,后续在终端运行微信应用的过程中,如果检测到用户执行了打开虚拟键盘的操作,则终端可以显示出对应的Animoji键盘。或者,终端还可以统计出用户在与哪一位联系人聊天时使用Animoji键盘的频率最高。这样,后续如果终端在该联系人的会话界面中检测到用户执行了打开虚拟键盘的操作,则终端可显示出对应的Animoji键盘,使得终端可在显示虚拟键盘时基于用户对不同虚拟键盘的使用偏好,在不同的应用场景下为用户提供符合其使用习惯的虚拟键盘。
另外,上述实施例中均以聊天场景举例说明终端显示虚拟键盘的具体方法,可以理解的是,上述虚拟键盘的显示方法也可以应用在回复、转发或评论等需要通过虚拟键盘进行输入的社交场景中,本申请实施例对此不做任何限制。
例如,如图16所示,终端显示的是微博应用中某一联系人的微博列表,如果检测到用户点击某一条微博的评论按钮1601,则终端可以根据该微博内容的具体类型确定待显示的虚拟键盘的类型。例如,上述微博为图片类型的微博,那么,终端可将待显示的虚拟键盘确定为图片键盘,并且,响应于用户点击评论按钮1601的操作,终端将图片键盘1602显示在当前的界面中。
又例如,终端还可以根据上述微博中评论或回复的具体类型,确定待显示的虚拟键盘的类型。例如,终端可以获取该微博最近一条评论的类型,如果该评论是表情类型的,则终端可将待显示的虚拟键盘确定为与表情类型对应的表情键盘。又例如,终端可以统计该微博中每一条评论的具体类型(例如表情类型、文本类型、图片类型等),进而终端可计算出哪种类型的评论数目最多。如果文本类型的评论数目最多,则终端可将待显示的虚拟键盘确定为文本键盘,如果表情类型的评论数目最多,则终端可将待显示的虚拟键盘确定为表情键盘,本申请实施例对此不做任何限制。
又或者,如图17所示,仍以评论上述微博为例,当用户向输入框1701中输入“@Linda”以提示联系人Linda查看该评论消息时,终端可以根据联系人Linda在注册微博账号时填写的国籍确定待显示的虚拟键盘的类型。例如,Linda在注册微博账号时填写的国籍为美国,那么,终端可将待显示的虚拟键盘确定为英文键盘,并将当前显示的键盘切换为英文键盘1702。
这样,终端可以在评论或转发某一联系人发布的消息时,显示与该消息的类型对应的虚拟键盘。这样,在使用输入法APP的虚拟键盘时终端能够自动为用户提供满足当前输入场景的虚拟键盘,避免用户多次切换虚拟键盘的不便。
在本申请的另一些实施例中,如图18A所示,终端在上述聊天界面中显示的虚拟键盘(例如上述语音键盘、表情键盘或文本键盘等)上还可以包括设置按钮1801,该设置按钮1801可用于开启或关闭终端根据聊天消息的类型(或用户使用习惯)自动为用户切换虚拟键盘的这一功能。
也就是说,在已经关闭自动为用户切换虚拟键盘这一功能时,如果终端检测到用户点击该设置按钮1801,则终端可以开启自动为用户切换虚拟键盘这一功能。后续,终端可以根据聊天界面中聊天消息的类型自动为用户切换对应的虚拟键盘,从而为用户提供满足当前输入场景的虚拟键盘,避免用户多次切换虚拟键盘的不便。
相应的,在已经开启自动为用户切换虚拟键盘这一功能时,如果终端检测到用户点击该设置按钮1801,则终端可以关闭自动为用户切换虚拟键盘这一功能。后续,终端不会再根据聊天界面中聊天消息的类型自动为用户切换对应的虚拟键盘,避免终端频繁切换虚拟键盘降低用户使用输入法应用时的用户体验。
又例如,如果终端检测到用户点击该设置按钮1801,则终端还可以跳转至设置APP的输入法设置界面1802。此时,如图18B所示,输入法设置界面1802中可以包含开启或关闭终端根据聊天消息的类型自动为用户切换虚拟键盘的这一功能选项1803。这样,用户可以手动在输入法设置界面1802中开启或关闭功能选项1803,选择符合用户输入习惯的输入方式。当然,用户也可以通过打开设置APP的输入法设置界面1802开启或关闭功能选项1803,本申请实施例对此不做任何限制。
结合上述实施例及相应附图,本申请实施例提供一种显示/切换输入法虚拟键盘的方法,该方法可以在如图1或图2所示的终端中实现。如图19所示,该方法可以包括以下步骤:
步骤1901:终端在触摸屏中显示第一应用的第一会话界面。
上述第一应用可以是微信、支付宝、微博等聊天类应用。
在一些实施例中,上述第一会话界面可以是与第一联系人的聊天界面,例如图6B或图8B中与Sara的聊天界面604。此时,上述第一会话消息是指第一联系人最近发送的聊天消息,例如图6B中Sara上次(最后一次)发送的语音消息606。
在另一些实施例中,上述第一会话界面也可以是与群组会话时的聊天界面,例如图12、图14A或图14B中群组名称为“我的朋友们”的聊天界面。此时,上述第一会话消息是指该群组中某一联系人最近发送的聊天消息,例如图12中Mike上次(最后一次)发送的语音消息1012。或者,上述第一会话界面还可以是进行回复、转发或评论等社交场景中的会话界面,例如图16中微博评论界面等,本申请实施例对此不做任何限制。
另外,在终端显示上述第一会话界面之前,可以先显示显示第一应用的联系人会话列表,例如图6A所示的联系人会话列表601。该联系人会话列表中包括与至少一个聊天项目,这些聊天项目可以是与某个联系人的聊天项目(例如图6A中的聊天项目602和603),也可以是与某个群组的聊天项目(例如图6A中的聊天项目600)。当检测到用户针对联系人会话列表601中的某一聊天项目(即目标聊天项目)的打开操作时,终端可从联系人会话列表601跳转至目标聊天项目的第一会话界面。
步骤1902:终端确定第一会话界面中的第一会话消息,该第一会话消息为最近收到的会话消息。
例如,该第一会话消息可以是第一会话界面中最近一次接收到的会话消息,也可以是在第一会话界面中最近一次接收到的某一联系人的会话消息,本申请实施例对此不做任何限制。
示例性的,终端可以通过OCR技术识别出第一会话界面中的第一会话消息,也可以通过获取当前显示帧的缓存数据得到上述第一聊天消息,还可以通过调用微信提供的接口获取上述第一聊天消息。其中,获取第一会话消息的方法可参见上述实施例中的相关描述,故此处不再赘述。
步骤1903:终端根据第一会话消息的类型确定对应的第一虚拟键盘,该第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息。
其中,输入法APP提供的虚拟键盘可以划分为文本键盘、数字键盘、符号键盘、表情键盘、语音键盘等多种类型。其中,文本键盘又可以包括中文键盘、英文键盘等多种类型的键盘,表情键盘又可以包括图4A-图4C所示的emoji键盘、颜文字键盘或者表情包键盘等多种类型的键盘。
示例性的,当第一会话消息的类型为语音类型时,终端内运行的输入法APP可以将与语音类型对应的语音键盘确定为第一虚拟键盘。当第一会话消息的类型为中文文本类型时,与其对应的第一虚拟键盘可以为九宫格类型的拼音键盘或全键盘类型的拼音键盘;当第一会话消息的类型为数字类型时,与其对应的第一虚拟键盘可以为数字键盘;当第一会话消息的类型为表情类型时,与其对应的第一虚拟键盘可以为表情键盘。当输入法APP支持的表情键盘有多种时,终端可根据第一会话消息的具体表情类型确定与其对应的虚拟键盘为emoji键盘、颜文字键盘或者表情包键盘。
步骤1904:终端在上述第一会话界面中显示第一虚拟键盘。
也就是说,终端可以根据第一会话消息的类型显示对应类型的虚拟键盘。例如,当第一会话消息的类型为语音类型时,终端内运行的输入法APP可以将与语音类型对应的语音键盘确定为第一虚拟键盘。这样,在用户打开虚拟键盘时,终端可以基于最近的聊天消息自动显示与该聊天消息的类型匹配的虚拟键盘,从而减少用户在使用输入法APP输入信息的过程中频繁切换虚拟键盘的操作,提高了终端的输入效率以及用户的输入体验。
在终端在上述第一会话界面中显示第一虚拟键盘后,用户可使用该第一虚拟键盘与第一会话界面中的联系人聊天,此时,上述第一会话界面中会相应的产生新接收到的第二会话消息,例如图13中的表情消息1102。终端可以根据第二会话消息的类型确定对应的第二虚拟键盘(例如图13中的表情键盘1103),进而在第一会话界面中显示该第二虚拟键盘,并隐藏第一虚拟键盘。这样,终端在上述第一会话界面中可将当前显示的第一虚拟键盘切换为第二虚拟键盘,实现在聊天过程中不同虚拟键盘之间的自动切换。
又例如,当终端在上述第一会话界面中显示第一虚拟键盘后,用户可以向第一会话界面的输入框中输入特定字符(如“@”或者“#”)和联系人,以提示该联系人查看用户发出的聊天消息。因此,如果终端接收到用户在所述输入框中输入的特定字符以及第一联系人,例如图14A中输入的“@Mike”,终端可以将第一联系人在群组中最近发送的会话消息确定为第三会话消息;例如,将最近一次接收到的Mike发来的语音消息1404确定为第三会话消息。进而,终端可根据第三会话消息的类型确定对应的第三虚拟键盘,并在第一会话界面中显示该第三虚拟键盘,并隐藏原本显示的第一虚拟键盘,例如图14B中将中文键盘1402切换为与Mike发来的语音消息1404对应的语音键盘1405。
又例如,当终端在上述第一会话界面中显示第一虚拟键盘后,如果检测到用户在输入框中输入的特定字符以及第一联系人,例如用户在图17所示的输入框1701中输入的“@Linda”;终端可确定该第一联系人的国籍,进而在第一会话界面中显示与第一联系人的国籍对应的虚拟键盘,并隐藏原本显示的第一虚拟键盘,例如将图17中所示的中文键盘切换为与Linda的国籍对应的英文键盘1702。
又例如,终端也可以在触摸屏中显示与上述第一应用不同的第二应用的第二会话界面,例如,该第二会话界面可以为图15B中QQ应用内与Alice的聊天界面;终端可确定该第二会话界面中的第五会话消息,第五会话消息是指在第二会话界面中最近接收到的会话消息,例如图15B中的表情消息1201;这样,终端可以根据第五会话消息的类型确定第二输入法应用提供的对应的第五虚拟键盘,并在第二会话界面中显示该第五虚拟键盘,例如在图15B中显示输入法应用B提供的与表情消息1201对应的表情键盘1203。
结合上述实施例及相应附图,本申请实施例提供一种在群组会话场景下显示/切换输入法虚拟键盘的方法,该方法可以在如图1或图2所示的终端中实现。如图20所示,该方法可以包括以下步骤:
步骤2001:终端在触摸屏中显示应用的会话界面,该会话界面是指与群组会话时的聊天界面。
步骤2002:终端确定上述会话界面中的第一会话消息,第一会话消息为最近收到的会话消息。
步骤2003:终端根据第一会话消息的类型确定对应的第一虚拟键盘,第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息。
步骤2004:终端在上述会话界面中显示上述第一虚拟键盘。
其中,步骤2001-2004的实现方法可参见上述步骤1901-1904以及相关附图的详细描述,故此处不再赘述。
步骤2005:终端接收用户在输入框中输入的特定字符以及第一联系人,第一联系人为群组中的一联系人。
步骤2006:终端将第一联系人在上述群组中最近发送的会话消息确定为第二会话消息。
步骤2007:终端根据第二会话消息的类型确定对应的第二虚拟键盘。
步骤2008:终端在上述会话界面中显示第二虚拟键盘,并隐藏第一虚拟键盘。
在步骤2005-2008中,当终端在上述会话界面中显示了上述第一虚拟键盘之后,用户可以向该会话界面的输入框中输入特定字符(如“@”或者“#”)和第一联系人,以提示该第一联系人查看用户发出的聊天消息。例如,如图14A所示,用户在“我的朋友们”的群组聊天界面中输入“@Mike”。进而,终端可以将第一联系人在该群组中最近发送的会话消息确定为第二会话消息;例如,将最近一次接收到的Mike发来的语音消息1404确定为第二会话消息。进而,终端可根据第三会话消息的类型确定对应的第三虚拟键盘,并在第一会话界面中显示该第三虚拟键盘,并隐藏原本显示的第一虚拟键盘,例如,如图14B所示,终端将原本显示的中文键盘1402切换为与Mike发来的语音消息1404对应的语音键盘1405。
步骤2009:终端接收用户在输入框中输入的特定字符以及第二联系人,第二联系人为上述群组中的某一联系人,且第二联系人与第一联系人不同。
步骤2010:终端将第二联系人在上述群组中最近发送的会话消息确定为第三会话消息。
步骤2011:终端根据第三会话消息的类型确定对应的第三虚拟键盘。
步骤2012:终端在上述会话界面中显示第三虚拟键盘,并隐藏第二虚拟键盘。
其中,上述第三虚拟键盘、第二虚拟键盘与第一虚拟键盘互不相同。
在步骤2009-2012中,当终端在上述会话界面中显示了上述第二虚拟键盘之后,用户还可以继续向该会话界面的输入框中输入特定字符(如“@”或者“#”)和第二联系人,以提示该第二联系人查看用户发出的聊天消息。例如,用户可以在图14A或图14B中的“我的朋友们”的群组聊天界面中输入“@Sara”。进而,终端可以将第二联系人在该群组中最近发送的会话消息确定为第二会话消息;例如,将最近一次接收到的Sara发来的中文文本消息确定为第三会话消息。进而,终端可根据第三会话消息的类型确定对应的第三虚拟键盘,并在第一会话界面中显示该第三虚拟键盘,并隐藏原本显示的第二虚拟键盘,例如,将图14B中显示的语音键盘1405切换为与Sara发来的中文文本消息对应的中文键盘。
如图21所示,本申请另外一些实施例公开了一种终端,该终端可以包括:触摸屏2101,其中,所述触摸屏2101包括触敏表面2106和显示屏2107;一个或多个处理器2102;存储器2103;多个应用程序2108;以及一个或多个计算机程序2104,上述各器件可以通过一个或多个通信总线2105连接。其中该一个或多个计算机程序2104被存储在上述存储器2103中并被配置为被该一个或多个处理器2102执行,该一个或多个计算机程序2104包括指令,上述指令可以用于执行如图19-图20及相应实施例中的各个步骤。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请实施例揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。

Claims (24)

1.一种切换输入法虚拟键盘的方法,其特征在于,包括:
终端在触摸屏中显示应用的会话界面,所述会话界面是指与群组会话时的聊天界面;
所述终端确定所述会话界面中的第一会话消息,所述第一会话消息为最近收到的会话消息;
所述终端根据所述第一会话消息的类型确定对应的第一虚拟键盘,所述第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息;
响应于针对所述第一会话界面中输入框的触摸操作,所述终端在所述会话界面中显示所述第一虚拟键盘;
所述终端接收用户在所述输入框中输入的特定字符以及第一联系人,所述第一联系人为所述群组中的一联系人;
所述终端将所述第一联系人在所述群组中最近发送的会话消息确定为第二会话消息;
所述终端根据所述第二会话消息的类型确定对应的第二虚拟键盘;
所述终端在所述会话界面中显示所述第二虚拟键盘,并隐藏所述第一虚拟键盘;
所述终端接收用户在所述输入框中输入的特定字符以及第二联系人,所述第二联系人为所述群组中的一联系人,所述第二联系人与所述第一联系人不同;
所述终端将所述第二联系人在所述群组中最近发送的会话消息确定为第三会话消息;
所述终端根据所述第三会话消息的类型确定对应的第三虚拟键盘;
所述终端在所述会话界面中显示所述第三虚拟键盘,并隐藏所述第二虚拟键盘,所述第三虚拟键盘、所述第二虚拟键盘与所述第一虚拟键盘互不相同。
2.一种显示输入法虚拟键盘的方法,其特征在于,包括:
终端在触摸屏中显示第一应用的第一会话界面;所述第一会话界面是指与群组会话时的聊天界面;所述终端确定所述第一会话界面中的第一会话消息,所述第一会话消息为最近收到的会话消息;
所述终端根据所述第一会话消息的类型确定对应的第一虚拟键盘,所述第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息;
所述终端在所述第一会话界面中显示所述第一虚拟键盘;
在未新接收到第二会话消息的情况下,所述终端接收用户在输入框中输入的特定字符以及第一联系人,所述第一联系人为所述群组会话中的一个联系人;
所述终端将所述第一联系人在所述群组中最近发送的会话消息确定为第三会话消息;
所述终端根据所述第三会话消息的类型确定对应的第三虚拟键盘;
所述终端在所述第一会话界面中显示所述第三虚拟键盘,并隐藏所述第一虚拟键盘。
3.根据权利要求2所述的显示输入法虚拟键盘的方法,其特征在于,所述第一会话消息是指所述群组中一联系人最近发送的聊天消息。
4.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,在所述终端在所述第一会话界面中显示所述第一虚拟键盘之后,还包括:
在新接收到第二会话消息的情况下,所述终端在所述第一会话界面中显示新接收到的第二会话消息;
所述终端根据所述第二会话消息的类型确定对应的第二虚拟键盘;
所述终端在所述第一会话界面中显示所述第二虚拟键盘,并隐藏所述第一虚拟键盘。
5.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,在所述终端在所述第一会话界面中显示所述第三虚拟键盘之后,所述方法还包括:
所述终端接收用户在所述输入框中输入的特定字符以及第二联系人,所述第二联系人为所述群组会话中的一个联系人;
所述终端将所述第二联系人在所述群组中最近发送的会话消息确定为第四会话消息;
所述终端根据所述第四会话消息的类型确定对应的第四虚拟键盘;
所述终端在所述第一会话界面中显示所述第四虚拟键盘,并隐藏所述第三虚拟键盘。
6.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,所述第一会话界面中包括输入框;在所述终端在所述第一会话界面中显示所述第一虚拟键盘之后,所述方法还包括:
所述终端接收用户在所述输入框中输入的特定字符以及第一联系人;
所述终端确定所述第一联系人的国籍;
所述终端在所述第一会话界面中显示与所述第一联系人的国籍对应的虚拟键盘,并隐藏所述第一虚拟键盘。
7.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,所述第一虚拟键盘为第一输入法应用提供的键盘;所述方法还包括:
所述终端在所述触摸屏中显示第二应用的第二会话界面;
所述终端确定所述第二会话界面中的第五会话消息,所述第五会话消息为最近接收到的会话消息;
所述终端根据所述第五会话消息的类型确定对应的第五虚拟键盘,所述第五虚拟键盘为第二输入法应用提供的键盘;
所述终端在所述第二会话界面中显示所述第五虚拟键盘。
8.根据权利要求5所述的显示输入法虚拟键盘的方法,其特征在于,所述第一虚拟键盘为第一输入法应用提供的键盘;所述方法还包括:
所述终端在所述触摸屏中显示第二应用的第二会话界面;
所述终端确定所述第二会话界面中的第五会话消息,所述第五会话消息为最近接收到的会话消息;
所述终端根据所述第五会话消息的类型确定对应的第五虚拟键盘,所述第五虚拟键盘为第二输入法应用提供的键盘;
所述终端在所述第二会话界面中显示所述第五虚拟键盘。
9.根据权利要求7所述的显示输入法虚拟键盘的方法,其特征在于,所述第五会话消息的类型与所述第一会话消息的类型相同;所述第五虚拟键盘的类型与所述第一虚拟键盘的类型相同。
10.根据权利要求8所述的显示输入法虚拟键盘的方法,其特征在于,所述第五会话消息的类型与所述第一会话消息的类型相同;所述第五虚拟键盘的类型与所述第一虚拟键盘的类型相同。
11.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,在终端在触摸屏中显示第一应用的第一会话界面之前,还包括:
所述终端在所述触摸屏中显示所述第一应用的联系人会话列表,所述联系人会话列表中包括与至少一个聊天项目,所述聊天项目包括一个联系人的聊天项目或群组的聊天项目;
其中,所述终端在触摸屏中显示第一应用的第一会话界面,包括:
响应于针对目标聊天项目的打开操作,所述终端在触摸屏中显示所述目标聊天项目的第一会话界面。
12.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,
所述虚拟键盘包括与文本消息对应的文本键盘、与语音消息对应的语音键盘、与表情消息对应的表情键盘、或者与数字消息对应的数字键盘;
所述表情键盘包括与emoji消息对应的emoji键盘、与颜文字消息对应的颜文字键盘或者与表情包消息对应的表情包键盘。
13.根据权利要求2或3所述的显示输入法虚拟键盘的方法,其特征在于,
所述第一应用是微信,第二应用是支付宝;或,
所述联系人会话列表中包括所述第一联系人的聊天项目、第二联系人的聊天项目以及会话群组的聊天项目,所述第一联系人的聊天项目中包含至少一条未读消息;或,
所述虚拟键盘中包括设置按钮,所述设置按钮用于开启或关闭自动切换虚拟键盘的功能;
所述第一会话消息为表情消息,所述第一虚拟键盘为表情键盘;或,
所述第一会话消息为语音消息,所述第一虚拟键盘为语音键盘;或,
响应于用户向所述语音键盘输入的语音,所述终端在所述输入框中输入与所述语音对应的文字或音频信息;
响应于用户在所述语音键盘上的发送操作,所述终端在第一会话界面中输入所述输入框中的文字或音频信息。
14.根据权利要求7所述的显示输入法虚拟键盘的方法,其特征在于,
所述第一应用是微信,所述第二应用是支付宝;或,
所述联系人会话列表中包括所述第一联系人的聊天项目、第二联系人的聊天项目以及会话群组的聊天项目,所述第一联系人的聊天项目中包含至少一条未读消息;或,
所述虚拟键盘中包括设置按钮,所述设置按钮用于开启或关闭自动切换虚拟键盘的功能;
所述第一会话消息为表情消息,所述第一虚拟键盘为表情键盘;或,
所述第一会话消息为语音消息,所述第一虚拟键盘为语音键盘;或,
响应于用户向所述语音键盘输入的语音,所述终端在所述输入框中输入与所述语音对应的文字或音频信息;
响应于用户在所述语音键盘上的发送操作,所述终端在第一会话界面中输入所述输入框中的文字或音频信息。
15.根据权利要求8所述的显示输入法虚拟键盘的方法,其特征在于,
所述第一应用是微信,所述第二应用是支付宝;或,
所述联系人会话列表中包括所述第一联系人的聊天项目、所述第二联系人的聊天项目以及会话群组的聊天项目,所述第一联系人的聊天项目中包含至少一条未读消息;或,
所述虚拟键盘中包括设置按钮,所述设置按钮用于开启或关闭自动切换虚拟键盘的功能;
所述第一会话消息为表情消息,所述第一虚拟键盘为表情键盘;或,
所述第一会话消息为语音消息,所述第一虚拟键盘为语音键盘;或,
响应于用户向所述语音键盘输入的语音,所述终端在所述输入框中输入与所述语音对应的文字或音频信息;
响应于用户在所述语音键盘上的发送操作,所述终端在第一会话界面中输入所述输入框中的文字或音频信息。
16.一种终端,其特征在于,包括:
触摸屏,其中,所述触摸屏包括触敏表面和显示器;
一个或多个处理器;
存储器;
多个应用程序;
以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述终端执行时,使得所述终端执行以下步骤:
在触摸屏中显示应用的会话界面,所述会话界面是指与群组会话时的聊天界面;
确定所述会话界面中的第一会话消息,所述第一会话消息为最近收到的会话消息;
根据所述第一会话消息的类型确定对应的第一虚拟键盘,所述第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息;
响应于针对所述第一会话界面中输入框的触摸操作,在所述会话界面中显示所述第一虚拟键盘;
接收用户在所述输入框中输入的特定字符以及第一联系人,所述第一联系人为所述群组中的一联系人;
将所述第一联系人在所述群组中最近发送的会话消息确定为第二会话消息;
根据所述第二会话消息的类型确定对应的第二虚拟键盘;
在所述会话界面中显示所述第二虚拟键盘,并隐藏所述第一虚拟键盘;
接收用户在所述输入框中输入的特定字符以及第二联系人,所述第二联系人为所述群组中的一联系人,所述第二联系人与所述第一联系人不同;
将所述第二联系人在所述群组中最近发送的会话消息确定为第三会话消息;
根据所述第三会话消息的类型确定对应的第三虚拟键盘;
在所述会话界面中显示所述第三虚拟键盘,并隐藏所述第二虚拟键盘,所述第三虚拟键盘、所述第二虚拟键盘与所述第一虚拟键盘互不相同。
17.一种终端,其特征在于,包括:
触摸屏,其中,所述触摸屏包括触敏表面和显示器;
一个或多个处理器;
存储器;
多个应用程序;
以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述终端执行时,使得所述终端执行以下步骤:
在触摸屏中显示第一应用的第一会话界面;所述第一会话界面是指与群组会话时的聊天界面;
确定所述第一会话界面中的第一会话消息,所述第一会话消息为最近收到的会话消息;
根据所述第一会话消息的类型确定对应的第一虚拟键盘,所述第一会话消息的类型包括文本消息、数字消息、表情消息或语音消息;
在所述第一会话界面中显示所述第一虚拟键盘;
所述第一会话界面中包括输入框;所述第一会话界面是指与群组会话时的聊天界面,所述第一会话消息是指所述群组中一联系人最近发送的聊天消息;
其中,当所述终端在所述第一会话界面中显示所述第一虚拟键盘之后,所述终端还用于执行:
在未新接收到第二会话消息的情况下,接收用户在所述输入框中输入的特定字符以及第一联系人,所述第一联系人为所述群组会话中的一个联系人;
将所述第一联系人在所述群组中最近发送的会话消息确定为第三会话消息;
根据所述第三会话消息的类型确定对应的第三虚拟键盘;
在所述第一会话界面中显示所述第三虚拟键盘,并隐藏所述第一虚拟键盘。
18.根据权利要求17所述的终端,其特征在于,当所述终端在所述第一会话界面中显示所述第一虚拟键盘之后,所述终端还用于执行:
在新接收到第二会话消息的情况下,在所述第一会话界面中显示新接收到的第二会话消息;
根据所述第二会话消息的类型确定对应的第二虚拟键盘;
在所述第一会话界面中显示所述第二虚拟键盘,并隐藏所述第一虚拟键盘。
19.根据权利要求17所述的终端,其特征在于,当所述终端在所述第一会话界面中显示所述第三虚拟键盘之后,所述终端还用于执行:
接收用户在所述输入框中输入的特定字符以及第二联系人,所述第二联系人为所述群组会话中的一个联系人;
将所述第二联系人在所述群组中最近发送的会话消息确定为第四会话消息;
根据所述第四会话消息的类型确定对应的第四虚拟键盘;
在所述第一会话界面中显示所述第四虚拟键盘,并隐藏所述第三虚拟键盘。
20.根据权利要求17所述的终端,其特征在于,所述第一会话界面中包括输入框;所述第一会话界面是指与群组会话时的聊天界面,所述第一会话消息是指所述群组中一联系人最近发送的聊天消息;
其中,当所述终端在所述第一会话界面中显示所述第一虚拟键盘之后,所述终端还用于执行:
接收用户在所述输入框中输入的特定字符以及第一联系人;
确定所述第一联系人的国籍;
在所述第一会话界面中显示与所述第一联系人的国籍对应的虚拟键盘,并隐藏所述第一虚拟键盘。
21.根据权利要求17-20中任一项所述的终端,其特征在于,所述第一虚拟键盘为第一输入法应用提供的键盘;所述终端还用于执行:
在所述触摸屏中显示第二应用的第二会话界面;
确定所述第二会话界面中的第五会话消息,所述第五会话消息为最近接收到的会话消息;
根据所述第五会话消息的类型确定对应的第五虚拟键盘,所述第五虚拟键盘为第二输入法应用提供的键盘;
在所述第二会话界面中显示所述第五虚拟键盘。
22.根据权利要求17-20中任一项所述的终端,其特征在于,在终端在触摸屏中显示第一应用的第一会话界面之前,所述终端还用于执行:
在所述触摸屏中显示所述第一应用的联系人会话列表,所述联系人会话列表中包括与至少一个聊天项目,所述聊天项目包括一个联系人的聊天项目或群组的聊天项目;
其中,所述终端在触摸屏中显示第一应用的第一会话界面,具体包括:
响应于针对目标聊天项目的打开操作,在触摸屏中显示所述目标聊天项目的第一会话界面。
23.根据权利要求17-20中任一项所述的终端,其特征在于,
所述虚拟键盘包括与文本消息对应的文本键盘、与语音消息对应的语音键盘、与表情消息对应的表情键盘、或者与数字消息对应的数字键盘;
所述表情键盘包括与emoji消息对应的emoji键盘、与颜文字消息对应的颜文字键盘或者与表情包消息对应的表情包键盘。
24.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在终端上运行时,使得所述终端执行如权利要求1所述的切换输入法虚拟键盘的方法,或,使得所述终端执行如权利要求2-15中任一项所述的显示输入法虚拟键盘的方法。
CN201880092870.2A 2018-05-10 2018-07-17 一种显示输入法虚拟键盘的方法及终端 Active CN112041791B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CNPCT/CN2018/086401 2018-05-10
CN2018086401 2018-05-10
PCT/CN2018/096031 WO2019214072A1 (zh) 2018-05-10 2018-07-17 一种显示输入法虚拟键盘的方法及终端

Publications (2)

Publication Number Publication Date
CN112041791A CN112041791A (zh) 2020-12-04
CN112041791B true CN112041791B (zh) 2022-05-27

Family

ID=68467758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880092870.2A Active CN112041791B (zh) 2018-05-10 2018-07-17 一种显示输入法虚拟键盘的方法及终端

Country Status (4)

Country Link
US (1) US11681432B2 (zh)
EP (1) EP3783462B1 (zh)
CN (1) CN112041791B (zh)
WO (1) WO2019214072A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112685112A (zh) * 2020-12-25 2021-04-20 惠州Tcl移动通信有限公司 一种界面控制方法、智能终端及计算机可读存储介质
USD978160S1 (en) 2020-12-31 2023-02-14 Snap Inc. Display screen or portion thereof with a graphical user interface
CN112817676B (zh) * 2021-01-22 2023-06-20 维沃移动通信(杭州)有限公司 信息处理方法和电子设备
CN115129225A (zh) * 2021-03-26 2022-09-30 北京小米移动软件有限公司 键盘工具栏显示方法、键盘工具栏显示装置及存储介质
CN113282181B (zh) * 2021-05-21 2024-04-05 南京市德赛西威汽车电子有限公司 一种车载娱乐系统中支持双输入法的方法
US11941227B2 (en) 2021-06-30 2024-03-26 Snap Inc. Hybrid search system for customizable media
US11841898B2 (en) * 2021-12-01 2023-12-12 Whitestar Communications, Inc. Coherent pictograph organizer based on structuring pattern markers for hierarchal pictograph presentation
CN114416248A (zh) * 2022-01-04 2022-04-29 维沃移动通信有限公司 会话方法及其装置
US11870739B2 (en) * 2022-05-17 2024-01-09 Bank Of America Corporation Auto-adjust app operation in response to data entry anomalies

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681780A (zh) * 2012-04-26 2012-09-19 中标软件有限公司 Linux 智能装置及其输入法切换方法
CN104509080A (zh) * 2012-08-01 2015-04-08 苹果公司 基于动态上下文的语言确定
CN105227426A (zh) * 2014-05-30 2016-01-06 小米科技有限责任公司 一种应用界面切换方法、装置及终端设备
CN107193476A (zh) * 2017-05-10 2017-09-22 北京百度网讯科技有限公司 信息输入方法及装置、计算机设备与可读介质
CN107479822A (zh) * 2017-09-08 2017-12-15 维沃移动通信有限公司 一种信息输入方法和终端
CN107704188A (zh) * 2017-10-09 2018-02-16 珠海市魅族科技有限公司 输入键盘提供方法及装置、终端及计算机可读存储介质
CN107741820A (zh) * 2017-09-12 2018-02-27 维沃移动通信有限公司 一种输入法键盘显示方法及移动终端

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101316411B (zh) 2008-05-20 2011-12-07 华为终端有限公司 输入通信信息的方法、发送通信信息的方法、及通信终端
KR101115467B1 (ko) * 2009-09-30 2012-02-24 주식회사 팬택 가상 키보드 제공 단말 및 그 방법
CA2840359A1 (en) 2011-06-24 2012-12-27 Google, Inc. Group conversation between a plurality of participants
US9146622B2 (en) 2012-06-25 2015-09-29 International Business Machines Corporation Dynamically updating a smart physical keyboard
KR20150067489A (ko) 2013-12-10 2015-06-18 삼성전자주식회사 전자 장치에서 입력기 제공 방법 및 장치
US20150363392A1 (en) 2014-06-11 2015-12-17 Lenovo (Singapore) Pte. Ltd. Real-time modification of input method based on language context
CN105282318B (zh) 2015-05-21 2019-04-09 维沃移动通信有限公司 输入法切换方法及其移动终端
US11025565B2 (en) * 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
CN105159472A (zh) 2015-06-30 2015-12-16 小米科技有限责任公司 输入法切换方法及装置
CN105120087A (zh) 2015-07-31 2015-12-02 深圳市金立通信设备有限公司 一种会话界面的控制方法及终端
US10496275B2 (en) * 2015-10-12 2019-12-03 Microsoft Technology Licensing, Llc Multi-window keyboard
CN105511796A (zh) 2015-12-30 2016-04-20 努比亚技术有限公司 一种自适应切换输入法界面的信息输入方法及装置
US10313287B2 (en) * 2016-06-01 2019-06-04 Facebook, Inc. Methods and systems for displaying messages in an asynchronous order
US10409488B2 (en) * 2016-06-13 2019-09-10 Microsoft Technology Licensing, Llc Intelligent virtual keyboards
WO2018027551A1 (zh) * 2016-08-09 2018-02-15 华为技术有限公司 一种消息显示方法、用户终端及图形用户接口
CN106775350A (zh) 2016-11-30 2017-05-31 北京小米移动软件有限公司 切换输入法类型的方法及装置
CN106774976A (zh) 2016-12-01 2017-05-31 北京小米移动软件有限公司 输入法切换方法及装置
US10114525B2 (en) * 2016-12-28 2018-10-30 Byung Jin Kim Device and method for organizing and displaying instant messages in various structured fashions
WO2018176365A1 (en) * 2017-03-31 2018-10-04 Orange Method for displaying a virtual keyboard on a mobile terminal screen
CN107332991B (zh) 2017-06-28 2020-02-28 北京金山安全软件有限公司 锁屏界面信息处理方法及装置
CN107300986B (zh) 2017-06-30 2022-01-18 联想(北京)有限公司 输入法切换方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681780A (zh) * 2012-04-26 2012-09-19 中标软件有限公司 Linux 智能装置及其输入法切换方法
CN104509080A (zh) * 2012-08-01 2015-04-08 苹果公司 基于动态上下文的语言确定
CN105227426A (zh) * 2014-05-30 2016-01-06 小米科技有限责任公司 一种应用界面切换方法、装置及终端设备
CN107193476A (zh) * 2017-05-10 2017-09-22 北京百度网讯科技有限公司 信息输入方法及装置、计算机设备与可读介质
CN107479822A (zh) * 2017-09-08 2017-12-15 维沃移动通信有限公司 一种信息输入方法和终端
CN107741820A (zh) * 2017-09-12 2018-02-27 维沃移动通信有限公司 一种输入法键盘显示方法及移动终端
CN107704188A (zh) * 2017-10-09 2018-02-16 珠海市魅族科技有限公司 输入键盘提供方法及装置、终端及计算机可读存储介质

Also Published As

Publication number Publication date
US11681432B2 (en) 2023-06-20
EP3783462A1 (en) 2021-02-24
US20210216203A1 (en) 2021-07-15
WO2019214072A1 (zh) 2019-11-14
EP3783462B1 (en) 2022-12-07
CN112041791A (zh) 2020-12-04
EP3783462A4 (en) 2021-06-02

Similar Documents

Publication Publication Date Title
CN112041791B (zh) 一种显示输入法虚拟键盘的方法及终端
WO2019206213A1 (zh) 应用程序预加载方法、装置、存储介质及终端
CN110276007B (zh) 用于提供信息的装置和方法
US8863041B1 (en) Zooming user interface interactions
US8954887B1 (en) Long press interface interactions
US8706920B2 (en) Accessory protocol for touch screen device accessibility
US20220075518A1 (en) Fast Data Copying Method and Electronic Device
CN108549519B (zh) 分屏处理方法、装置、存储介质和电子设备
CN110168487B (zh) 一种触摸控制方法及装置
JP2021520559A (ja) アプリケーションまたはアプリケーション機能を迅速に開くための方法、および端末
CN111602107B (zh) 一种应用退出时的显示方法及终端
CN110168566B (zh) 一种识别截图文字的方法及终端
CN111684778A (zh) 应用功能的实现方法及电子设备
CN109003194B (zh) 评论分享方法、终端以及存储介质
WO2017193496A1 (zh) 应用数据的处理方法、装置和终端设备
CN108780400B (zh) 数据处理方法及电子设备
CN111602381A (zh) 一种图标切换方法、显示gui的方法及电子设备
WO2020019330A1 (zh) 一种邮件翻译的方法及电子设备
CN111713176B (zh) 一种数据传输方法及终端
CN111656347A (zh) 一种项目的显示方法及终端
CN108921530B (zh) 信息判断方法、装置、存储介质及终端
CN110300047B (zh) 一种动画播放方法、装置及存储介质
CN111433723A (zh) 一种快捷按键的控制方法及终端
CN111859999A (zh) 消息翻译方法、装置、存储介质及电子设备
CN115793932A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210428

Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040

Applicant after: Honor Device Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd.

GR01 Patent grant
GR01 Patent grant