CN114527903A - 一种按键映射方法、电子设备及系统 - Google Patents
一种按键映射方法、电子设备及系统 Download PDFInfo
- Publication number
- CN114527903A CN114527903A CN202011223709.XA CN202011223709A CN114527903A CN 114527903 A CN114527903 A CN 114527903A CN 202011223709 A CN202011223709 A CN 202011223709A CN 114527903 A CN114527903 A CN 114527903A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- control
- user interface
- key
- user
- 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
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000006870 function Effects 0.000 claims abstract description 92
- 238000012545 processing Methods 0.000 claims abstract description 58
- 238000004891 communication Methods 0.000 claims description 127
- 230000006854 communication Effects 0.000 claims description 127
- 230000015654 memory Effects 0.000 claims description 56
- 238000003708 edge detection Methods 0.000 claims description 27
- 238000003860 storage Methods 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 abstract description 23
- 230000033001 locomotion Effects 0.000 abstract description 17
- 230000001976 improved effect Effects 0.000 abstract description 9
- 230000004044 response Effects 0.000 description 57
- 238000007726 management method Methods 0.000 description 34
- 230000008569 process Effects 0.000 description 18
- 230000035945 sensitivity Effects 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 238000003825 pressing Methods 0.000 description 16
- 238000001914 filtration Methods 0.000 description 14
- 230000005236 sound signal Effects 0.000 description 14
- 210000004027 cell Anatomy 0.000 description 13
- 230000008859 change Effects 0.000 description 13
- 238000010295 mobile communication Methods 0.000 description 13
- 230000001133 acceleration Effects 0.000 description 10
- 210000000988 bone and bone Anatomy 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 10
- 230000000717 retained effect Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 7
- 230000005484 gravity Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000004397 blinking Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 239000000725 suspension Substances 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 239000004020 conductor Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000001939 inductive effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000010009 beating Methods 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000026058 directional locomotion Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04817—Interaction 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 using icons
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/24—Constructional details thereof, e.g. game controllers with detachable joystick handles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction 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/0488—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例提供了一种按键映射方法、电子设备及系统。根据本申请提供的方法,电子设备可以通过图像处理算法识别出游戏应用中的按键区域。另外,为了提高按键区域识别的精度,电子设备还可以结合用户对于该游戏画面的触控频率,对该图像处理算法进行校正。在识别出所有的按键区域后,用户可以将游戏应用中所有的虚拟按键与游戏手柄的物理按键一一进行匹配,建立映射关系,然后用户可以通过控制游戏手柄上的物理按键来触发游戏应用中的虚拟按键对应的功能,比如游戏中人物的移动、技能的施放、场景的切换等。实施本申请提供的方法,可以简化用户匹配游戏手柄按键与游戏应用按键的操作步骤,提高了按键匹配的效率以及正确率,用户体验得到提升。
Description
技术领域
本发明涉及终端技术领域,尤其涉及一种按键映射方法、电子设备及系统。
背景技术
当前手机普遍可以连接外设手柄设备,以便用户使用外设手柄操控手机上具有按键的应用(例如游戏应用等)。在现有技术中,手机与外设手柄的适配,可以通过蓝牙先将手机与外设手柄建立无线连接。然后,手机屏幕可以显示出外设手柄的按键库界面,该按键库界面可以包括多个按键图标。用户需要选择按键图标,然后将选定的按键图标手动拖动到手机屏幕中适当的位置。按键图标悬停至指定位置后,用户松开手指,以此完成手机与外设手柄的适配。
可以看出,在上述的现有技术中,用户需要多次拖动按键图标。并且,用户也需要将按键图标拖动至应用的指定位置。如果按键图标悬停的位置不准确,则手机与外设手柄的按键映射关系就可能建立失败。因此,该现有技术对用户来说的操作步骤比较繁琐,操作非常不方便,并且按键映射匹配效率低,用户使用体验差。
发明内容
本申请的目的在于提供一种按键映射方法、电子设备及系统,可使得第一电子设备与第二电子设备在建立按键映射时过程更加直观且简单有效,极大提高了按键映射的效率,也简化了用户的操作步骤,提升了用户的使用体验。
上述目标和其他目标将通过独立权利要求中的特征来达成。进一步的实现方式在从属权利要求、说明书和附图中体现。
第一方面,本申请提供了一种按键映射的方法,该方法可包括:第一电子设备可以和第二电子设备建立第一连接,然后,第一电子设备可以显示第一用户界面,该第一用户界面中可以显示有多个控件,该多个控件中可以包括第一控件。第一电子设备检测到第一用户操作(例如用户用手指点击图标),响应于该第一用户操作,第一电子设备可以识别出第一用户界面中的多个控件,该第一电子设备可以选定识别出的多个控件中的第一控件。接着,响应于在第一控件处于选定状态时接收到的第一信号,第一电子设备建立第一物理按键与第一控件的映射关系。
在本申请中,第二电子设备可以是游戏手柄。该游戏手柄具有一个或多个物理按键,并且也具有蓝牙(bluetooth,BT)模块、和/或无线局域网络(wirelesslocalareanetworks,WLAN)模块。其中,蓝牙(BT)模块可以提供包括经典蓝牙(蓝牙2.1标准)或蓝牙低功耗(bluetooth low energy,BLE)中一项或多项蓝牙通信的解决方案。WLAN模块可以提供包括无线保真直连(wireless fidelity direct,Wi-Fi direct)、无线保真局域网(wirelessfidelity local area networks,Wi-Fi LAN)或无线保真软件接入点(wirelessfidelitysoftware access point,Wi-Fi softAP)中一项或多项WLAN通信的解决方案。
本申请中,第一用户界面可以是游戏应用程序的用户界面,该游戏应用程序是智能手机、平板电脑等电子设备上的可供用户消遣娱乐的应用程序,本申请对该应用程序的名称不作限制。也即是说,该游戏应用程序可以是市面上任意一款用户可以获取并进行操控的游戏应用程序,例如等等,本申请对此不作限制。
实施第一方面的方法,可以使得第一电子设备更加高效快速地识别出第一用户界面中的控件,并与第二电子设备上的物理按键建立映射关系,提高了按键映射的效率,提升了用户体验,也可以使得按键映射更为精确。
结合第一方面,在一些实施例中,第一连接可以是第一电子设备通过蓝牙、Wi-Fidirect或Wi-Fi softAP中一项或多项无线通信技术与第二电子设备建立的无线连接,也可以是第一电子设备通过通用串行总线(universal serial bus,USB)与第二电子设备建立的有线连接,第一电子设备与第二电子设备建立通信连接后,第一电子设备可以通过USB、蓝牙、Wi-Fi direct或Wi-Fi softAP中一项或多项WLAN的通信技术发送数据信息至第二电子设备,和/或从第二电子设备接收数据信息。
结合第一方面,在一些实施例中,在建立第二电子设备的第一物理按键与第一控件的映射关系后,第一电子设备可以选定多个控件中的第二控件。然后,第一电子设备可以通过第一连接接收到第二电子设备发送的第二信号,并响应在该第二控件处于选定状态时收到的该第二信号,建立第二电子设备的该第二物理按键与该第二控件的映射关系。其中,该第二信号是第二电子设备在该第二物理按键被用户按压时产生的。
结合第一方面,在一些实施例中,在第一电子设备上的多个控件与第二电子设备上的多个物理按键之间的映射关系建立完成后,第一电子设备通过第一连接接收到的第一信号,执行第一控件相应的功能。
结合第一方面,在一些实施例中,第一电子设备将第一用户界面进行灰度处理,得到第一图像,然后,该第一电子设备可以通过边缘检测算法从该第一图像中识别出第一用户界面中所包含的控件边界。
结合第一方面,在一些实施例中,第一用户界面中的多个控件可以包括有第一控件,该第一控件可以包括有多个边界像素点,该多个边界像素点可以包括有第一像素点,该第一像素点在第一用户界面中对应的触控位置被用户触控的频率越高,则该第一像素点被识别为该第一控件的边界像素点的概率就越高。
结合第一方面,在一些实施例中,当第一电子设备通过边缘检测方法从第一图像中识别出第一用户界面中第一控件的边界时,第一电子设备可以采用边缘算子,计算第一图像中每个像素点的梯度向量。然后,第一电子设备可以采用线性插值法,比较该第一像素点的第一梯度向量的梯度值与该第一像素点的第一梯度向量相同方向上其他像素点的梯度值,如果在所述方向上,该第一像素点的梯度值最大,那么第一电子设备可以保留该第一像素点的梯度值,将其他像素点的梯度值设为零。接着,第一电子设备可以设定第一阈值,如果该第一像素点的梯度值大于该第一阈值,则该第一像素点被保留,所有被保留的像素点构成该第一用户界面中的第一控件的边界。
结合第一方面,在一些实施例中,第一电子设备执行第一控件对应的功能时,第一电子设备显示第二用户界面。该第二用户界面可以部分或全部不同于前述第一用户界面。具体的,该第二用户界面可以是游戏应用界面的跳转、游戏应用界面中人物的移动、游戏场景的改变等等。
结合第一方面,在一些实施例中,当第一用户界面中的第一控件处于选定状态时,该第一控件可以处于高亮状态,也可以在该第一控件区域显示有光标,和/或该第一控件处于闪烁状态,也即是说,对于如何提示用户该第一控件处于选定状态,本申请对此不作限制。
结合第一方面,在一些实施例中,第一电子设备显示第一用户界面之后,可以在该第一用户界面显示第一悬浮控件。第一电子设备可以检测到作用于该第一悬浮控件的第一用户操作(例如点击)。
第二方面,本申请实施例提供了一种通信方法,应用于通信系统,该通信系统包括第一电子设备和第二电子设备。第一电子设备可以与第二电子设备建立第一连接。第一电子设备可以显示第一用户界面,该第一用户界面中可以包含多个控件,该多个控件中包括第一控件。第一电子设备可以检测到第一用户操作,响应于该第一用户操作,第一电子设备可以识别出所述第一用户界面中的多个控件。然后,第一电子设备可以选定该多个控件中的第一控件,而第二电子设备可以检测到第一物理按键被用户按压,生成第一信号,并且可以通过该第一连接向第一电子设备发送该第一信号。接着,第一电子设备可以响应在该第一控件处于选定状态时收到的该第一信号,建立该第一物理按键与该第一控件的映射关系。
实施第二方面的方法,可以使得第一电子设备更加高效快速地识别出第一用户界面中的控件,并与第二电子设备上的物理按键建立映射关系,提高了按键映射的效率,提升了用户体验,也可以使得按键映射更为精确。
结合第二方面,在一些实施例中,在建立第一物理按键与第一控件的映射关系后,第一电子设备可以选定多个控件中的第二控件,然后,第二电子设备可以检测到第二物理按键被用户按压,生成第二信号,并通过该第一连接向第一电子设备发送该第二信号。接着,第一电子设备可以响应在该第二控件处于选定状态时收到的该第二信号,建立该第二物理按键与该第二控件的映射关系。
结合第二方面,在一些实施例中,该通信系统中的第二电子设备可以是游戏手柄。关于该游戏手柄的说明,可以参照前述第一方面中所提供的第二电子设备的描述,在此不再赘述。
结合第二方面,在一些实施例中,在第一电子设备上的多个控件与第二电子设备上的多个物理按键之间的映射关系建立完成后,第一电子设备通过第一连接接收到的第一信号,执行第一控件相应的功能。
结合第二方面,在一些实施例中,第一电子设备将第一用户界面进行灰度处理,得到第一图像,然后,该第一电子设备可以通过边缘检测算法从该第一图像中识别出第一用户界面中所包含的控件边界。
结合第二方面,在一些实施例中,第一电子设备将第一用户界面进行灰度处理,得到第一图像,然后,该第一电子设备可以通过边缘检测算法从该第一图像中识别出第一用户界面中所包含的控件边界。
结合第二方面,在一些实施例中,第一用户界面中的多个控件可以包括有第一控件,该第一控件可以包括有多个边界像素点,该多个边界像素点可以包括有第一像素点,该第一像素点在第一用户界面中对应的触控位置被用户触控的频率越高,则该第一像素点被识别为该第一控件的边界像素点的概率就越高。
结合第二方面,在一些实施例中,当第一电子设备通过边缘检测方法从第一图像中识别出第一用户界面中第一控件的边界时,第一电子设备可以采用边缘算子,计算第一图像中每个像素点的梯度向量。然后,第一电子设备可以采用线性插值法,比较该第一像素点的第一梯度向量的梯度值与该第一像素点的第一梯度向量相同方向上其他像素点的梯度值,如果在所述方向上,该第一像素点的梯度值最大,那么第一电子设备可以保留该第一像素点的梯度值,将其他像素点的梯度值设为零。接着,第一电子设备可以设定第一阈值,如果该第一像素点的梯度值大于该第一阈值,则该第一像素点被保留,所有被保留的像素点构成该第一用户界面中的第一控件的边界。
结合第二方面,在一些实施例中,第一电子设备执行第一控件对应的功能时,第一电子设备显示第二用户界面。该第二用户界面可以部分或全部不同于前述第一用户界面。具体的,该第二用户界面可以是游戏应用界面的跳转、游戏应用界面中人物的移动、游戏场景的改变等等。
结合第二方面,在一些实施例中,当第一用户界面中的第一控件处于选定状态时,该第一控件可以处于高亮状态,也可以在该第一控件区域显示有光标,和/或该第一控件处于闪烁状态,也即是说,对于如何提示用户该第一控件处于选定状态,本申请对此不作限制。结合第二方面,在一些实施例中,第一电子设备显示第一用户界面之后,可以在该第一用户界面显示第一悬浮控件。第一电子设备可以检测到作用于该第一悬浮控件的第一用户操作(例如点击)。
第三方面,本申请实施例提供了一种电子设备,该电子设备可以包括:通信装置、触摸屏、存储器以及耦合于所述存储器的处理器,存储器中存储有计算机可执行指令。其中,该通信装置可以用于与第二电子设备建立第一连接。该触摸屏可以用于显示第一用户界面,该第一用户界面中可以包含多个控件,该多个控件中可以包括第一控件。该触摸屏还可以用于检测到第一用户操作。该处理器可以用于识别出该第一用户界面中的多个控件,还可以用于选定该多个控件中的第一控件。该通信装置还可以用于通过该第一连接接收到第二电子设备所发送的第一信号。该处理器还可以用于,响应在该第一控件处于选定状态时收到的该第一信号,建立第二电子设备中的第一物理按键与第一控件的映射关系,其中,该第一信号是第二电子设备在该第一物理按键被用户按压时所产生的。
结合第三方面,在一些实施例中,该处理器还可以用于在建立第二电子设备的第一物理按键与第一控件的映射关系后,选定多个控件中的第二控件。该通信装置还可以用于通过第一连接接收到第二电子设备发送的第二信号。该处理器还可以用于响应在该第二控件处于选定状态时收到的所述第二信号,建立所述第二电子设备的第二物理按键与所述第二控件的映射关系;所述第二信号是所述第二电子设备在所述第二物理按键被用户按压时产生的。
结合第三方面,在一些实施例中,第二电子设备可以是游戏手柄。关于该游戏手柄的说明,可以参照前述第一方面中所提供的第二电子设备的描述,在此不再赘述。
结合第三方面,在一些实施例中,该处理器还可以用于,在多个控件与第二电子设备的多个物理按键之间的映射关系建立完成之后,通过第一连接接收到第一信号时,执行该第一控件对应的功能。
结合第三方面,在一些实施例中,该处理器还可以具体用于将第一用户界面进行灰度处理,得到第一图像,然后,该处理器可以通过边缘检测算法从该第一图像中识别出第一用户界面中所包含的控件边界。
结合第三方面,在一些实施例中,第一用户界面中的多个控件可以包括有第一控件,该第一控件可以包括有多个边界像素点,该多个边界像素点可以包括有第一像素点,该第一像素点在第一用户界面中对应的触控位置被用户触控的频率越高,则该第一像素点被识别为该第一控件的边界像素点的概率就越高。
结合第三方面,在一些实施例中,该处理器还可以具体用于,当该处理器通过边缘检测方法从第一图像中识别出第一用户界面中第一控件的边界时,采用边缘算子,计算第一图像中每个像素点的梯度向量。然后,该处理器可以采用线性插值法,比较该第一像素点的第一梯度向量的梯度值与该第一像素点的第一梯度向量相同方向上其他像素点的梯度值,如果在所述方向上,该第一像素点的梯度值最大,那么该处理器可以保留该第一像素点的梯度值,将其他像素点的梯度值设为零。接着,该处理器可以设定第一阈值,如果该第一像素点的梯度值大于该第一阈值,则该第一像素点被保留,所有被保留的像素点构成该第一用户界面中的第一控件的边界。
结合第三方面,在一些实施例中,该处理器在执行第一控件对应的功能时,该处理器显示第二用户界面。该第二用户界面可以部分或全部不同于前述第一用户界面。具体的,该第二用户界面可以是游戏应用界面的跳转、游戏应用界面中人物的移动、游戏场景的改变等等。
结合第三方面,在一些实施例中,当第一用户界面中的第一控件处于选定状态时,该第一控件可以处于高亮状态,也可以在该第一控件区域显示有光标,和/或该第一控件处于闪烁状态,也即是说,对于如何提示用户该第一控件处于选定状态,本申请对此不作限制。
结合第三方面,在一些实施例中,该触摸屏显示第一用户界面之后,可以在该第一用户界面显示第一悬浮控件。该触摸屏可以具体用于检测到作用于该第一悬浮控件的第一用户操作(例如点击)。
第四方面,本发明实施例提供了一种计算机存储介质,该存储介质中存储有计算机程序,该计算机程序包括可执行指令,该可执行指令当被处理器执行时使该处理器执行如第一方面、第二方面中所提供的方法对应的操作。
附图说明
图1是本申请实施例所提供的一种通信系统的架构示意图;
图2是本申请实施例提供的一种电子设备的硬件结构示意图;
图3是本申请实施例提供的另一种电子设备的硬件结构示意图;
图4是本申请实施例提供的一种电子设备的软件框架图;
图5是本申请实施例提供的一种通信系统的软件模块架构图;
图6A是本申请实施例提供的一种用户界面示意图;
图6B是本申请实施例提供的一种用户界面示意图;
图6C是本申请实施例提供的一种用户界面示意图;
图7是本申请实施例提供的一种用户界面示意图;
图8是本申请实施例提供的一种用户界面示意图;
图9是本申请实施例提供的一种用户界面示意图;
图10是本申请实施例提供的一种用户界面示意图;
图11是本申请实施例提供的一种用户界面示意图;
图12是本申请实施例提供的一种用户界面示意图;
图13是本申请实施例提供的一种用户界面示意图;
图14A是本申请实施例提供的一种用户界面示意图;
图14B是本申请实施例提供的一种用户界面示意图;
图15是本申请实施例提供的一种按键映射方法的流程图;
图16是本申请实施例提供的一种识别按键区域方法的流程图;
图17是本申请实施例提供的一种邻近区域内识别像素点的示意图。
具体实施方式
本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请得到说明书和所附权利要书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,本申请中使用的术语“和/或”是指包含一个或多个所列出醒目的任何或所有可能组合。在本申请实施例中,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请提供了一种按键映射方法,该方法可以应用于本申请所提供的电子设备上。其中,电子设备可以为手机、平板电脑、个人计算机(personalcomputer,PC)、智能电视等电子设备,本申请对电子设备的具体类型不作任何限制。该方法可以将电子设备上应用程序中的虚拟按键元素与外设电子设备(例如外设手柄)的物理按键(又可称为实体按键)建立映射关系,然后用户可以使用外设电子设备操控该应用的按键,以触发该按键对应的功能。例如,以游戏应用为例,由于游戏应用中的按键区域相对于游戏画面是分离的,也即是说,该按键区域不会随着游戏画面的变化而产生改变。并且,该按键区域与区域周边游戏画面的颜色存在着较大的反差。因此,根据本申请实施例中的方法,电子设备可以通过图像处理算法识别出游戏应用中的按键区域。另外,为了提高按键区域识别的精度,电子设备还可以结合用户对于该游戏画面的触控频率,对该图像处理算法进行校正。在识别出所有的按键区域后,对每一个按键区域进行编号,同时,电子设备界面上可以出现用户可以控制移动的光标,该光标可以在识别出的按键区域范围内进行移动。用户可以通过控制该光标在识别出的按键区域上的移动操作,从而在应用界面中选择出需要跟游戏手柄的物理按键进行匹配的虚拟按键图标。比如,在光标停留在第一游戏虚拟按键的时候,用户可以按下游戏手柄上的第一物理按键,这样第一物理按键与第一游戏虚拟按键建立映射关系。当用户将游戏应用中所有的虚拟按键图标与游戏手柄的物理按键一一进行匹配后,映射关系建立完成,用户可以通过控制游戏手柄上的物理按键来触发游戏应用中的虚拟按键,进而触发虚拟按键对应的功能,比如游戏中人物的移动、技能的施放、场景的切换等等。
与现有技术相比,实施本申请的技术方案,可以在减少在游戏手柄与游戏应用按键匹配过程中用户操作的步骤,使得用户操作更加简便,匹配更为精确,大大提升了用户的使用体验。
下面,介绍一些与本申请相关的术语及概念。
用户界面(user interface,UI)是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。应用程序的用户界面是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,界面源代码在终端设备上经过解析、渲染,最终呈现为用户可以识别的内容,比如图片、文字、按钮等控件。
无符号整数在计算机的二进制计数中,最左边一位不用来表示正负,而是和后面的连在一起表示整数,那么就不能区分这个数是正还是负,就只能是正数,这就是无符号整数。
灰度是指使用黑色调表示物体,即用黑色为基准色,不同的饱和度的黑色来显示图像。每个灰度对象都具有从0%(白色)到灰度条100%(黑色)的亮度值。
噪声是指图像中表现极为突兀的像素点或像素块,会给图像带来干扰没让图像变得不清楚,或者说影响观察图像的细节。
高斯噪声是指噪声像素的概率密度函数服从高斯分布(也称作正态分布)。也即是说,如果一个噪声,它的幅度服从高斯分布,而它的功率谱密度优势均匀分布的,则称为高斯噪声。
高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗地讲,高斯滤波就是对整幅图像进行加权平均的过程。每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的具体操作是用一个模板(或称高斯核)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去代替模板中心的值。高斯滤波器对于一直服从正态分布的噪声非常有效。
RGB是指代表红(red,R)、绿(green,G)、蓝(blue,B)三个通道的颜色,电子设备是通过对上述三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色。这种颜色表示的标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广泛的颜色系统之一。
模糊半径是指在高斯滤波过程中,某个像素点向外扩展的值。
梯度是指在向量微积分中,标量场中某一点上的梯度指向标量场增长最快的方向,梯度强度是这个方向上最大的变化率。在单变量的实值函数的情况下,梯度只是导数,或者,对于一个线性函数来说,梯度也就是线的斜率。用于斜度,也就是一个曲面沿着给定方向的倾斜程度,梯度的数值有时也被称为梯度。
首先,介绍本申请实施例提供的一种通信系统10。
如图1示例性所示,该通信系统10可以包括电子设备100、电子设备200。
电子设备100可以为手机、平板电脑、PC、智能电视等电子设备。具体的,电子设备100可以具有蓝牙(bluetooth)模块、WLAN模块中的一项或多项。电子设备100可以通过蓝牙模块、WLAN模块的一项或多项发射信号来探测扫描电子设备100的附近设备,使得电子设备100可以使用蓝牙或WLAN中的一种或多种无线通信技术发现附近设备(例如电子设备200),并可以与附近设备建立无线通信连接,通过蓝牙或WLAN中的一种或多种无线通信技术传输数据至附近设备(例如电子设备200)。其中,蓝牙模块可以提供包括经典蓝牙(蓝牙2.1标准)或蓝牙低功耗(BLE)中一项或多项蓝牙通信的解决方案。WLAN模块可以提供包括Wi-Fidirect、Wi-Fi LAN或Wi-Fi softAP中一项或多项WLAN通信的解决方案。
电子设备200可以是具有蓝牙模块、和/或WLAN模块、和/或数据线接口的外设手柄。电子设备200可以通过蓝牙模块、WLAN模块中的一项或多项接收或发射无线信号。其中,蓝牙模块可以提供包括经典蓝牙或蓝牙低功耗中一项或多项蓝牙通信的解决方案。WLAN模块可以提供包括Wi-Fi direct、Wi-Fi LAN或Wi-Fi softAP中一项或多项WLAN通信的解决方案。
电子设备200还可以包括摇杆按键201A、启动按键201B(标识有字母S)、A功能按键201C、B功能按键201D、C功能按键201E、D功能按键201F。当电子设备100与电子设备200完成按键映射后,摇杆按键201A可以用于操控电子设备100用户界面上的方向按键进行方向(例如向上、向下等等)的移动,开始按键201B可以用于启动或关闭电子设备200。A功能按键201C、B功能按键201D、C功能按键201E、D功能按键201F可以与电子设备100用户界面上的各个功能按键进行映射,并且当用户按下这些功能按键时,可以触发电子设备100产生对应的功能事件。
如图1所示,电子设备200可以和电子设备100建立第一连接。具体的,第一连接可以是蓝牙、Wi-Fi direct或Wi-Fi softAP中一项或多项无线通信连接,也可以是有线连接,比如通用串行总线(universal serial bus,USB)连接。电子设备100与电子设备200建立第一连接后,电子设备100与第二电子设备之间可以通过第一连接互相传输数据信息。
可以理解的是,本申请实施例示出的电子设备200的结构并不构成对通信系统10的具体限定。在本申请另一些实施例中,电子设备200可以具有比图示更多或更少的按键,例如,电子设备200可以具有多个摇杆按键201A。在本申请的另一些实施中,电子设备200上的按键位置可以位于电子设备200的侧面、背面等并不面向用户的正面侧位置。本申请对此不作限制。
可以理解的是,本申请实施例示出的示意的结构并不构成对通信系统10的具体限定。在本申请另一些实施例中,通信系统10可以包括比图示更多或更少的设备。例如通信系统10中还可以包括多个手机,或者多个不同类型的电子设备,比如具有通信功能的显示器、平板电脑、PC等。本申请对此不作限制。
接下来,介绍本申请实施例中提供的示例性电子设备100。
图2示出了电子设备100的硬件结构示意图。
电子设备100可以是手机、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmentedreality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificialintelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,本申请实施例对该电子设备的具体类型不作特殊限制。
电子设备100可以包括处理器110,外部存储器接口120,内存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。在一些实施例中,移动通信模块150提供的无线通信的解决方案可使得电子设备可以与网络中的设备(如服务器)通信。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。在一些实施例中,电子设备100可以通过无线通信模块160中的蓝牙模块、WLAN模块发射信号来探测或扫描在电子设备100附近的设备,并与附近的设备建立无线通信连接并传输数据。其中,蓝牙模块可以提供包括经典蓝牙(蓝牙2.1标准)或蓝牙低功耗中一项或多项蓝牙通信的解决方案。WLAN模块可以提供包括Wi-Fi direct、Wi-Fi LAN或Wi-Fi softAP中一项或多项WLAN通信的解决方案。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
内部存储器121可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器可以包括静态随机存储器(static random-access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5 SDRAM)等;
非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。
快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-level cell,QLC)等,按照存储规范划分可以包括通用闪存存储(英文:universalflash storage,UFS)、嵌入式多媒体存储卡(embedded multi media Card,eMMC)等。
随机存取存储器可以由处理器110直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。
非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器110直接进行读写。
外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展电子设备100的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
图3示例性示出了本申请提供的电子设备200的硬件结构。
如图3所示,电子设备200可以包括按键201、处理器(central processing unit,CPU)202、存储器203、总线204、输入输出接口205、马达206、指示灯207、音频模块208、传感器模块209、通信接口210、无线通信模块211、电源管理模块212、天线3。其中,传感器模块209可以包括压力传感器209A,角度传感器209B、重力传感器209C,陀螺仪传感器209D,加速度传感器209E等。通信接口210可以包括USB接口210A和无线通信接口210B等。无线通信模块211可以包括蓝牙通信模块211A和Wi-Fi通信模块211B等。处理器202、通信接口210、无线通信模块211、电源管理模块212可以通过总线204或者其他方式连接。图3以通过总线204连接为例。
可以理解的是,本发明实施例示意的结构并不构成对电子设备200的具体限定。在本申请另一些实施例中,电子设备200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
按键201可以包括如图1中所示的启动按键201B、摇杆按键201A、各个功能按键等。按键201可以是机械按键。电子设备100可以接收电子设备200的按键信号,产生针对电子设备100显示屏上相应的应用按键的触控事件。
处理器202可以包括一个或多个处理单元,例如:处理器202可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器202中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器202中的存储器为高速缓冲存储器。该存储器可以保存处理器202刚用过或循环使用的指令或数据。如果处理器202需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器202的等待时间,因而提高了系统的效率。
在一些实施例中,处理器202可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
存储器203可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器可以包括静态随机存储器(static random-access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5 SDRAM)等;
非易失性存储器可以包括磁盘存储器件、快闪存储器(flash memory)。
快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-level cell,QLC)等,按照存储规范划分可以包括通用闪存存储(英文:universalflash storage,UFS)、嵌入式多媒体存储卡(embedded multi media Card,eMMC)等。
随机存取存储器可以由处理器202直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。
非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器202直接进行读写。
马达206可以产生振动提示。例如,马达206可以用于触摸振动反馈,当用户作用于不同按键201(例如启动按键、功能按键等)的触摸操作(例如按压),可以对应不同的振动反馈效果。作用于不同按键201的触摸操作,马达206也可对应不同的振动反馈效果。在一些实施例中,触摸振动反馈效果还可以支持自定义。
指示器207可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示按键201的触摸操作等。
音频模块208用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块208还可以用于对音频信号编码和解码。在一些实施例中,音频模块208可以设置于处理器202中,或将音频模块208的部分功能模块设置于处理器202中。
压力传感器209A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器209A可以设置于按键201底部。压力传感器209A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器209A,电极之间的电容改变。电子设备200根据电容的变化确定压力的强度。当有触摸操作(例如按压)作用于按键201,电子设备200根据压力传感器209A检测所述触摸操作强度。电子设备200也可以根据压力传感器209A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作持续时长的触摸操作,可以对应不同的操作指令。例如:当电子设备200处于运行状态时,有触摸操作持续时长小于第一时长阈值的触摸操作作用于启动按键时,执行电子设备200休眠的指令。当有触摸操作持续时长大于或等于第一时长阈值的触摸操作作用于启动按键时,执行关闭电子设备200的指令。
角度传感器209B可以用于检测角度。具体实现中,角度传感器209B中间可以有一个孔,配合相应的机械轴。当机械轴每转过1/16圈时,角度传感器102就会计数一次。往一个方向转动时,计数增加,转动方向改变时,计数减少。计数与角度传感器102的初始位置有关,当初始化角度传感器时,它的计数值被设置为0,如果需要,可以使用编程将角度传感器重新复位。
重力传感器209C可以用于采集电子设备200的重力加速度数据,确定电子设备200的运动状态。重力传感器209C可以用于体感游戏等场景。
陀螺仪传感器209D可以用于确定电子设备200的运动姿态,并将该运动姿态相关信号发送至电子设备100,从而实现电子设备100显示屏上相应的操控元素图标显示出与电子设备200相同的运动姿态。在一些实施例中,可以通过陀螺仪传感器209D确定电子设备200围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于体感游戏、赛车游戏等场景。
加速度传感器209E可检测电子设备200在各个方向上(一般为三轴)加速度的大小,因此,加速度传感器209E可以用于检测电子设备200的运动信息。当电子设备200静止时,加速度传感器209E还可以检测出重力的大小及方向。
USB接口210A是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口210A可以用于连接充电器为电子设备200充电,也可以用于电子设备200与外围设备之间传输数据。该接口还可以用于连接其他电子设备,例如AR设备等。在另一些实施例中,USB接口210A还可以是即插即用(on-the-go,OTG)接口,主要应用于各种不同的设备间连接,进行数据交换,可以给智能终端扩展USB接口配件以丰富智能终端的功能。OTG接口可以通过一端具有USB接口,另一端具有Type C接口的OTG数据线将电子设备200与外围设备进行连接,并可以通过该连接方式传输数据等。
无线通信接口210B是符合无线通信协议的接口,具体可以是802.11无线接口等。无线通信接口210B可以用于电子设备200与外围设备间建立无线连接,并通过该无线连接进行设备间的数据传输。
无线通信处理模块211可以包括蓝牙通信处理模块211A、WLAN通信处理模块211B中的一项或多项,可以用于监听其他设备(例如电子设备100)发射的信号,如探测请求、扫描信号等等,并可以发送响应信号,如探测响应、扫描响应等,使得其他设备(例如电子设备100)可以发现电子设备200,并与其他设备(例如电子设备100)建立无线通信连接,通过蓝牙或WLAN中的一种或多种无线通信技术与其他设备(例如电子设备100)进行通信。
在另外一些实施例中,蓝牙通信处理模块、WLAN通信处理模块中的一项或多项也可以发射信号,如广播蓝牙信号、信标信号,使得其他设备(例如电子设备100)可以发现电子设备200,并与其他设备(例如电子设备100)建立无线通信连接,通过蓝牙或WLAN中的一种或多种无线通信技术与其他设备(例如电子设备100)进行通信。
天线3用于发射和接收电磁波信号,可覆盖单个或多个通信频带。在另外一些实施例中,天线可以和调谐开关结合使用。
在另一些实施例中,电子设备200还可以包括有多个天线,本申请对此不作限制。
电源管理模块212可以包括有电池与充电管理模块。电源管理模块212可以为处理器202,存储器203,和无线通信模块211等供电。电源管理模块212还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块212也可以设置于处理器202中。在另一些实施例中,电源管理模块212中的充电管理模块也可以设置于不同的器件中。
图4是本申请实施例的电子设备100的软件结构框图。如图4所示,该电子设备100的软件结构可以包括:应用程序层(applications,APP)、应用程序框架层(applicationframework,FWK)、安卓运行时(runtime)和系统库(libraries)、内核层(kernel)以及硬件层(hardware)。
应用程序层可以包括一系列应用程序包。
如图4所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
在本申请实施例中,应用程序层还可以包括游戏应用程序和游戏手柄应用程序。
游戏应用程序是智能手机、平板电脑等电子设备上的可供用户消遣娱乐的应用程序,本申请对该应用程序的名称不作限制。也即是说,该游戏应用程序可以是市面上任意一款用户可以获取并进行操控的游戏应用程序,例如等等,本申请对此不作限制。
游戏手柄应用程序可以用于管理及设置电子设备200(例如外设手柄)的应用程序。例如,游戏手柄应用程序可以用于设置和/或调整按键灵敏度、按键图标透明度、连击速率等等参数,也可以用于对电子设备100需要进行按键映射的应用程序用户界面上的按键区域进行识别。按键区域识别步骤完成后,游戏手柄应用程序可以响应于用户的操作,将当前需要进行映射的虚拟按键图标与电子设备200上的物理按键建立映射信息,并将该映射信息保存于电子设备100的内部存储和/或云端服务器中。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器、补丁包等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,头戴式显示设备振动,指示灯闪烁等。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)、补丁引擎等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动、以及WLAN蓝牙能力和基本通信协议。
下面结合捕获拍照场景,示例性说明电子设备100软件以及硬件的工作流程。
当触摸传感器180K接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸操作,该触摸操作所对应的控件为相机应用图标为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头193捕获静态图像或视频。
下面,介绍通信系统10的软件模块。
图5是通信系统10的软件架构框图。如图5所示,通信系统10的软件架构可以包括电子设备100的软件模块和电子设备200的软件模块。电子设备100的软件模块可以包括处理模块510、通信模块520、显示模块530。电子设备200可以包括通信模块540和处理模块550。
处理模块510包括按键识别模块511、按键映射模块512、按键管理模块513。其中,按键识别模块511可以用于确定电子设备100在与电子设备200建立通信连接,并启动需要进行按键映射的应用后,对电子设备100当下用户界面上的按键图标区域进行识别。按键管理模块513可以用于用户管理和调整游戏手柄的参数配置,例如按键灵敏度、按键图标透明度、连击速率等等。按键管理模块513可以用于获取电子设备100用户界面上按键图标的坐标位置、以及获取用户在电子设备200上触控的实体按键对应的键值,生成并保存前述按键图标坐标位置与实体按键对应键值的映射信息。
在另一些实施例中,电子设备100在与电子设备200建立通信连接,并启动需要进行按键映射的应用后,电子设备100检测到用户作用在用于开启按键区域识别模块的图标的触控操作(例如点击“开始匹配”图标)的操作,按键识别模块511响应于该操作,对电子设备100当下用户界面上的按键图标区域进行识别。
通信模块520可以包括管理基于USB的有线连接,和/或管理基于蓝牙和/或WLAN中的中一项或多项无线通信技术的无线连接。其中,蓝牙(BT)模块可以提供包括经典蓝牙(蓝牙2.1)或蓝牙低功耗(BLE)中一项或多项蓝牙通信的解决方案。WLAN模块可以提供包括Wi-Fi direct、Wi-Fi LAN或Wi-Fi softAP中一项或多项WLAN通信的解决方案。
显示模块530可以用于在电子设备100上显示用户界面,比如图像、视频,以便用户能与电子设备100进行交互。
通信模块540是电子设备200用于跟其他设备通信的模块,具体可以参考上述通信模块520的描述,在此不再赘述。
如图所示,电子设备200和电子设备100可以通过通信模块520和通信模块540之间建立的第一连接进行数据的交互。该第一连接可以参考前述图1中的描述,在此不再赘述。
处理模块550可以用于游戏手柄的信号处理。具体的,例如,响应于用户作用于电子设备200的触控操作(例如按压),电子设备200可以接收到物理信号(例如压力信号),然后,处理模块550可以通过前述传感器模块209中的传感器(例如压力传感器209A)将物理信号转化为电信号。处理模块550还可以采集前述传感器模块209中的数据进行处理。例如,当电子设备200向左偏移时,传感器模块209中的重力传感器209C检测到由左侧向下运动的重力加速度,处理模块550将该物理信号转化为电信号,并经过相应的处理(例如处理成合适的频率),通过通信模块540发送至电子设备100。电子设备100经由通信模块520接收并进行相应的处理后,在显示模块530显示出相应的触控事件(例如电子设备100上可控制的图标元素也相应地向左偏移)。
下面介绍电子设备100上的用于应用程序菜单的示例性用户界面。
图6A示出了一种示例性用户界面30。
用户界面30可以包括:状态栏301、具有常用应用程序图标的托盘302、日历指示符303、页面指示符304以及其他应用程序图标等等。
状态栏301可以包括:移动通信信号(又可以称为蜂窝信号)的一个或多个信号强度指示符301A、无线高保真(wirelessfidelity,Wi-Fi)信号的一个或多个信号强度指示符301B、电池状态指示符301C。
具有常用应用程序图标的托盘302可以展示:相机图标302A、通讯录图标302B、电话图标302C、信息图标302D。
日历指示符303可以用于指示当前时间,例如日期、星期几、时分信息等。
页面指示符304可以用于指示用户当前浏览的哪一个页面中的应用程序。用户可以左右滑动其他应用程序图标的区域,来浏览其他页面中的应用程序图标。
其他应用程序图标可以例如:音乐图标305、计算器图标306、游戏图标307、设置图标308。
在一些实施例中,图6A示例性所示的用户界面30可以为主界面(Homescreen)。
在其他一些实施例中,电子设备还可以包括主屏幕键。该主屏幕键可以是实体按键,也可以是虚拟按键。该主屏幕按键可以用于接收用户的指令,将当前显示的UI返回到主界面,这样可以方便用户随时查看主屏幕。上述指令具体可以是用户单次按下主屏幕键的操作指令,也可以是用户在短时间内连续两次按下主屏幕键的操作指令,还可以是用户在预定时间内长按主屏幕键的操作指令。在本申请其他一些实施例中,主屏幕键还可以集成指纹识别器,以便用户在按下主屏幕键的时候,随之进行指纹采集和识别。
可以理解的是,图6A仅仅示例性示出了电子设备100上的用户界面,不应构成对本申请实施例的限定。
下面分别描述本申请涉及的应用场景以及电子设备100上实现的用户界面的一些实施例。
图6A、图6B、图6C及图7示出了电子设备100和电子设备200建立通信连接的相关用户界面。
本申请实施例以电子设备100与电子设备200通过蓝牙进行通信为例。图6A示例性示出了电子设备100上的一种开启蓝牙的操作。
如图6A所示,当检测到在状态栏301上的向下滑动手势时,响应于该手势,电子设备100可以显示出用户界面31。用户界面31可以包括有窗口311以及与前述用户界面30相同的部分或全部界面元素(例如控件、图标、文字等)。窗口311可以显示有“蓝牙”的开关控件312,还可以显示有其他功能的开关控件(如Wi-Fi控件、手电筒控件、位置信息控件、游戏手柄控件313等等)。当检测到在窗口311中的蓝牙开关控件312上的操作(如在蓝牙开关控件312上的触摸操作)时,响应于该操作,电子设备100可以开启蓝牙功能。也即是说,用户可以在状态栏301处做一个向下滑动的手势来打开窗口311,并可以在窗口311中点击“蓝牙”的开关控件312来方便地开启蓝牙。蓝牙被开启后,电子设备100可以通过蓝牙通信技术发现附近的设备。
图6B示例性示出了另外一种开启蓝牙的操作。当检测到用户作用于设置图标308的触控操作(例如点击)时,响应于该操作,电子设备100可以显示出用户界面32。
用户界面32可以包括一个或多个设置项,该一个或多个设置项可以包括:飞行模式设置条目、Wi-Fi设置条目、蓝牙设置条目321、移动网络设置条目、游戏手柄设置条目322、勿扰模式设置条目、显示与亮度设置条目、华为账号设置条目等等。
在用户界面32上的每个设置条目对应有相应的标题。例如,飞行模式设置条目对应的标题为“飞行模式”,Wi-Fi设置条目对应的标题为“Wi-Fi”,蓝牙设置条目321对应的标题为“蓝牙”,移动网络设置条目对应的标题为“移动网络”,游戏手柄设置条目322对应的标题为“游戏手柄”,勿扰模式设置条目对应的标题为“勿扰模式”,显示与亮度设置条目对应的标题为“显示与亮度”,华为账号设置条目对应的标题为“华为账号”。各个设置项可用于监听触发显示对应设置项的设置内容的操作(如触摸操作),响应于该操作,电子设备100可打开用于显示对应设置项的设置内容的用户界面。
在另一些实施例中,该用户界面32可以增加设置条目,例如,“辅助助手”、“生物识别和密码”等。在另一些实施例中,用户界面32中的设置条目也可以有响应的文字说明。该用户界面32也可以减少一些条目,设置条目对应的标题也可以不同。各个设置项的表现形式可包括图标和/或文本。本申请对此不作限制。
在用户界面32的场景下,检测到用户作用于蓝牙设置条目321的触控操作(例如点击),响应于该操作,电子设备100可以开启蓝牙功能。蓝牙被开启后,电子设备100可以通过蓝牙通信技术发现附近的设备。
在另一些实施例中,电子设备100也还可以通过Wi-Fi直连(如Wi-Fi p2p)、Wi-FisoftAP等、Wi-Fi LAN等通信技术发现该电子设备附近的设备,本申请对此不作限制。
图6C示例性示出了用于蓝牙设置的用户界面33。当检测到用户作用于蓝牙开关控件312或蓝牙设置条目312的触控操作(例如点击),响应于该操作,电子设备100显示出如图6C所示的用户界面33。
用户界面33可以包括前述用户界面30所示的状态栏301,该状态栏可以参照前述图6A的描述,在此不再赘述。用户界面33还可以包括当前页面指示符331、蓝牙状态控制控件332、游戏手柄200设备选项条目323以及其他界面元素(例如图标、控件、文字等等)。
当前页面指示符331可用于指示当前页面,例如文本信息“蓝牙”可用于指示当前页面用于展示蓝牙设置主界面。不限于文本信息,当前页面指示符311还可以是图标。
蓝牙状态控制控件332可以用于监听作用于该控件的触控操作(例如点击)。响应于该操作,电子设备100可以开启或关闭蓝牙功能。
游戏手柄200设备选项条目323可以用于监听作用于该条目的触控操作(例如点击)。响应于该操作,电子设备100可以和该游戏手柄200建立蓝牙无线通信连接。
在另一些实施例中,用户界面33可以显示出更多的设备选项条目,例如手机设备选项条目、平板电脑设备选项条目等等。本申请对此不作限制。
图7示例性示出了电子设备100与电子设备200成功建立蓝牙通信连接时,电子设备100显示出的用户界面40。
用户界面40可以包括蓝牙图标401、手柄图标402、手柄悬浮控件403,以及与前述图6A所示的用户界面30显示的界面元素(如控件、图标、文字内容等等)相同的部分或所有界面元素。其中,蓝牙图标401用于提示用户电子设备100与电子设备200通过蓝牙建立无线通信连接,手柄图标402用于提示用户电子设备100与电子设备200已经成功建立通信连接。手柄悬浮控件403可以用于监听作用于该控件的触控操作,响应于该操作,电子设备100可以显示出用于设置游戏手柄的用户界面。
在其他一些实施例中,该手柄悬浮控件402也可以显示出文本信息,例如“游戏手柄”等,本申请对此不作限制。
在电子设备100与电子设备200成功建立通信连接后,电子设备100可以显示出针对电子设备200的功能调试界面。
在一些实施例中,该功能调试界面可以用于显示一个或多个针对于电子设备200的功能调试选项,该功能调试选项可以用于对电子设备200或电子设备100相关的参数进行设置和修改。电子设备100可以存储该项参数的设置和修改,以便于当电子设备100与电子设备200再次建立通信连接时,直接使用该项参数设置,而不必用户重新手动进行调试。其中,可以用于用户进行调试的参数包括但不限于如下选项:点击模式、关联鼠标、轮盘模式、手势模式等等,本申请对此不作限制。
图8、图9、图10、图11示例性示出了一种电子设备100针对于电子设备200功能调试的实现方式。
如图8示例性所示,电子设备100可以响应于用户作用于游戏手柄控件313、或游戏手柄设置条目322、或手柄悬浮控件403的触控操作(例如点击),显示出图8示例性所示的功能调试用户界面41。
用户界面41可以包括当前页面指示符411、按键透明度设置条目412、按键灵敏度设置条目413、连击模式设置条目414、保存控件415、取消控件416等等。
当前页面指示符411可用于指示当前页面,例如文本信息“游戏手柄”可用于指示当前页面用于展示游戏手柄设置主界面。不限于文本信息,当前页面指示符411还可以是图标。
按键透明度设置条目412可以包括对应的标题“按键透明度”、文字信息“25”及按键透明度调整控件。其中,该文字信息可以根据作用于按键透明度调整控件的操作(例如拖动)发生变化。例如,当作用于按键透明度调整控件的操作为向右拖动,该文字信息中的数字可以变大。当作用于按键透明度调整控件的操作为向左拖动,该文字信息中的数字可以变小。该按键透明度设置条目412中的按键透明度调整控件可以用于监听作用于该控件上的操作(例如拖动),响应于该操作,电子设备100可以显示出用户界面上虚拟按键图标相应的透明程度。
按键灵敏度设置条目413可以包括对应的标题“按键灵敏度”、文字信息“46”及按键灵敏度调整控件。其中,该文字信息可以根据作用于按键灵敏度调整控件的操作(例如拖动)发生变化。例如,当作用于按键灵敏度调整控件的操作为向右拖动,该文字信息中的数字可以变大。当作用于按键灵敏度调整控件的操作为向左拖动,该文字信息中的数字可以变小。该按键灵敏度设置条目413中的按键灵敏度调整控件可以用于监听作用于该控件上的操作(例如拖动),响应于该操作,可以用于调整电子设备200上物理按键的触发力度。
连击速率设置条目414可以包括对应的标题“连击速率”、文字信息“46”及连击速率开关控件414A与连击速率调整控件414B。其中,该文字信息可以根据作用于按键灵敏度调整控件的操作(例如拖动)发生变化。例如,当作用于连击速率调整控件414B的操作为向右拖动,该文字信息中的数字可以变大。当作用于连击速率调整控件414B的操作为向左拖动,该文字信息中的数字可以变小。该连击速率设置条目414中的连击速率开关控件414A可以用于监听作用于该控件上的触控操作(例如点击),响应于该操作,电子设备100开启连击模式。该按键灵敏度设置条目413中的连击速率调整控件414B可以用于监听作用于该控件上的操作(例如拖动),响应于该操作,电子设备100可以用于每一次连击模式触发的时间间隔。
在另一些实施例中,该用户界面41可以增加设置条目,也可以减少一些条目,设置条目对应的标题也可以不同。各个设置项的表现形式可包括图标和/或文本。本申请对此不作限制。
在另外一些实施例中,设置操作可以在其他场景下施行。例如,以游戏应用场景为例,图9和图10示出了一种在游戏应用场景下进行设置操作的示例。
如图9所示,响应于游戏图标307的触控操作(例如点击),电子设备100显示出用户界面60(也可以称作第一用户界面)。该用户界面60是本申请实施例示例性所示的一种游戏应用的用户界面。
如图9所示,用户界面60可以包括:文字信息与图形元素、游戏角色601、方向按键区域602、功能按键区域603、手柄悬浮控件403。其中:
文字信息与图形元素可以包括用于提示用户当前游戏名称的文字信息“闯关游戏”,用于提示用户当前用户在游戏中的数据信息的文字信息“体力:48”,以及其他提示性的文字信息“1-9级副本”、“执行任务”、“任务”、“稻香村:闯关战力建议1440”等等。
游戏角色601是用户在游戏中所操作的主体,可以响应作用在用户界面60中的方向按键控件、和/或技能按键控件的触控操作(例如点击)。游戏角色601可以响应于方向按键的触控操作,作出移动动作,也可以响应于技能按键的触控操作,施放对应的技能等。
方向按键区域602可以包括向上按键图标602A、向右按键图标602B、向下按键图标602C、向左按键图标602D。方向按键区域602可以用于接收用户作用于该区域按键的触控操作(例如点击操作)。电子设备100响应于该操作,可以显示游戏人物图标601在相应方向上(例如向上、向下、向左、向右等等)的移动。例如,电子设备100检测到用户作用于方向按键区域602中的向上按键图标602A的触控操作(例如长按),则电子设备100显示出游戏人物图标601在游戏场景中向上移动的场景。
在一些实施例中,方向按键区域602可以包括比图示更多或更少的方向按键。例如,方向按键区域602还可以包括斜向右上方向按键、斜向右下方向按键等等。在另一些实施例中,按键区域602可以是圆形图标,用于监听用户作用于该圆形图标的触控操作(例如长按圆形图标并在任意方向上拖动),电子设备100响应于该操作,显示出游戏人物图标601在游戏场景中进行任意方向移动的用户界面。本申请对此不作限制。
示例性地,技能按键区域603可以包括装备按键图标603A、地图按键图标603B、普攻按键图标603C、大招按键图标603D。功能区域按键603可以用于接收用户作用于该区域按键的触控操作(例如点击操作)。电子设备100响应于该操作,可以显示相应技能的用户界面。
在另外一些实施例中,技能按键区域还可以包括比图示更多或更少的技能按键。例如,技能按键区域603还可以包括“设置”技能按键、“收集装备”技能按键等等,本申请对此不作限制。
手柄悬浮控件403可以参考前述图7中手柄悬浮控件403的描述,在此不再赘述。
可以理解的是,该游戏应用的用户界面60可以是其他游戏应用的场景,例如,用户界面60可以是前述图4应用程序层中所描述的游戏应用的用户界面。
不限于此,在另一种可能的实施例中,用户还可以通过其他方式获取游戏应用的用户界面60,例如,用户可以在中通过搜索某款游戏小程序来获取相应的游戏应用的用户界面60。是一款社交类应用程序,同时也可以提供用户各种类型的小程序应用(例如购物、游戏、新闻资讯等等)。其中,上述所提及的小程序是提供的一种不用下载就能使用的应用,用户可以通过二维码、搜索等方式体验到开发者们开发的小程序。本申请对此不作限制。
图10示出了一种在示例性游戏应用场景下,电子设备100显示出的设置主界面。
如图10所示,响应于作用在手柄悬浮控件403(也可以称为第一悬浮控件)的触控操作(例如点击),电子设备100可以显示出用户界面61。其中,用户界面61可以包括功能调试栏611,以及前述图9所示的用户界面60显示的界面元素(例如控件、图标、文字内容等等)。功能调试栏611可以包括游戏识别图标611A、显示/隐藏图标611B、设置图标611C、问题反馈图标661D。
游戏识别图标611A可以用于监听用户通过该图标的触控操作,响应于该操作,电子设备100可以对用户界面60中的方向按键区域及技能按键区域进行识别。后续实施例将详细描述电子设备100提供的按键识别的详细步骤,在此暂不赘述。
显示/隐藏图标611B可以用于监听用户通过该图标的触控操作,响应于该操作,电子设备100可以实现显示,或隐藏用户界面中的虚拟按键图标。
设置图标611C可以用于监听用户通过该图标的触控操作,响应于该操作,电子设备100可以显示出针对电子设备200的基本通用设置的用户界面。该基本通用设置的选项可以包括但不限于:图标透明度设置、按键透明度设置、连击模式、恢复默认设置、保存、返回游戏界面等等。
问题反馈图标611D可以用于监听用户通过该图标的触控操作,响应于该操作,电子设备100可以显示出用于用户反馈相关问题的用户界面。
在其他一些实施例中,前述功能调试栏611中的图标也可以显示出相应的文本信息,例如“开始匹配”、“显示/隐藏”、“设置”、“重置按键匹配”等。在另外一些实施中,前述功能调试栏611中的部分或全部图标控件也可以不显示在电子设备100的触摸屏上,而是设置于电子设备200上的物理按键,电子设备100可以响应于用户作用于电子设备200上的物理按键的触控操作(例如按压),而显示出相对应的功能调试用户界面。可以理解的是,对于如何触发电子设备100显示出相应的功能调试界面,本申请对此不作限制。
可以理解的是,上述实施场景以及功能调试用户界面仅用于对本申请作示例性说明,并不对本申请构成限制。
如图11所示,响应于作用在设置图标611C的触控操作(例如点击),电子设备100可以显示出用户界面66。该用户界面66可以显示出通用设置窗口661,该通用设置窗口661可以包括按键透明度设置条目662、按键灵敏度设置条目663、连击模式设置条目664、恢复默认设置控件665、保存控件666、返回游戏界面控件667。其中:
按键透明度设置条目662可以参考前述图8用户界面41中的按键透明度设置条目412,在此暂不赘述。
按键灵敏度设置条目663可以参考前述图8用户界面41中的按键灵敏度设置条目413,在此暂不赘述。
连击模式设置条目664可以参考前述图8用户界面41中的连击模式设置条目414,在此暂不赘述。
恢复默认设置控件665可以监听作用于该控件的触控操作,响应于该操作,电子设备100可以清除在通用设置窗口中用户所调整的各设置条目的数据,恢复电子设备100默认的各项设置条目的最先设置数据。
保存控件666可以监听作用于该控件的触控操作,响应于该操作,电子设备100可以保存用户所调整的各设置条目的数据。
返回游戏界面控件667可以监听作用于该控件的触控操作,响应于该操作,电子设备100可以显示该游戏应用的用户界面60。
图12示出了一个实施例中电子设备100识别游戏界面中虚拟按键的界面示意图。
如图12所示,响应于作用在游戏识别图标611A上的触控作用(例如点击),开始识别用户界面中的按键区域时,电子设备100可以显示出用户界面62。
用户界面62可以包括前述图9所示的用户界面60显示的界面元素(例如控件、图标、文字内容等等)。在电子设备100识别出前述方向按键区域与技能按键区域后,用户界面62显示出被标记为高亮的方向按键区域及技能按键区域,还可以显示出提示信息621、重新识别图标622、建立游戏手柄按键映射图标623。其中:
该提示信息621用于提示用户已经完成按键区域识别的,可以是文字信息“已完成自动识别游戏按键”。在另一些实施例中,该提示信息621还可以是语音信息,或者是图标。本申请对此不作限制。
重新识别图标622可以用于监听作用于该图标上的触控操作(例如点击),响应于该操作,电子设备100重新识别用户界面中的方向按键区域和技能按键区域。
建立游戏手柄按键映射图标623可以用于监听作用于该图标的触控操作(例如点击),响应于该操作,电子设备100可以建立与电子设备200的按键映射关系。
可以理解的是,提示信息621、重新识别图标622、建立游戏手柄按键映射图标623独立于游戏应用的用户界面,也即是说,上述提示信息与图标并不与游戏应用的用户界面相关,当游戏应用的用户界面发生改变时,上述提示信息与图标并不随之发生改变。
图13示出了一个实施例中,电子设备100与电子设备200建立按键映射的实施过程的界面示意图。
如图13所示,响应于作用在建立游戏手柄按键映射图标623上的触控作用(例如点击),开始建立电子设备100与电子设备200的按键映射时,电子设备100可以显示出用户界面63。当游戏虚拟按键与游戏手柄物理按键建立映射关系时,用户界面63中显示出可以供用户可操控的光标图标631。该光标图标631可以用于在已经识别出的按键区域上移动,当需要对某个虚拟按键进行适配时,用户将光标移动到该指定虚拟按键图标上,使得该光标悬停在该虚拟按键图标上。
例如,如图13所示,该光标图标631悬停在已被标识为高亮的普攻技能按键625C上。当响应于作用在电子设备200上功能按键201E的触控操作(例如按压),电子设备200向电子设备100发送包含有功能按键201E键值的第一信号。当响应于接收到包含有功能按键201E键值的第一信号时,电子设备100建立普攻技能按键625C与功能按键201E的映射关系,该普攻技能按键625C不再高亮显示。电子设备100完成普攻技能按键625C与功能按键201E的映射后,电子设备100显示出用户界面64。该用户界面64中,光标图标631移动到下一个被标记成为高亮的方向按键区域624。检测到电子设备200作用于摇杆按键201A的触控操作(例如按压),电子设备100建立方向按键区域624与摇杆按键201A的映射关系,该方向按键区域624不再高亮显示。当所有按键都与电子设备200建立映射关系后,电子设备100显示出光标图标631消失,所有按键都不再高亮显示的用户界面65。
在一些实施例中,光标图标631可以自行移动到高亮按键区域,也可以由用户操控移动至用户所指定的高亮按键区域,本申请对此不作限制。
在另一些实施例中,电子设备100可以对按键映射进行合法性检测,也即是说,当用户在建立按键映射关系的过程中,响应于作用于电子设备200上的物理按键的触控操作(例如按压),电子设备200向电子设备100发送包含有物理按键键值的第一信号,当电子设备100接收到包含有该物理按键键值的第一信号时,会检测该物理按键键值是否已与电子设备100上的其他虚拟按键图标建立了映射关系。若是,则显示出提示信息以提示用户该物理按键已与其他虚拟按键图标建立映射。该提示信息可以是文本信息,例如“该按键已建立映射,请重新进行选择”,也可以是语音信息,本申请对此不作限制。
具体的,例如,如图13所示,电子设备100上的普攻技能按键625C已与电子设备200上的功能按键201E已经建立了映射关系,此时,光标图标631移动至还未进行按键映射的方向按键区域631,若响应于作用于电子设备200上的功能按键201E的触控操作(例如按压),电子设备200向电子设备100发送包含有功能按键201E键值的第一信号,当电子设备100接收到包含有功能按键201E键值的第一信号时,检测到该功能按键201E键值已与普攻技能按键625C建立映射关系,则显示出文本提示信息“该按键已建立映射,请重新进行选择”,以提示用户该物理按键已与虚拟按键图标建立映射。
在另一些实施例中,电子设备100还可以对按键映射进行合理性检测,也即是说,当用户在建立按键映射关系的过程中,响应于作用于电子设备200上的物理按键的触控操作(例如按压),电子设备200向电子设备100发送包含有物理按键键值的第一信号,当电子设备100接收到包含有该物理按键键值的第一信号时,会检测该物理按键键值是否能与该选定的虚拟按键图标建立正确的映射关系。若否,则显示出提示信息以提示用户重新进行选择。该提示信息可以是文本信息,例如“该按键不能与选定按键图标进行匹配,请重新进行选择”,也可以是语音信息,本申请对此不作限制。
具体的,例如,如图13所示,光标图标631移动至还未进行按键映射的方向按键区域631,若响应于作用于电子设备200上的功能按键201E的触控操作(例如按压),电子设备200向电子设备100发送包含有功能按键201E键值的第一信号,当电子设备100接收到包含有功能按键201E键值的第一信号时,检测到该功能按键201E键值不能与方向按键区域631建立正确的映射关系,则显示出文本提示信息“该按键不能与选定按键图标进行匹配,请重新进行选择”,以提示用户重新选择可以与方向按键区域631进行正确映射的物理按键(例如摇杆按键201A)。
图14A、图14B示出了电子设备100与电子设备200成功建立按键映射后的游戏手柄控制游戏应用中应用按键所产生的效果界面示意图。
当电子设备100上的虚拟按键图标与电子设备200上的物理按键建立映射关系后,响应于用户作用在电子设备200上物理按键的触控操作(例如按压),电子设备100可以显示出新的用户界面(又可称为第二用户界面),该用户界面可以部分或全部不同于未触控电子设备200上的物理按键时电子设备100所显示的用户界面,例如游戏应用界面的跳转、游戏应用界面中人物的移动、游戏场景的改变等等导致的用户界面的刷新。具体的,如图14A、图14B示例性示出了本申请上述的技术效果界面。
如图14A所示,电子设备200中的功能按键201E与电子设备100上的“普攻”按键图标625C建立了映射关系。当电子设备100检测用户手指712作用于电子设备200上的功能按键201E的触控操作(例如按压)时,电子设备100即产生该“普攻”按键图标625C的触控事件,电子设备100显示出游戏人物图标601发动普攻技能的用户界面71。
如图14B所示,电子设备200中的摇杆按键201A与电子设备100上的方向按键区域624建立了映射关系。当电子设备100检测用户手指732作用于电子设备200上的摇杆按键201A的触控操作(例如向右推动)时,电子设备100即产生该方向按键区域624中向右方向按键624C的触控事件,电子设备100显示出游戏人物图标601在游戏场景中向右移动的用户界面73。
可以理解的是,本实施例图14A、图14B所示出的技术效果界面仅仅用作解释本申请实施例,并不对本申请构成具体限制。
基于上述示例性实施例及示例性应用场景,下面详细说明电子设备100与电子设备200建立按键映射步骤。
图15示出了本申请所提供的一种按键映射方法的流程图。如图15所示,本申请以电子设备100是手机,电子设备200是游戏手柄为例,详细描述该方法,该方法可以包括:
S101、手机与游戏手柄建立第一连接。
具体的,手机和游戏手柄可以具有蓝牙(BT)模块、WLAN模块中的一项或多项。其中,蓝牙(BT)模块可以提供包括经典蓝牙(蓝牙2.1)或蓝牙低功耗(BLE)中一项或多项蓝牙通信的解决方案。WLAN模块可以提供包括Wi-Fi direct、Wi-Fi LAN或Wi-Fi softAP中一项或多项WLAN通信的解决方案。
手机可以使用蓝牙或WLAN中的一种或多种无线通信技术与游戏手柄建立第一连接。
S102、该手机显示第一用户界面。
具体的,该第一用户界面可以包含多个游戏按键(又可称为游戏控件),这多个游戏按键中可以包括第一游戏按键(又可称为第一控件)。如图9所示的用户界面60,该用户界面可以包括普攻技能按键603C。
S103、该手机检测到第一用户操作。
具体的,该手机检测到用户请求建立游戏按键映射的第一用户操作,如图12所示的用户作用于游戏识别图标611A的触控操作(例如点击)。
S104、该手机扫描第一用户界面,通过第一图像处理算法,识别出第一用户界面中的多个游戏按键。
如图12所示。具体的,游戏画面中的按键区域相对于游戏画面来说是分离的,也即是说,按键区域不会随着游戏画面的变化而变化,并且,按键区域与周边游戏画面的颜色反差较大。因此,手机可以通过第一图像处理算法,将游戏画面中的按键区域识别出来。然后,为了提高按键区域的识别精准度,手机可以结合获取到的用户在该游戏应用画面中的触控频率,对第一图像处理算法进行校正,从而准确有效地找到游戏画面中的按键区域。
在一些实施例中,第一图像处理算法可以是边缘检测算法,关于边缘检测算法是如何识别游戏按键的,会在后文进行说明,此处先不赘述。
边缘检测算法仅为一个示例,本申请不对第一图像处理算法进行特殊限制,其他可以实现识别游戏按键的方法均可。
S105、在每个游戏按键的位置上生成对应的虚拟按键,即在第一游戏按键的位置上生成第一虚拟按键。
具体的,如图12所示,当手机成功识别出用户界面中的游戏按键位置后,在每个游戏按键的位置上可以生成对应的虚拟按键。
S106、在第一虚拟按键处显示第一光标。
具体的,如图13所示,普攻技能按键625C显示出第一光标631。不限于显示第一光标,第一虚拟按键还可以显示高亮状态、闪烁状态等,只要可以被用户识别为待选定状态即可。
S107、游戏手柄检测到用户按压第一物理按键。
具体的,如图13所示,游戏手柄检测到用户按压第一物理按键功能按键201E的操作。
S108、游戏手柄发送第一物理按键被按压的第一信号。
第一信号可以携带有第一物理按键的标识。
S109、成功建立第一游戏按键和第一物理按键的第一映射关系。同理,其余按键也一一建立映射关系。
具体的,如图13所示,手机可以获取有光标图标631悬停的普攻技能按键625C的位置信息,以及第一物理按键功能按键201E的标识或键值,并形成两者间的映射关系。同理,手机上其余虚拟按键和游戏手柄上的物理按键也一一建立映射关系。
在第一游戏按键与第一物理按键建立完映射关系后,第一光标可以从第一游戏按键处移至第二游戏按键处,本申请对按键匹配时光标移动的顺序不作限制,光标可以移至任意一个还未建立映射的游戏按键处。
在手机界面中的游戏按键与游戏手柄的物理按键建立映射关系后,手机中可以生成并存储有第一映射表,该第一映射表中记录了手机界面中的游戏按键与游戏手柄的物理按键之间的映射关系。
S110、在所有游戏按键与游戏手柄的物理按键的映射关系建立完成之后,手机返回显示第一用户界面。
具体的,当手机上所有游戏按键和游戏手柄上的物理按键的映射关系建立完成后,手机返回显示游戏界面。
S111、游戏手柄检测到用户按压第一物理按键。
如图14A所示,游戏手柄检测到用户按压第一物理按键功能按键201E的操作。
S112、游戏手柄向手机发送第一物理按键被按压的第一信号。
S113、手机接收到第一物理按键被按压的信号,根据第一映射关系,触发第一游戏按键被点击。
S114、手机显示第二用户界面,第二用户界面为第一游戏按键对应的游戏功能被触发所展示的用户界面。
如图14A所示,当游戏手柄上的第一物理按键功能按键201E被按压时,手机接收到第一物理按键功能按键201E被按压的信号,触发点击普攻功能按键625C被点击的事件,显示出对应的普攻技能被触发所展示的用户界面71。
在一些实施例中,电子设备100也可以设置第一时长阈值,当光标悬停在虚拟按键图标上的时间超过第一时长阈值时,电子设备100将该虚拟按键图标确认为需要进行是适配的虚拟按键图标,并获取该虚拟按键图标的位置信息。因此,可以理解的是,对于电子设备100如何确认游戏应用画面中哪个虚拟按键图标是需要进行适配的虚拟按键图标,本申请对此并不作限制。
下面结合图16和图17,以边缘检测算法为例,说明电子设备100识别游戏应用画面中的按键区域的步骤。如图16所示,该方法步骤可以包括:
S201、电子设备100对第一图像进行灰度处理,得到第二图像。
具体的,第一图像是第一用户界面转化的图像,第一用户界面即游戏界面。第一图像为彩色图像,第二图像是第一图像进行灰度处理后得到的灰色图像。
可以理解的是,当前主流的标准图像表示方式是24比特模式,即每像素24位(bitsperpixel,BPP)编码的RGB值。它是使用三个8位无符号整数(0到255)表示红色、绿色和蓝色的强度。24比特模式用于真彩色和联合图像专家小组(joint photographicexperts group,JPEG)图像格式或者标签图像文件格式(tag image file format,TIFF)等图像文件格式里的通用颜色交换。它可以产生一千六百万种颜色组合,对人类的眼睛来说,其中有许多颜色已经无法确切地分辨。也即是说,电子设备100先存储红色R(8bit),再存储绿色G(8bit),最后存储蓝色B(8bit),一共24bit,每个颜色256个梯度,交错地以RGBRGBRGB……这样的形式存储在文件里面。其中,JPEG是一个国际图像压缩标准,JPEG图像压缩算法能够在提供良好的压缩性能的同时,具有比较好的重建质量,被广泛应用于图像、视频处理领域。TIFF是一种灵活的位图格式,主要用来存储包括照片和艺术图在内的图像。
而灰度图只有8位的图像深度,因此在图像处理中,灰度图所需的计算量比彩色图的计算量要少。虽然丢失了一些颜色等级,但是从整幅图像的整体和局部的色彩及亮度等级分布特征来看,作为灰度图的第二图像的描述与作为彩色图的第一图像的描述是一致的。
因此,电子设备100可以将第一图像进行灰度处理。根据R、G、B的重要性及其他指标,将三个不同的分量进行加权平均。由于人眼对绿色的敏感度最高,对蓝色的敏感度最低,因此,按公式1中对RGB三个分量进行加权平均能得到较合理的灰度图像。电子设备100可以根据公式1得到第一图像中每一个像素的灰度值,从而获得灰度处理后的第二图像:
Gray=0.3R+0.6G+0.1B 公式1
S202、电子设备100对第二图像进行高斯滤波。
具体的,在本申请实施例中,对第二图像进行高斯滤波处理即是对第二图像的灰度值进行加权平均,也即是说,针对第二图像中每一个像素点的灰度值,都由其本身值和邻域内的其他灰度值经过加权平均,最终得到该像素点经过高斯滤波后的最终灰度值。
因此,可以看出,高斯滤波可以分为两步:1.获取高斯模板(也即是权重模板)。2.进行加权平均。
在像素点的加权平均过程中,正态分布显然是一种可取的权重分配模式,由于图像是二维的,所以需要使用二维的高斯函数,如公式2所示:
在计算权重时,只需要将“中心点”作为原点,其他点按照其在正态曲线上的位置,分配权重,就可以得到一个加权平均值。
示例性的,假定σ=1.5,模糊半径为1,中心点的坐标为(0,0),那么距离它最近的8个点坐标如表1所示:
表1
(-1,1) | (0,1) | (1,1) |
(-1,0) | (0,0) | (1,0) |
(-1,-1) | (0,-1) | (1,-1) |
将上述坐标中的横坐标作为二维高斯函数中的x,纵坐标作为二维高斯函数中的y,经计算,则模糊半径为1的权重矩阵如表2所示:
表2
0.0453542 | 0.0566406 | 0.0453542 |
0.0566406 | 0.0707355 | 0.0566406 |
0.0453542 | 0.0566406 | 0.0453542 |
这9个点的权重总和等于0.4787147。根据权重模板的特性,如果只计算这9个点的加权平均,还必须让它们的权重之和等于1,因此上面9个值还需要分别除以0.4787147,得到最终的权重矩阵,如表3所示:
表3
0.0947416 | 0.118318 | 0.0947416 |
0.118318 | 0.147761 | 0.118318 |
0.0947416 | 0.118318 | 0.0947416 |
由于本申请示例性的实施例的模糊半径为1,因此,在对像素点进行高斯滤波计算时,只需要取周围8个像素点进行加权平均。示例性的,该9个像素点的灰度值如表4所示。灰度值范围为0-255。位于表4中心的像素点即为本次需要处理的像素点:
表4
14 | 15 | 16 |
24 | 25 | 26 |
34 | 35 | 36 |
将上述表4中像素点的灰度值分别与表3中对应位置的权重相乘,如表5所示:
表5
14×0.0947416 | 15×0.118318 | 16×0.0947416 |
24×0.118318 | 25×0.147761 | 26×0.118318 |
34×0.0947416 | 35×0.118318 | 36×0.0947416 |
最终所获得的数值如表6所示:
表6
1.32638 | 1.77477 | 1.51587 |
2.83963 | 3.69403 | 3.07627 |
3.22121 | 4.14113 | 3.4107 |
将上述表6中的9个值相加,即是该中心点的高斯滤波值。该中心点的高斯滤波值计算过程如下式子所示:
1.32638+1.77477+1.51587+2.83963+3.69403+3.07627+3.22121+4.14113+3.4107=24.99999
由于表示灰度值的符号是正整数,因此,可以近似取为25。
由上述本申请示例性实施例可以看出,电子设备100对第一图像中每一个像素点重复上述过程,既可获得第二图像。
在另外一些实施例中,二维高斯函数中的x,y还可以有其他的取值方式,也即是说,最后所得到的权重矩阵也可以是其他数值,本申请对此不作限制。
在另外一些实施例中,第一图像可以不经过灰度化,电子设备100可以直接对第一图像进行高斯滤波。也即是说,电子设备100可以针对第一图像,分别对第一图像中的RGB三个通道进行高斯滤波。
S203、电子设备100获取用户触控频率。
具体的,以前述的游戏应用程序为例,电子设备100可以获取用户在电子设备100屏幕界面针对于该游戏应用场景下的触控操作(例如点击)的第一次数数据。
具体的,获取用户在电子设备100屏幕界面针对于该游戏应用场景下的触控操作(例如点击)的次数,可以由游戏手柄应用程序进行。该游戏手柄应用程序可以获取到位于电子设备100内部存储空间中的,用户在电子设备100屏幕界面针对于该游戏应用场景下的触控操作(例如点击)的第一次数数据。该第一次数数据可以是用户在电子设备100屏幕界面针对于该游戏应用场景下的触控操作(例如点击)的历史次数数据,也即是说,该第一次数数据可以是该游戏应用还未进行按键识别操作、或按键匹配操作前,用户在电子设备100屏幕界面针对于该游戏应用场景下的触控操作(例如点击)的次数数据。
在一些实施例中,电子设备100可以在电子设备100与电子设备200建立通信连接时获取用户针对需要进行按键匹配的应用的触控频率。在另一些实施例中,电子设备100也可以在对第一图像进行灰度处理后,获取用户针对需要进行按键匹配的应用的触控频率。也即是说,电子设备100获取用户针对需要进行按键匹配的应用的触控频率这一步骤,只需要在电子设备100利用线性插值公式处理边缘检测之前完成,具体发生顺序本申请对此并不做限制。
S204、电子设备100结合上述获取到的用户触控频率,对第二图像进行边缘检测。
具体的,电子设备100利用边缘检测算法对第二图像进行边缘检测。
在本申请实施例中,边缘检测算法的边缘检测算子可以采用Sobel边缘差分算子或其他算子。Sobel边缘差分算子可以根据像素点上下、左右邻点灰度加权差,在边缘处达到极值这一现象来检测边缘。Sobel边缘差分算子计算出水平方向的差分Gx、垂直方向的差分Gy,由此可以确定像素点的梯度模(也称梯度强度)G和方向θ。如公式3和公式4所示,G为梯度强度(也称为梯度值),θ表示方向,arctan为反正切函数:
如果梯度强度G大于或等于某一阈值,则认为该像素点为边缘点。
下面,示例性地描述如何计算梯度强度G和方向θ。
x和y方向的Sobel算子分别为:
其中,Sx表示x方向的Sobel算子,用于检测y方向的边缘;Sy表示y方向的Sobel算子,用于检测x方向的边缘(边缘方向和梯度方向垂直)。
若图像中有一个3x3的窗口为A,要计算梯度的第一像素点为e,则和Sobel算子进行卷积后,第一像素点e在x方向和y方向的梯度值分别为:
其中,*为卷积符号,sum表示矩阵中所有元素相加求和。根据公式3和公式4便可以计算出第一像素点e中第一梯度向量的梯度强度和方向。
对图像进行梯度计算后,仅仅基于梯度值提取的边缘仍然很模糊,因此,需要将计算出来的梯度边缘进行边缘细化,也即是说,保留局部最大梯度值,而将其他除局部最大梯度值外的所有梯度值抑制为0。该部分的算法分为两个步骤:1.将当前像素的梯度强度与沿正负方向上的多个像素进行比较。2.如果当前像素的梯度强度与另外几个像素相比最大,则该像素点被保留为边缘点,否则,该像素点将被抑制。通常为了更加精确的计算,在跨越梯度方向的几个相邻像素之间使用线性插值来得到要比较的梯度强度。
示例性的,如图17所示,以5x5窗口为当前第一像素点e的邻近空间,比较当前点像素e的梯度强度T(e)和正负梯度直线相交的窗口上的像素点Q1、Q2、Q3、Q4的梯度强度T(Q1)、T(Q2)、T(Q3)、T(Q4)。其中,S1、S2为与Q1同一条直线上的两点,S3、S4为与Q2同一条直线上的两点,S5、S6为与Q3同一条直线上的两点,S7、S8为与Q4同一条直线上的两点。
如公式5、公式6、公式7所示,计算Q1的梯度强度T(Q1)的线性插值公式为:
T(Q1)=e(w×T(S1)+(1-w)×T(S2))公式7
其中,distance(S1,S2)表示S1、S2两点之间的距离,w系数可以通过梯度方向计算得到。同时,结合用户的使用习惯,对触控频率高的区域增加权重m,n为每分钟当前点S被用户点击的次数,以作为该区域梯度变换的修正值,同理计算其他Q1、Q2、Q3、Q4其他点的梯度强度。
若当前像素点S的梯度强度和同方向的Q1、Q2、Q3、Q4其他点的梯度强度相比较时最大的,保留其值。否则将当前像素点S的梯度抑制,也即是说,将当前像素点S的梯度设置为0。
在上述对梯度边缘进行细化后,剩余的像素可以更准确地表示图像中的实际边缘。然而,图像中仍然存在由于噪声和颜色变化引起的一些边缘像素。为了解决这些杂散响应,必须用弱梯度值过滤边缘像素,并保留具有高梯度值的边缘像素,可以通过选择高低阈值来实现。统计整幅图像所有像素点的梯度强度的直方图,选取占直方图总数75%的所对应的高位梯度强度为高阈值(也可以称为第一阈值),占直方图中总数25%的所对应的低位梯度强度为低阈值。如果像素点的梯度值高于高阈值,则将该像素保留;如果像素点的梯度值小于低阈值,则该像素点会被排除。
最后,所有识别出的边缘像素点依次连接构成第一图像上按键区域的边界。
在另外一些实施例中,也可以通过其他方法选取高阈值和低阈值的数值,本申请对此不作限制。
S205、电子设备100获取多帧图像,并对每一帧图像重复上述步骤。
具体的,电子设备100可以获取在时间轴上连续的一组图像,并对该组中的每一帧图像重复进行高斯滤波和边缘检测。在另一些实施例中,电子设备100也可以根据一定的时间间隔获取一组图像。可以理解的是,对于电子设备100如何获取多帧图像,本申请对此不作限制。
S206、电子设备100比较多组图像的结果,获取按键区域边缘。
具体的,电子设备100可以获取多组图像进行高斯滤波和边缘检测后的输出结果,并将该结果进行比较。电子设备100可以获取多组图像输出结果比较后的重复识别位置,该重复识别位置即为电子设备100需要获取的按键区域。
上述实施例中,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
Claims (30)
1.一种按键映射方法,其特征在于,所述方法包括:
第一电子设备与第二电子设备建立第一连接;
所述第一电子设备显示第一用户界面,所述第一用户界面中包含多个控件,所述多个控件中包括第一控件;
所述第一电子设备检测到第一用户操作;
所述第一电子设备识别出所述第一用户界面中的所述多个控件;
所述第一电子设备选定所述多个控件中的第一控件;
所述第一电子设备通过所述第一连接接收到所述第二电子设备发送的第一信号,并响应在所述第一控件处于选定状态时收到的所述第一信号,建立所述第二电子设备的第一物理按键与所述第一控件的映射关系;所述第一信号是所述第二电子设备在所述第一物理按键被用户按压时产生的。
2.如权利要求1所述的方法,其特征在于,还包括:
在建立所述第二电子设备的第一物理按键与所述第一控件的映射关系后,所述第一电子设备选定所述多个控件中的第二控件;
所述第一电子设备通过所述第一连接接收到所述第二电子设备发送的第二信号,并响应在所述第二控件处于选定状态时收到的所述第二信号,建立所述第二电子设备的第二物理按键与所述第二控件的映射关系;所述第二信号是所述第二电子设备在所述第二物理按键被用户按压时产生的。
3.如权利要求1或2所述的方法,其特征在于,所述第一用户界面为游戏应用程序的用户界面,所述第二电子设备为游戏手柄。
4.如权利要求1-3中任一项所述的方法,其特征在于,还包括:在所述多个控件与所述第二电子设备的多个物理按键之间的映射关系建立完成之后,所述第一电子设备通过所述第一连接接收到所述第一信号,所述第一电子设备执行所述第一控件对应的功能。
5.如权利要求1-4中任一项所述的方法,其特征在于,所述第一电子设备识别出所述第一用户界面中的所述多个控件,具体包括:
所述第一电子设备通过边缘检测方法从第一图像中识别出所述第一用户界面中的所述控件的边界;所述第一图像为对所述第一用户界面进行灰度处理得到的图像。
6.如权利要求5所述的方法,其特征在于,所述控件的边界包括多个边界点,所述边缘检测方法具体包括:所述第一图像中的第一像素点在所述第一用户界面中对应的触控位置被用户触控的频率越高,所述第一像素点被识别为所述控件的边界点的概率越高。
7.如权利要求5或6所述的方法,其特征在于,所述第一电子设备通过边缘检测方法从第一图像中识别出所述第一用户界面中的所述控件的边界,具体包括:
所述第一电子设备采用边缘算子,计算所述第一图像中每个像素点的梯度向量;
所述第一电子设备采用线性插值法,比较第一像素点的第一梯度向量的梯度值与所述第一像素点的第一梯度向量相同方向上其他像素点的梯度值;
如果在所述方向上,所述第一像素点的梯度值最大,那么所述第一电子设备保留所述第一像素点的梯度值,将所述其他像素点的梯度值设为零;
所述第一电子设备设定第一阈值,如果所述第一像素点的梯度值大于所述第一阈值,则所述第一像素点被保留,所有被保留的像素点构成所述第一用户界面中的所述控件的边界。
8.如权利要求4-7中任一项所述的方法,其特征在于,所述第一电子设备执行所述第一控件对应的功能,具体包括:所述第一电子设备显示第二用户界面,所述第二用户界面不同于所述第一用户界面。
9.如权利要求1-8中任一项所述的方法,其特征在于,所述第一控件处于选定状态,具体包括一项或多项:所述第一控件处于高亮状态、所述第一控件上显示有光标、所述第一控件处于闪烁状态。
10.如权利要求1-9中任一项所述的方法,其特征在于,还包括:
在所述第一电子设备显示第一用户界面之后,所述第一电子设备在所述第一用户界面中显示第一悬浮控件;
其中,所述第一电子设备检测到第一用户操作,具体包括:检测到作用于所述第一悬浮控件上的用户操作。
11.一种通信方法,应用于通信系统,所述通信系统包括第一电子设备和第二电子设备,其特征在于,包括:
所述第一电子设备与所述第二电子设备建立第一连接;
所述第一电子设备显示第一用户界面,所述第一用户界面中包含多个控件,所述多个控件中包括第一控件;
所述第一电子设备检测到第一用户操作;
所述第一电子设备识别出所述第一用户界面中的所述多个控件;
所述第一电子设备选定所述多个控件中的第一控件;
所述第二电子设备检测到第一物理按键被用户按压,生成第一信号;
所述第二电子设备通过所述第一连接向所述第一电子设备发送所述第一信号;
所述第一电子设备响应在所述第一控件处于选定状态时收到的所述第一信号,建立所述第一物理按键与所述第一控件的映射关系。
12.如权利要求11所述的方法,其特征在于,还包括:
在建立所述第一物理按键与所述第一控件的映射关系后,所述第一电子设备选定所述多个控件中的第二控件;
所述第二电子设备检测到第二物理按键被用户按压,生成第二信号;
所述第二电子设备通过所述第一连接向所述第一电子设备发送所述第二信号;
所述第一电子设备响应在所述第二控件处于选定状态时收到的所述第二信号,建立所述第二物理按键与所述第二控件的映射关系。
13.如权利要求11或12所述的方法,其特征在于,所述第一用户界面为游戏应用程序的用户界面,所述第二电子设备为游戏手柄。
14.如权利要求11-13中任一项所述的方法,其特征在于,还包括:在所述多个控件与所述第二电子设备的多个物理按键之间的映射关系建立完成之后,所述第一电子设备通过所述第一连接接收到所述第一信号,所述第一电子设备执行所述第一控件对应的功能。
15.如权利要求11-14中任一项所述的方法,其特征在于,所述第一电子设备识别出所述第一用户界面中的所述多个控件,具体包括:
所述第一电子设备通过边缘检测方法从第一图像中识别出所述第一用户界面中的所述控件的边界;所述第一图像为对所述第一用户界面进行灰度处理得到的图像。
16.如权利要求15所述的方法,其特征在于,所述控件的边界包括多个边界点,所述边缘检测方法具体包括:所述第一图像中的第一像素点在所述第一用户界面中对应的触控位置被用户触控的频率越高,所述第一像素点被识别为所述控件的边界点的概率越高。
17.如权利要求15或16所述的方法,其特征在于,所述第一电子设备通过边缘检测方法从第一图像中识别出所述第一用户界面中的所述控件的边界,具体包括:
所述第一电子设备采用边缘算子,计算所述第一图像中每个像素点的梯度向量;
所述第一电子设备采用线性插值法,比较第一像素点的第一梯度向量的梯度值与所述第一像素点的第一梯度向量相同方向上其他像素点的梯度值;
如果在所述方向上,所述第一像素点的梯度值最大,那么所述第一电子设备保留所述第一像素点的梯度值,将所述其他像素点的梯度值设为零;
所述第一电子设备设定第一阈值,如果所述第一像素点的梯度值大于所述第一阈值,则所述第一像素点被保留,所有被保留的像素点构成所述第一用户界面中的所述控件的边界。
18.如权利要求14-17中任一项所述的方法,其特征在于,所述第一电子设备执行所述第一控件对应的功能,具体包括:所述第一电子设备显示第二用户界面,所述第二用户界面不同于所述第一用户界面。
19.如权利要求11-18中任一项所述的方法,其特征在于,所述第一控件处于选定状态,具体包括一项或多项:所述第一控件处于高亮状态、所述第一控件上显示有光标、所述第一控件处于闪烁状态。
20.如权利要求11-19中任一项所述的方法,其特征在于,还包括:
在所述第一电子设备显示第一用户界面之后,所述第一电子设备在所述第一用户界面中显示第一悬浮控件;
其中,所述第一电子设备检测到第一用户操作,具体包括:检测到作用于所述第一悬浮控件上的用户操作。
21.一种电子设备,其特征在于,包括通信装置、触摸屏、存储器以及耦合于所述存储器的处理器,所述存储器中存储有可执行指令,其中:
所述通信装置用于与第二电子设备建立第一连接;
所述触摸屏用于显示第一用户界面,所述第一用户界面中包含多个控件,所述多个控件中包括第一控件;
所述触摸屏还用于检测到第一用户操作;
所述处理器用于识别出所述第一用户界面中的所述多个控件;
所述处理器还用于选定所述多个控件中的第一控件;
所述通信装置还用于通过所述第一连接接收到所述第二电子设备发送的第一信号;
所述处理器还用于,响应在所述第一控件处于选定状态时收到的所述第一信号,建立所述第二电子设备的第一物理按键与所述第一控件的映射关系;所述第一信号是所述第二电子设备在所述第一物理按键被用户按压时产生的。
22.如权利要求21所述的电子设备,其特征在于,所述处理器还用于,在建立所述第二电子设备的第一物理按键与所述第一控件的映射关系后,选定所述多个控件中的第二控件;
所述通信装置还用于通过所述第一连接接收到所述第二电子设备发送的第二信号;
所述处理器还用于,响应在所述第二控件处于选定状态时收到的所述第二信号,建立所述第二电子设备的第二物理按键与所述第二控件的映射关系;所述第二信号是所述第二电子设备在所述第二物理按键被用户按压时产生的。
23.如权利要求21或22所述的电子设备,其特征在于,所述第一用户界面为游戏应用程序的用户界面,所述第二电子设备为游戏手柄。
24.如权利要求21-23中任一项所述的电子设备,其特征在于,所述处理器还用于,在所述多个控件与所述第二电子设备的多个物理按键之间的映射关系建立完成之后,通过所述第一连接接收到所述第一信号时,执行所述第一控件对应的功能。
25.如权利要求21-24中任一项所述的电子设备,其特征在于,所述处理器具体用于:
通过边缘检测方法从第一图像中识别出所述第一用户界面中的所述控件的边界;所述第一图像为对所述第一用户界面进行灰度处理得到的图像。
26.如权利要求25所述的电子设备,其特征在于,所述控件的边界包括多个边界点,所述边缘检测方法具体包括:所述第一图像中的第一像素点在所述第一用户界面中对应的触控位置被用户触控的频率越高,所述第一像素点被识别为所述控件的边界点的概率越高。
27.如权利要求25或26所述的电子设备,其特征在于,所述处理器具体用于:
采用边缘算子,计算所述第一图像中每个像素点的梯度向量;
采用线性插值法,比较第一像素点的第一梯度向量的梯度值与所述第一像素点的第一梯度向量相同方向上其他像素点的梯度值;
如果在所述方向上,所述第一像素点的梯度值最大,那么保留所述第一像素点的梯度值,将所述其他像素点的梯度值设为零;
设定第一阈值,如果所述第一像素点的梯度值大于所述第一阈值,则所述第一像素点被保留,所有被保留的像素点构成所述第一用户界面中的所述控件的边界。
28.如权利要求24-27中任一项所述的电子设备,其特征在于,所述处理器具体用于,显示第二用户界面,所述第二用户界面不同于所述第一用户界面。
29.如权利要求21-28中任一项所述的电子设备,其特征在于,所述第一控件处于选定状态,具体包括一项或多项:所述第一控件处于高亮状态、所述第一控件上显示有光标、所述第一控件处于闪烁状态。
30.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1至10、权利要求11至20中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011223709.XA CN114527903A (zh) | 2020-11-05 | 2020-11-05 | 一种按键映射方法、电子设备及系统 |
PCT/CN2021/128486 WO2022095906A1 (zh) | 2020-11-05 | 2021-11-03 | 一种按键映射方法、电子设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011223709.XA CN114527903A (zh) | 2020-11-05 | 2020-11-05 | 一种按键映射方法、电子设备及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114527903A true CN114527903A (zh) | 2022-05-24 |
Family
ID=81456961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011223709.XA Pending CN114527903A (zh) | 2020-11-05 | 2020-11-05 | 一种按键映射方法、电子设备及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114527903A (zh) |
WO (1) | WO2022095906A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117850252A (zh) * | 2022-09-30 | 2024-04-09 | 华为终端有限公司 | 智能设备控制方法、电子设备及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103157282A (zh) * | 2011-12-15 | 2013-06-19 | 宏碁股份有限公司 | 进行触控游戏的方法及相关娱乐系统 |
CN103272382A (zh) * | 2013-05-23 | 2013-09-04 | 深圳市时讯互联科技有限公司 | 蓝牙游戏手柄模拟智能终端触摸屏控制游戏的方法及装置 |
CN105320297A (zh) * | 2015-11-16 | 2016-02-10 | 海信集团有限公司 | 一种终端设备的控制方法和装置 |
CN108924614A (zh) * | 2018-06-01 | 2018-11-30 | 联想(北京)有限公司 | 一种控制方法、控制系统及电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102999167A (zh) * | 2012-11-14 | 2013-03-27 | 广东欧珀移动通信有限公司 | 一种pc端按键操作移动终端内带有虚拟键盘应用的方法 |
US20150231498A1 (en) * | 2014-02-17 | 2015-08-20 | DingMedia, Ltd. | Universal controller interpreter |
CN106775282A (zh) * | 2016-11-10 | 2017-05-31 | 宇龙计算机通信科技(深圳)有限公司 | 操作终端的方法及装置 |
CN112764564B (zh) * | 2019-10-21 | 2022-10-21 | Oppo广东移动通信有限公司 | 触控信息的处理方法、装置、存储介质及电子设备 |
CN111399920B (zh) * | 2020-03-11 | 2024-03-19 | 深圳汗思凯普科技有限公司 | 移动终端应用程序按键自动配置的方法、装置及存储介质 |
-
2020
- 2020-11-05 CN CN202011223709.XA patent/CN114527903A/zh active Pending
-
2021
- 2021-11-03 WO PCT/CN2021/128486 patent/WO2022095906A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103157282A (zh) * | 2011-12-15 | 2013-06-19 | 宏碁股份有限公司 | 进行触控游戏的方法及相关娱乐系统 |
CN103272382A (zh) * | 2013-05-23 | 2013-09-04 | 深圳市时讯互联科技有限公司 | 蓝牙游戏手柄模拟智能终端触摸屏控制游戏的方法及装置 |
CN105320297A (zh) * | 2015-11-16 | 2016-02-10 | 海信集团有限公司 | 一种终端设备的控制方法和装置 |
CN108924614A (zh) * | 2018-06-01 | 2018-11-30 | 联想(北京)有限公司 | 一种控制方法、控制系统及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2022095906A1 (zh) | 2022-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112130742B (zh) | 一种移动终端的全屏显示方法及设备 | |
CN109814766B (zh) | 一种应用显示方法及电子设备 | |
CN113645351B (zh) | 应用界面交互方法、电子设备和计算机可读存储介质 | |
CN109559270B (zh) | 一种图像处理方法及电子设备 | |
JP2022512715A (ja) | 写真撮影シナリオおよび電子デバイスで画像を表示するための方法 | |
CN114650363B (zh) | 一种图像显示的方法及电子设备 | |
WO2021013132A1 (zh) | 输入方法及电子设备 | |
CN110138999B (zh) | 一种用于移动终端的证件扫描方法及装置 | |
CN113542580B (zh) | 去除眼镜光斑的方法、装置及电子设备 | |
CN114089932B (zh) | 多屏显示方法、装置、终端设备及存储介质 | |
CN112150499B (zh) | 图像处理方法及相关装置 | |
CN112930533A (zh) | 一种电子设备的控制方法及电子设备 | |
CN110286975B (zh) | 一种前景元素的显示方法和电子设备 | |
WO2022095906A1 (zh) | 一种按键映射方法、电子设备及系统 | |
CN116048831B (zh) | 一种目标信号处理方法和电子设备 | |
CN116048217B (zh) | 一种电子设备运行方法、装置和电子设备 | |
CN113610943B (zh) | 图标圆角化的处理方法及装置 | |
CN115032640A (zh) | 手势识别方法和终端设备 | |
CN116527266A (zh) | 数据归集方法及相关设备 | |
CN116301483A (zh) | 一种应用卡片的管理方法、电子设备和存储介质 | |
CN114079725A (zh) | 视频防抖方法、终端设备和计算机可读存储介质 | |
CN116703741B (zh) | 一种图像对比度的生成方法、装置和电子设备 | |
CN114942741B (zh) | 数据传输方法及电子设备 | |
CN115619628A (zh) | 图像处理方法和终端设备 | |
CN118474522A (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 |