CN114407796A - 车载终端的控制方法、装置、设备及存储介质 - Google Patents

车载终端的控制方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114407796A
CN114407796A CN202210070015.XA CN202210070015A CN114407796A CN 114407796 A CN114407796 A CN 114407796A CN 202210070015 A CN202210070015 A CN 202210070015A CN 114407796 A CN114407796 A CN 114407796A
Authority
CN
China
Prior art keywords
component
target
applet
touch
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210070015.XA
Other languages
English (en)
Inventor
江守鑫
胡灿
李红波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210070015.XA priority Critical patent/CN114407796A/zh
Publication of CN114407796A publication Critical patent/CN114407796A/zh
Priority to PCT/CN2022/131057 priority patent/WO2023138183A1/zh
Priority to US18/455,583 priority patent/US20230406227A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R11/02Arrangements for holding or mounting articles, not otherwise provided for for radio sets, television sets, telephones, or the like; Arrangement of controls thereof
    • B60R11/0264Arrangements for holding or mounting articles, not otherwise provided for for radio sets, television sets, telephones, or the like; Arrangement of controls thereof for control means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R11/02Arrangements for holding or mounting articles, not otherwise provided for for radio sets, television sets, telephones, or the like; Arrangement of controls thereof
    • B60R11/0229Arrangements for holding or mounting articles, not otherwise provided for for radio sets, television sets, telephones, or the like; Arrangement of controls thereof for displays, e.g. cathodic tubes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0362Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 1D translations or rotations of an operating part of the device, e.g. scroll wheels, sliders, knobs, rollers or belts
    • 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
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • 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
    • 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/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/0489Interaction 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 dedicated keyboard keys or combinations thereof
    • 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/0489Interaction 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 dedicated keyboard keys or combinations thereof
    • G06F3/04892Arrangements for controlling cursor position based on codes indicative of cursor displacements from one discrete location to another, e.g. using cursor control keys associated to different directions or using the tab key
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R11/00Arrangements for holding or mounting articles, not otherwise provided for
    • B60R2011/0001Arrangements for holding or mounting articles, not otherwise provided for characterised by position
    • B60R2011/0003Arrangements for holding or mounting articles, not otherwise provided for characterised by position inside the vehicle
    • B60R2011/0007Mid-console

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)
  • Mechanical Engineering (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请公开了一种车载终端的控制方法、装置、设备及存储介质,属于车载中控领域。该方法包括:显示小程序的小程序界面,小程序界面包括至少两个组件;响应于硬件外设上的物理控制操作,控制小程序界面中的至少两个组件中的第一目标组件执行目标事件;响应于触摸屏上的触摸操作,控制小程序界面中的至少两个组件中的第二目标组件执行目标事件。本申请通过采用如物理旋钮、物理拨钮和硬件按钮等硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法。

Description

车载终端的控制方法、装置、设备及存储介质
技术领域
本申请涉及车载中控领域,特别涉及一种车载终端的控制方法、装置、设备及存储介质。
背景技术
随着智能驾驶和5G网络的发展,车载终端的功能越来越多样化和智能化,车载终端上可以运行小程序。
小程序是依赖于小程序引擎运行的程序。当车载终端支持小程序引擎后,该小程序引擎可以支持一个或多个小程序的运行。由于小程序在设计之初,都是针对智能手机的触摸屏使用场景来设计的,因此车载终端上的小程序也采用基于触摸屏的人机交互方式。
但是由于用户在驾驶过程中,使用触摸屏控制车载终端会导致视线聚焦在车载终端的触摸屏上,引发不安全隐患,因此亟待提供一种较为安全的小程序控制方法。
发明内容
本申请提供了一种车载终端的控制方法、装置、设备及存储介质,所述技术方案如下:
根据本申请的一方面,提供了一种车载终端的控制方法,所述车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序,所述方法包括:
显示所述小程序的小程序界面,所述小程序界面包括至少两个组件;
响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件;
响应于所述触摸屏上的触摸操作,控制所述小程序界面中的所述至少两个组件中的第二目标组件执行所述目标事件。
在申请的一个可选设计中,所述响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件,还包括:
响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第一类型控制操作之前处于所述焦点状态的组件。
在申请的一个可选设计中,所述方法还包括:
获取所述小程序界面对应的文档对象模型DOM树中目标节点,所述目标节点包括事件节点和焦点节点,所述事件节点是具有响应所述物理控制操作和/或触摸操作功能的组件所对应的节点,所述焦点节点是处于焦点状态的焦点组件所对应的节点;
所述响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,包括:
响应于所述硬件外设上的第一类型控制操作,读取所述焦点组件对应的第一焦点索引;
基于所述第一类型控制操作的操作方向将所述第一焦点索引进行更新,得到第二焦点索引;
确定所述第二焦点索引对应的所述第一目标组件;控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在申请的一个可选设计中,所述基于所述第一类型控制操作的操作方向将所述第一焦点索引进行更新,得到第二焦点索引,包括:
在所述第一类型控制操作的操作方向是第一方向的情况下,将所述第一焦点索引加一,得到所述第二焦点索引;
在所述第一类型控制操作的操作方向是第二方向的情况下,将所述第一焦点索引减一,得到所述第二焦点索引。
在申请的一个可选设计中,所述响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件,还包括:
响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第二类型控制操作之前处于所述焦点状态的组件。
在申请的一个可选设计中,所述响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,包括:
响应于所述硬件外设上的第二类型控制操作,读取所述焦点组件对应的第一层级索引;
基于所述第二类型控制操作的操作方向将所述第一层级索引进行更新,得到第二层级索引的情况下;确定所述第二层级索引对应的所述第一目标组件;
控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在申请的一个可选设计中,所述小程序界面还显示有原生标签,所述原生标签是所述小程序引擎提供的;所述方法还包括:
在未能成功更新得到所述第二层级索引的情况下,控制所述焦点组件失去所述焦点状态,以及控制所述焦点组件对应的所述原生标签处于所述焦点状态。
在申请的一个可选设计中,所述基于所述第二类型控制操作的操作方向将所述第一层级索引进行更新,得到第二层级索引,包括:
在所述第二类型控制操作的操作方向是第三方向的情况下,将所述第一层级索引加一,得到所述第二层级索引;
在所述第二类型控制操作的操作方向是第四方向的情况下,将所述第一层级索引减一,得到所述第二层级索引。根据本申请的另一方面,提供了一种车载终端的控制装置,所述车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序,所述装置包括:
显示模块,用于显示所述小程序的小程序界面,所述小程序界面包括至少两个组件;
控制模块,用于响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件;
所述控制模块,还用于响应于所述触摸屏上的触摸操作,控制所述小程序界面中的所述至少两个组件中的第二目标组件执行所述目标事件。
在申请的一个可选设计中,所述控制模块,包括:
处理单元,用于响应于所述硬件外设上的确认操作,生成第一触摸点击事件,所述第一触摸点击事件中的触摸坐标属于处于焦点状态的所述第一目标组件的坐标范围;
传递单元,用于向所述小程序传递所述第一触摸点击事件,所述第一触摸点击事件用于触发所述小程序控制所述第一目标组件执行响应事件。
在申请的一个可选设计中,所述处理单元还用于:
响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围中的第一参考点,生成第一触摸坐标;
在所述第一目标组件不包括子组件的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件。
在申请的一个可选设计中,所述处理单元还用于:
响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围内部的第一参考点,生成第一触摸坐标;
在所述第一目标组件包括子组件且所述第一触摸坐标不属于所述子组件的坐标范围的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件;
或,
在所述第一目标组件包括子组件且所述第一触摸坐标属于所述子组件的坐标范围的情况下,基于所述子组件的坐标范围重新生成第二触摸坐标;基于所述第二触摸坐标生成所述第一触摸点击事件。
在申请的一个可选设计中,所述处理单元还用于:
基于所述子组件的坐标范围和所述第一目标组件的坐标范围确定所述子组件的第一边界和所述第一目标组件的第二边界;
确定属于所述子组件的第一边界和所述第一目标组件的第二边界之间的第二参考点,基于所述第二参考点生成所述第二触摸坐标。
在申请的一个可选设计中,所述处理单元还用于:
响应于所述硬件外设上的确认操作,获取所述第一目标组件的坐标范围,以及所述第一目标组件中的子组件的坐标范围;
确定属于所述第一目标组件的坐标范围之内且属于所述子组件的坐标范围之外的第三参考点;
基于所述第三参考点生成第三触摸坐标,基于所述第三触摸坐标生成所述第一触摸点击事件。
在申请的一个可选设计中,所述控制模块还用于:
响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第一类型控制操作之前处于所述焦点状态的组件。
在申请的一个可选设计中,所述装置还包括:
获取模块,用于获取所述小程序界面对应的文档对象模型DOM树中目标节点,所述目标节点包括事件节点和焦点节点,所述事件节点是具有响应所述物理控制操作和/或触摸操作功能的组件所对应的节点,所述焦点节点是处于焦点状态的焦点组件所对应的节点;
所述控制模块还用于:
响应于所述硬件外设上的第一类型控制操作,读取所述焦点组件对应的第一焦点索引;
基于所述第一类型控制操作的操作方向将所述第一焦点索引进行更新,得到第二焦点索引;
确定所述第二焦点索引对应的所述第一目标组件;控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在申请的一个可选设计中,所述控制模块还用于:
在所述第一目标组件不包括子组件且所述第一目标组件未完全显示在所述小程序界面中的情况下,基于所述第一类型控制操作的操作方向,在所述小程序界面上控制所述第一目标组件进行滚动显示。
在申请的一个可选设计中,所述控制模块还用于:
在所述第一类型控制操作的操作方向是第一方向的情况下,将所述第一焦点索引加一,得到所述第二焦点索引;
在所述第一类型控制操作的操作方向是第二方向的情况下,将所述第一焦点索引减一,得到所述第二焦点索引。
在申请的一个可选设计中,所述获取模块还用于:
在所述小程序界面的全部节点中筛选所述事件节点;
在所述事件节点中确定所述焦点节点;
获取所述事件节点和所述焦点节点的节点状态;以及根据所述节点状态的变化更新所述焦点节点。
在申请的一个可选设计中,所述获取模块还用于:
在所述小程序界面的全部节点中根据筛选条件筛选所述事件节点;
其中,所述筛选条件包括如下至少之一:
注册有事件响应装置的节点;
统一资源定位系统URL不为空的页面导航节点;
输入节点;
滚动视图节点。
在申请的一个可选设计中,所述控制模块还用于:
响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第二类型控制操作之前处于所述焦点状态的组件。
在申请的一个可选设计中,所述控制模块还用于:
响应于所述硬件外设上的第二类型控制操作,读取所述焦点组件对应的第一层级索引;
基于所述第二类型控制操作的操作方向将所述第一层级索引进行更新,得到第二层级索引的情况下;确定所述第二层级索引对应的所述第一目标组件;
控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在申请的一个可选设计中,在所述第一层级索引与所述第二层级索引存在所属关系的情况下,所述第一目标组件是所述第二层级索引对应的且与所述焦点组件具有所属关系的组件;
在所述第一层级索引与所述第二层级索引未存在所属关系的情况下,所述第一目标组件是所述第二层级索引对应的首个组件。
在申请的一个可选设计中,所述小程序界面还显示有原生标签,所述原生标签是所述小程序引擎提供的;所述控制模块还用于:
在未能成功更新得到所述第二层级索引的情况下,控制所述焦点组件失去所述焦点状态,以及控制所述焦点组件对应的所述原生标签处于所述焦点状态。
在申请的一个可选设计中,所述控制模块还用于:
在所述第二类型控制操作的操作方向是第三方向的情况下,将所述第一层级索引加一,得到所述第二层级索引;
在所述第二类型控制操作的操作方向是第四方向的情况下,将所述第一层级索引减一,得到所述第二层级索引。
在申请的一个可选设计中,所述控制模块还用于:
响应于所述硬件外设上的第三类型控制操作,控制返回所述小程序界面的上层界面,或关闭所述小程序界面,或关闭所述小程序界面上的弹窗。
在申请的一个可选设计中,所述控制模块还用于:
响应于所述硬件外设上的第三类型控制操作,生成第二触摸点击事件;向所述小程序传递所述第二触摸点击事件,所述第二触摸点击事件用于触发所述小程序对所述弹窗对应的节点添加数据关闭弹出属性,以使得所述弹窗关闭显示。
根据本申请的另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上方面所述的车载终端的控制方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上方面所述的车载终端的控制方法。
根据本申请的另一方面,提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现上述如上方面所述的车载终端的控制方法。
本申请提供的技术方案带来的有益效果至少包括:
通过采用如物理旋钮、物理拨钮和硬件按钮等硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;无需小程序的开发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的车载终端的结构框图;
图2是本申请一个示例性实施例提供的基于车载终端的小程序控制方法的场景示意图;
图3是本申请一个示例性实施例提供的车载终端控制的示意图;
图4是本申请一个示例性实施例提供的车载终端控制的示意图;
图5是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图6是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图7是本申请一个示例性实施例提供的一个音乐播放组件的示意图;
图8是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图9是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图10是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图11是本申请一个示例性实施例提供的一个小程序界面的示意图;
图12是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图13是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图14是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图15是本申请一个示例性实施例提供的一个小程序界面的示意图;
图16是本申请一个示例性实施例提供的一个小程序界面的示意图;
图17是本申请一个示例性实施例提供的车载终端的控制方法的流程图;
图18是本申请一个示例性实施例提供的车载终端的控制装置的结构框图;
图19是本申请一个示例性实施例提供的车载终端的框图;
图20是本申请一个示例性实施例提供的车载终端的框图。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一参数也可以被称为第二参数,类似地,第二参数也可以被称为第一参数。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1示出了本申请一个示例性实施例提供的车载终端100的结构框图。该车载终端100包括:至少一个处理器210、存储器250、至少一个网络接口220和用户接口230。服务器200中的各个组件通过总线系统240耦合在一起。可理解,总线系统240用于实现这些组件之间的连接通信。总线系统240除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图1中将各种总线都标为总线系统240。
处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口230包括使得能够呈现媒体内容的一个或多个输出装置。典型的,输出装置包括:触摸屏231和硬件外设232。硬件外设232包括:硬件旋钮、硬件拨钮、硬件触摸板和硬件按钮中的至少一种。在一个示例中,硬件外设232包括:用于触发选择操作的硬件旋钮、用于触发确认操作的确认按钮以及用于触发后退操作的后退按钮。用于触发选择操作的硬件旋钮,也可替代实现为硬件拨钮或硬件触摸板。在一些示例中,存在支持多种控制功能的中控台按钮,该中控台按钮同时支持旋转控制、拨钮控制、触摸板控制和按钮控制中的至少一种。可选地,硬件外设232是指非触摸屏的输入外设,或者说,采用物理输入形式的输入外设,或者说,采用机械式输入或机电式输入的输入外设。其中,机电式输入是指机械和电气结合的输入形式,也称半机械式;硬件外设232也称物理控制器件。
存储器250可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器250可选地包括在物理位置上远离处理器210的一个或多个存储设备。
存储器250包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器250旨在包括任意适合类型的存储器。
在一些实施例中,存储器250能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统251,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。该操作系统251可以是各种车机操作系统,车机操作系统的具体类型不加以限定。
在操作系统251中运行有小程序引擎252。小程序引擎252用于提供小程序的运行环境,在小程序引擎252中运行有一个或多个小程序,比如小程序1和小程序2。不论是何种车机操作系统,只要该车机操作系统中运行有小程序引擎252,小程序都可以依赖于小程序引擎252运行。
接下来,对车载终端的控制方法进行介绍:
图2是本申请一个实施例提供的基于车载终端的小程序控制方法的场景示意图;在本部分将重点对使用车载终端中的硬件外设对小程序实现控制的过程进行示例性介绍;
车载终端具有触摸屏231和硬件外设232;在本实施例中,触摸屏231显示有小程序界面,小程序界面中包括热门视频显示区域910、热门新闻显示区域920;其中,热门视频显示区域910中包括以下组件:演唱会现场视频组件912、歌手采访视频组件914和朗诵视频组件916;热门新闻显示区域920中包括以下组件:北方城市降温新闻组件922、第一超市降价新闻组件924和A学校开学通知组件926。
硬件外设232包括:纵向拨动按钮930、横向拨动按钮940和旋转点击按钮950。
在本申请中,响应于硬件外设上的物理控制操作,控制小程序界面中的第一目标组件执行目标事件;
对于上述车载终端的控制过程至少包括如下四种基于硬件外设的人机交互方式:
基于硬件外设的人机交互方式一:响应于对硬件外设的确认操作,控制第一目标组件执行响应事件。该确认操作可以是点击旋转点击按钮950操作。
基于硬件外设的人机交互方式二:响应于对硬件外设的第一类型控制操作,对处于焦点状态的焦点组件进行切换,控制上一个或下一个组件(第一目标组件)处于焦点状态。该第一类型控制操作可以是拨动横向拨动按钮940操作。
基于硬件外设的人机交互方式三:响应于对硬件外设的第二类型控制操作,对处于焦点状态的焦点组件的层级进行切换,控制上一层级或下一层级的组件(第一目标组件)处于焦点状态。该第二类型控制操作可以是拨动纵向拨动按钮930操作。
基于硬件外设的人机交互方式四:响应于对硬件外设的第三类型控制操作,控制返回小程序界面的上层界面,或关闭小程序界面,或关闭小程序界面上的弹窗。该第三类型控制操作可以是逆时针转动旋转点击按钮950操作。
接下来将结合图2中的触摸屏231和硬件外设232,对通过四种基于硬件外设的人机交互方式实现车载终端的控制进行介绍;需要在前说明的是,以下介绍均为示例性的描述不构成对本申请的限定;本领域技术人员可以理解,触摸屏231中可以显示不同于图2所示的小程序界面,硬件外设232中可以包括更多或更少的按钮等硬件。
基于硬件外设的人机交互方式一:响应于对硬件外设的确认操作,控制第一目标组件执行响应事件。
示例性的,硬件外设的确认操作为点击旋转点击按钮950;响应于对硬件外设的确认操作,控制第一目标组件执行响应事件;当第一目标组件是朗诵视频组件916的情况下,执行播放朗诵视频的响应事件。
基于硬件外设的人机交互方式二:响应于对硬件外设的第一类型控制操作,对处于焦点状态的焦点组件进行切换,控制上一个或下一个组件(第一目标组件)处于焦点状态。
示例性的,硬件外设的第一类型控制操作为拨动横向拨动按钮940;
当歌手采访视频组件914处于焦点状态的情况下,响应于向右拨动横向拨动按钮940,歌手采访视频组件914失去焦点状态,歌手采访视频组件914的下一个组件,即朗诵视频组件916处于焦点状态;实现对组件进行切换。
基于硬件外设的人机交互方式三:响应于对硬件外设的第二类型控制操作,对处于焦点状态的焦点组件的层级进行切换,控制上一层级或下一层级的组件(第一目标组件)处于焦点状态。
示例性的,硬件外设的第二类型控制操作为拨动纵向拨动按钮930;
热门视频显示区域910中包括的组件的层级为一层级,热门新闻显示区域920中包括的组件的层级为二层级;
当朗诵视频组件916处于焦点状态的情况下,响应于向下拨动纵向拨动按钮930,朗诵视频组件916失去焦点状态,组件从一层级切换为二层级,在组件层级为二层级的三个组件中第一个组件北方城市降温新闻组件922处于焦点状态;实现对组件的层级进行切换。
基于硬件外设的人机交互方式四:响应于对硬件外设的第三类型控制操作,控制返回小程序界面的上层界面,或关闭小程序界面,或关闭小程序界面上的弹窗。
示例性的,硬件外设的第三类型控制操作为逆时针转动旋转点击按钮950;
在小程序页面逆时针转动旋转点击按钮950,控制返回到小程序界面的上层界面。
综上所述,本实施例提供的方法,通过采用如物理旋钮、物理拨钮和硬件按钮等硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;为触摸确认事件、触摸切换事件、触摸层级切换事件和触摸关闭事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
对于实现车载终端的控制过程,将通过以下两个示意图进行介绍;
图3示出了本申请一个示例性实施例提供的车载终端控制的示意图。
车载终端的硬件外设310将硬件事件340发送至脚本程序320;示例性的,硬件事件340是基于静态库(Protobuf)协议传递的,脚本程序320用于实现与小程序330的沟通,以响应在硬件外设310上触发的硬件事件340;硬件外设310是智能驾驶控制系统核心控制装置(Zentrales Bedienelement iDrive Controller,ZBE)。硬件事件340可以但不限于在小程序上响应为点击、移动、选中中的至少一种。
脚本程序320根据硬件事件340向小程序330发送指示信息350;指示信息350用于控制小程序界面的目标组件执行目标事件;小程序界面中的组件对应有小程序330的节点。
在一种可选的情况下,小程序330向脚本程序320发送节点信息360,即脚本程序320根据硬件事件340和节点信息360向小程序330发送指示信息350;
可选的,如图4所示,在一种可选设计中,硬件外设310将硬件事件340发送至服务进程370,服务进程370将硬件事件340分发至小程序330,由小程序330向脚本程序320发送硬件事件340;
服务进程370是由车载操作系统提供的用于分发硬件外设310的硬件事件340的大众服务(Moss Service)进程;小程序330中包括小部件(Widget)332和页面视图(PageWebview)334。小部件332用于实现小程序330的页面显示;页面视图334用于实现与脚本程序320的信息沟通,示例性的,页面视图334向脚本程序320发送节点信息360和硬件事件340是通过建立在小程序引擎上的评价Java语言(Evaluate JavaScript)发送的;脚本程序320向页面视图334发送指示信息350是通过建立在小程序引擎上的Java桥(JavaScriptBridge)发送的。
以下将对本申请中的车载终端的控制方法进行具体介绍:
图5示出了本申请一个车载终端的控制方法的流程图。该方法可以由车载终端执行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。该方法包括:
步骤510:显示小程序的小程序界面;
车载终端上运行有一个或多个小程序。小程序页面是小程序运行时的用户界面。示例性的,小程序是基于web架构的,因此小程序页面通常是一个网页类页面。该小程序界面包括至少两个组件。组件包括但不限于:视图(View)、文本(Text)、图片(Image)、媒体(Media)、滑块(Swiper)视图、可滚动视图(Scroll-View)、表单、导航、地图、画布中的至少一种。
小程序是依赖于宿主程序运行的一种程序。小程序可以是web类应用。
步骤520:响应于硬件外设上的物理控制操作,控制小程序界面中的至少两个组件中的第一目标组件执行目标事件;
示例性的,硬件外设包括但不限于硬件旋钮、硬件拨钮、硬件触摸板和硬件按钮中的至少一种;也可以将上述四种硬件进行组合,得到新的硬件。如上文中示出的旋转点击按钮,即将硬件旋钮和硬件按钮进行了组合,针对旋转点击按钮既可以支持旋转操作,也可以支持按压操作;
具体的,硬件外设中具有控制功能的硬件外设包括:硬件旋钮、硬件拨钮和硬件触摸板中的至少一种。
在硬件外设包括硬件旋钮的情况下,硬件旋钮支持逆时针旋转操作和顺时针旋转操作。在硬件外设包括硬件拨钮的情况下,硬件拨钮支持上、下、左和右中的至少两个方向的拨动操作。在硬件外设包括硬件触摸板的情况下,硬件触摸板支持上、下、左和右中的至少两个方向的触摸操作。
具体的,硬件外设中具有确认功能的硬件外设包括:硬件按钮。示意性的,硬件按钮支持确认操作。
在硬件外设包括硬件按钮的情况下,硬件按钮支持按压操作。
示例性的,第一目标组件执行的目标事件包括但不限于如下至少之一:执行响应事件、处于焦点状态、失去焦点状态、滚动显示、关闭显示。
步骤530:响应于触摸屏上的触摸操作,控制小程序界面中的至少两个组件中的第二目标组件执行目标事件;
示例性的,触摸屏上的触摸操作包括但不限于如下至少之一:滑动、点击落下、点击抬起。
需要说明的是,在本申请中步骤520可以在步骤530的之前、之后或同时执行,本申请对此不作出任何限制性规定,即可以先通过触摸操作对车载终端进行控制,也可以先通过物理控制操作对车载终端进行控制,也可以同时使用上述两种操作方法。
综上所述,本实施例提供的方法,通过采用如物理旋钮、物理拨钮和硬件按钮等硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;无需小程序的开发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
参考上文中的车载终端的控制过程的四种基于硬件外设的人机交互方式,将通过以下实施例对车载终端的控制方法进行介绍:
对应于车载终端的控制过程的基于硬件外设的人机交互方式一,图6示出了本申请一个车载终端的控制方法的流程图。该方法可以由车载终端执行;具体的,该方法也可以由车载终端中的脚本程序运行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。即在本申请的一个可选设计中,步骤520可以实现为如下步骤:
步骤521:响应于硬件外设上的确认操作,生成第一触摸点击事件;
第一触摸点击事件用于控制焦点组件执行响应事件,焦点组件是在接收到确认操作之前处于焦点状态的组件,焦点组件对应有焦点节点。
第一触摸点击事件中的触摸坐标属于处于焦点状态的第一目标组件的坐标范围;在本实施例中,第一组件的坐标范围通常为矩形,但也不排除坐标范围为圆形、椭圆形、扇形或其他多边形的情况。
步骤522:向小程序传递第一触摸点击事件;
第一触摸点击事件用于触发小程序控制第一目标组件执行响应事件。示例性的,响应事件包括但不限于如下至少之一:返回小程序界面的上层界面、跳转至小程序界面的下层界面、跳转至小程序界面中的第一位置、跳转至第一网址、执行第一目标组件对应的功能;
示例性的,在第一目标组件为视频暂停组件的情况下,执行响应事件为暂停视频播放;在第一目标组件为返回组件的情况下,执行响应事件为返回小程序界面的上层界面;在第一目标组件为A网站的网址链接的情况下,执行响应事件为跳转至A网站。
在本实施例的一个可选设计中,步骤521至少存在如下三种实现方式:
实现方式一:响应于硬件外设上的确认操作,基于第一目标组件的坐标范围中的第一参考点,生成第一触摸坐标;
在第一目标组件不包括子组件的情况下,基于第一触摸坐标生成第一触摸点击事件。
示例性的,第一参考点是第一目标组件的坐标范围中的参考点;优选的,第一参考点是第一目标组件的坐标范围中的中心点。基于第一触摸坐标生成第一触摸点击事件,即通过模拟点击第一触摸点,控制第一目标组件执行响应事件。
实现方式二:响应于硬件外设上的确认操作,基于第一目标组件的坐标范围内部的第一参考点,生成第一触摸坐标;
在第一目标组件包括子组件且第一触摸坐标不属于子组件的坐标范围的情况下,基于第一触摸坐标生成第一触摸点击事件;
或,在第一目标组件包括子组件且第一触摸坐标属于子组件的坐标范围的情况下,基于子组件的坐标范围重新生成第二触摸坐标;基于第二触摸坐标生成第一触摸点击事件。
图7示出了本申请一个音乐播放组件的示意图;音乐播放组件1020具有三个子组件:播放上一首组件1020a、开始播放组件1020b和播放下一首组件1020c;在音乐播放组件1020处于焦点状态的情况下响应于硬件外设上的确认操作,控制音乐播放组件1020执行打开音乐播放界面的响应事件。
在生成的第一触摸坐标不属于子组件的坐标范围的情况下,不会导致错误地控制播放上一首组件1020a、开始播放组件1020b或播放下一首组件1020c执行播放上一首、开始播放或播放下一首的响应事件。可以基于第一触摸坐标生成第一触摸点击事件;
而在生成的第一触摸坐标属于子组件的坐标范围的情况下,会导致错误地控制播放上一首组件1020a、开始播放组件1020b或播放下一首组件1020c执行播放上一首、开始播放或播放下一首的响应事件;需要基于子组件的坐标范围重新生成第二触摸坐标;基于第二触摸坐标生成第一触摸点击事件。
具体的,基于子组件的坐标范围重新生成第二触摸坐标可以实现为:
基于子组件的坐标范围和第一目标组件的坐标范围确定子组件的第一边界和第一目标组件的第二边界;
确定属于子组件的第一边界和第一目标组件的第二边界之间的第二参考点,基于第二参考点生成第二触摸坐标。
示例性的,子组件的第一边界是子组件的最左侧边坐标,第一目标组件的第二边界是第一目标组件的最左侧边坐标;第二参考点位于子组件的第一边界和第一目标组件的第二边界之间,可以保证第二参考点位于第一目标组件的坐标范围内且避免第二参考点位于子组件的坐标范围内。
实现方式三:响应于硬件外设上的确认操作,获取第一目标组件的坐标范围,以及第一目标组件中的子组件的坐标范围;
确定属于第一目标组件的坐标范围之内且属于子组件的坐标范围之外的第三参考点;
基于第三参考点生成第三触摸坐标,基于第三触摸坐标生成第一触摸点击事件。
在第一目标组件包括子组件的情况下先确定第一目标组件的坐标范围之内且属于子组件的坐标范围之外的第三参考点,并直接基于第三参考点生成第三触摸坐标;示例性的,将第一目标组件的坐标范围中最靠近坐标原点的坐标点与子组件的坐标范围中最靠近坐标原点的坐标点进行连线,将上述连线的中点确定第三参考点。
综上所述,本实施例提供的方法,通过硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;通过响应于硬件外设上的确认操作,控制第一目标组件执行响应事件,为触摸确认事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
图8示出了本申请一个车载终端的控制方法的流程图,该方法可以由车载终端执行;具体的,该方法也可以由车载终端中的脚本程序运行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。该方法包括:
步骤602:脚本程序获取确认事件;
确认事件是基于硬件外设上的确认操作生成的事件,用于指示硬件外设上触发有确认操作。
步骤604:脚本程序确定第一目标组件;
第一目标组件是处于焦点状态的组件,即在硬件外设上执行确认操作时,处于焦点状态的第一目标组件执行响应事件;
步骤606:脚本程序确定第一目标组件的第一参考点;
第一参考点用于生成对应的触摸点击事件,触摸点击事件控制处于焦点状态的第一目标组件执行响应事件;
示例性的,第一参考点是根据第一目标组件的坐标范围确定的,第一参考点在第一目标组件的坐标范围内。
步骤608:脚本程序判断第一目标组件是否存在子组件;
示例性的,子组件的坐标范围位于第一目标组件的坐标范围内,但不排除部分子组件的坐标范围超出第一目标组件的坐标范围的情况。
在第一目标组件存在子组件的情况下,执行步骤610;
在第一目标组件不存在子组件的情况下,执行步骤612;
步骤610:脚本程序判断第一参考点是否为子组件位置;
示例性的,在第一目标组件存在子组件的情况下,判断第一参考点是否位于子组件的坐标范围内;
在第一参考点为子组件位置的情况下,执行步骤614;
在第一参考点不为子组件位置的情况下,执行步骤612;
步骤612:在第一目标组件不存在子组件的情况下,或在第一目标组件存在子组件且第一参考点不为子组件位置的情况下;脚本程序以第一参考点响应确认事件;
经过上述步骤608、步骤610的判断,在第一目标组件不存在子组件的情况下,或在第一目标组件存在子组件且第一参考点不为子组件位置的情况下,不会错误的发生触发子组件的情况,基于第一参考点生成触摸点击事件,通过触摸点击事件控制处于焦点状态的第一目标组件执行响应事件。
步骤614:在第一目标组件存在子组件且第一参考点为子组件位置的情况下,脚本程序确定第一目标组件的第二参考点;
经过上述步骤608、步骤610的判断,在第一目标组件存在子组件且第一参考点为子组件位置的情况下,会错误的发生触发子组件的情况;需要重新确定第二参考点;
第二参考点是基于第一目标组件的坐标范围和子组件的坐标范围确定的,第二参考点位于第一目标组件的坐标范围内且位于子组件的坐标范围外;
步骤616:脚本程序以第二参考点响应确认事件;
基于第二参考点生成触摸点击事件,避免错误触发子组件执行响应事件;控制处于焦点状态的第一目标组件执行响应事件。
综上所述,本实施例提供的方法,通过硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;通过响应于硬件外设上的确认操作,控制第一目标组件执行响应事件,为触摸确认事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
对应于车载终端的控制过程的基于硬件外设的人机交互方式二,图9示出了本申请一个车载终端的控制方法的流程图。该方法可以由车载终端执行;具体的,该方法也可以由车载终端中的脚本程序运行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。即在本申请的一个可选设计中,步骤520可以实现为如下步骤:
步骤523:响应于硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制小程序界面中排序在焦点组件之前或之后的第一目标组件处于焦点状态;
焦点组件是在接收到第一类型控制操作之前处于焦点状态的组件;示例性的,处于焦点状态的第一目标组件通过高亮方式显示在小程序界面上。
关于步骤523对应的在小程序界面上的显示情况,可以参考上文中图2示出的场景示意图中的基于硬件外设的人机交互方式二。
在本实施例的一个可选设计中,如图10所示,在图9示出的实施例的基础上还可以包括步骤524,步骤523可以实现为步骤523a、步骤523b和步骤523c:
步骤524:获取小程序界面对应的文档对象模型(Document Object Model,DOM)树中目标节点;
目标节点包括事件节点和焦点节点,事件节点是具有响应物理控制操作和/或触摸操作功能的组件所对应的节点,焦点节点是处于焦点状态的焦点组件所对应的节点;示例性的,焦点节点通常是事件节点中的一个,但也不排除存在焦点节点是事件节点之外的节点的情况;
需要说明的是,在本实施例中对步骤524和第一分支之间的执行顺序不作出任何限制,即步骤524可以在第一分支中的任一步骤的之前、之后或同时执行,第一分支包括步骤523a、步骤523b和步骤523c。
步骤523a:响应于硬件外设上的第一类型控制操作,读取焦点组件对应的第一焦点索引;
第一焦点索引用于指示焦点组件的索引信息;示例性的,第一焦点索引是根据焦点组件对应的焦点节点在小程序中的节点位置确定的;
步骤523b:基于第一类型控制操作的操作方向将第一焦点索引进行更新,得到第二焦点索引;
示例性的,第二焦点索引通常是第一焦点索引的上一个或下一个焦点索引;但也不排除第二焦点索引与第一焦点索引之间存在其他相关关系的情况。
示例性的,在第一类型控制操作的操作方向是第一方向的情况下,将第一焦点索引加一,得到第二焦点索引;比如:第一类型控制操作为拨动横向拨动按钮,操作方向是第一方向为向右拨动;在向右拨动横向拨动按钮的情况下,将第一焦点索引加一,得到第二焦点索引;
在第一类型控制操作的操作方向是第二方向的情况下,将第一焦点索引减一,得到第二焦点索引;相似的,第一类型控制操作为拨动横向拨动按钮,操作方向是第一方向为向左拨动;在向左拨动横向拨动按钮的情况下,将第一焦点索引减一,得到第二焦点索引;
步骤523c:确定第二焦点索引对应的第一目标组件;控制焦点组件失去焦点状态,以及控制第一目标组件切换为焦点状态;
第二焦点索引对应有组件,将第二焦点索引对应的组件确定为第一目标组件,控制焦点组件失去焦点状态,以及控制第一目标组件切换为焦点状态。示例性的,处于焦点状态的第一目标组件通过高亮方式显示在小程序界面上。
综上所述,本实施例提供的方法,通过硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;通过响应于硬件外设上的第一类型控制操作,控制切换组件,以使得第一目标组件处于焦点状态,为触摸切换事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
接下来,在图9示出的实施例的基础上对获取目标节点的过程进行介绍,即在上述实施例的一个可选设计中,步骤524可以实现为如下子步骤:
子步骤1:在小程序界面的全部节点中筛选事件节点;
示例性的,在小程序界面的全部节点中根据筛选条件筛选事件节点;其中,筛选条件包括如下至少之一:
·注册有事件响应方法的节点;示例性的,事件响应方法包括但不限于如下至少之一:返回小程序界面的上层界面、跳转至小程序界面的下层界面、跳转至小程序界面中的第一位置、跳转至第一网址、执行第一目标组件对应的功能;
·统一资源定位系统(Uniform Resource Locator,URL)不为空的页面导航(Navigator)节点;示例性的,页面导航节点注册有跳转至URL指示的网址的事件;
·输入(Input)节点;示例性的,输入节点用于内容输入;
·滚动视图(Scroll-View)节点;示例性的,滚动视图节点用于滚动小程序界面或滚动视图节点对应的滚动组件支持滚动显示。
图11示出了本申请一个示例性实施例提供的小程序界面的示意图;小程序界面1100中包括用户信息组件1102、退出登录组件1104、我的喜欢歌曲组件1106、访问新版主页组件1108、搜索输入组件1110、搜索组件1112、第一视频覆盖图片组件1114、第二视频覆盖图片组件1116、第三视频覆盖图片组件1118、第一视频文字组件1114a、第二视频文字组件1116a和第三视频文字组件1118a;我的喜欢歌曲组件1106包括5个子组件:歌曲001组件1106a、歌曲002组件1106b、歌曲003组件1106c、歌曲004组件1106d和歌曲005组件1106e。
其中,用户信息组件1102对应的节点不符合筛选条件,退出登录组件1104对应的节点注册有退出登录的事件响应方法符合筛选条件,我的喜欢歌曲组件1106对应的节点为注册有绑定标签(Bindtap)的事件响应方法符合筛选条件,我的喜欢歌曲组件1106的子组件对应的节点为注册有隐藏标签(Cachetap)的事件响应方法符合筛选条件,访问新版主页组件1108对应的节点为URL不为空的页面导航节点,响应事件为跳转至新版主页符合筛选条件;搜索输入组件1110对应的节点为输入节点符合筛选条件,搜索组件1112对应的节点为注册有搜索歌曲的事件响应方法符合筛选条件;第一视频覆盖图片组件1114、第二视频覆盖图片组件1116、第三视频覆盖图片组件1118对应的节点为视频覆盖绑定的图片节点(Video-Cover-Play-Button Img节点)注册有播放视频的事件响应方法符合筛选条件;第一视频文字组件1114a、第二视频文字组件1116a和第三视频文字组件1118a仅为第一视频至第三视频的文字介绍,不符合筛选条件。
子步骤2:在事件节点中确定焦点节点;
示例性的,在事件节点中根据硬件外设上的第一类型控制操作确定焦点节点;
子步骤3:获取事件节点和焦点节点的节点状态;以及根据节点状态的变化更新焦点节点;
在节点状态发生变化情况下,更新焦点节点;比如:在焦点组件失去焦点状态,以及第一目标组件处于焦点状态的情况下,更新焦点节点为第一目标组件对应的节点。
接下来,在图9示出的实施例的基础上对第一目标组件进行进一步介绍,即在上述实施例的一个可选设计中,还包括如下子步骤:
在第一目标组件不包括子组件且第一目标组件未完全显示在小程序界面中的情况下,基于第一类型控制操作的操作方向,在小程序界面上控制第一目标组件进行滚动显示;
示例性的,第一目标组件为长文本组件,第一目标组件不包括自组件,且因为第一目标组件中的文字内容较多,无法在小程序界面上全部的完整显示,基于第一类型控制操作的操作方向,在小程序界面上控制第一目标组件进行滚动显示,便于展示第一目标组件的内容。
示例性的,滚动显示第一目标组件的方向是基于第一类型控制操作的操作方向确定的;如:在第一类型控制操作的操作方向为第一方向的情况下,向下滚动显示第一目标组件;在第一类型控制操作的操作方向为第二方向的情况下,向上滚动显示第一目标组件。
图12示出了本申请一个车载终端的控制方法的流程图,该方法可以由车载终端执行;具体的,该方法也可以由车载终端中的脚本程序运行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。该方法包括:
步骤620:脚本程序获取选择事件;
选择事件是基于硬件外设上的第一类型控制操作生成的事件,用于指示硬件外设上触发有第一类型控制操作;
步骤622:脚本程序确定焦点组件;
焦点组件是获取选择时间之前处于焦点选中状态的组件;
步骤624:脚本程序判断焦点组件是否存在小程序组件;
焦点组件不存在小程序组件的情况包括但不限于如下至少之一:焦点节点未注册有事件响应方法;焦点节点的内容为空;
在焦点组件不存在小程序组件的情况下,执行步骤626;
在焦点组件存在小程序组件的情况下,执行步骤628;
步骤626:在焦点组件不存在小程序组件的情况下,脚本程序控制原生标签组件处于焦点状态;
在焦点组件不存在小程序节点的情况下,无法对焦点组件的组件状态进行变更,控制焦点组件对应的原生标签组件处于焦点状态;
步骤628:在焦点组件存在小程序组件的情况下,脚本程序判断焦点组件是否支持滚动;
示例性的,支持滚动的焦点组件对应的节点是滚动视图(Scroll-View)节点。
在焦点组件支持滚动的情况下,执行步骤630;
在焦点组件不支持滚动的情况下,执行步骤632;
步骤630:在焦点组件支持滚动的情况下,脚本程序控制滚动显示焦点组件;
滚动显示支持滚动的焦点组件;示例性的,焦点组件的滚动方向是根据第一类型控制操作的操作方向确定的;比如:在第一类型控制操作的操作方向是第一方向的情况下,向下滚动焦点组件;在第一类型控制操作的操作方向是第二方向的情况下,向上滚动焦点组件。
步骤632:在焦点组件不支持滚动的情况下,脚本程序确定第一目标组件;
示例性的,第一目标组件通常是焦点组件之前或之后的组件;第一目标组件根据第一类型控制操作的操作方向和焦点组件的焦点索引确定的;示例性的,在第一类型控制操作的操作方向是第一方向的情况下,将第一焦点索引加一,得到第二焦点索引,第二焦点索引用于指示第一目标组件;相似的,在第一类型控制操作的操作方向是第二方向的情况下,将第一焦点索引减一,得到第二焦点索引,第二焦点索引用于指示第一目标组件。
需要说明的是,在第一类型控制操作指示对第一焦点索引进行计算得到第二焦点索引的过程中,可以存在无法得到第二焦点索引的情况;比如:第一焦点索引指示小程序界面中的最后一个组件,在第一类型控制操作指示确定后一个组件的情况下,无法得到第二焦点索引;在无法得到第二焦点索引的情况下,结束对于选择事件的处理。即保持焦点组件处于焦点状态。
步骤634:脚本程序判断第一目标组件是否完全显示在小程序界面中;
判断第一目标组件是否完全显示在小程序界面中,在第一目标组件的内容多的情况下,可以无法在小程序界面中完全显示;比如:第一目标组件是文字组件,文字组件中包括7行文字内容,在小程序界面中仅有显示5行文字内容的显示空间。
在第一目标组件完全显示在小程序界面中的情况下,执行步骤636;
在第一目标组件未完全显示在小程序界面中的情况下,执行步骤638;
步骤636:在第一目标组件完全显示在小程序界面中的情况下,脚本程序控制第一目标组件处于焦点状态;
控制第一目标组件处于焦点状态;可选的,控制焦点组件失去焦点状态;
步骤638:在第一目标组件未完全显示在小程序界面中的情况下,脚本程序判断第一目标组件存在子组件;
示例性的,子组件的坐标范围位于第一目标组件的坐标范围内,但不排除部分子组件的坐标范围超出第一目标组件的坐标范围的情况。
在第一目标组件存在子组件的情况下,执行步骤642;
在第一目标组件不存在子组件的情况下,执行步骤640;
步骤640:在第一目标组件不存在子组件的情况下,脚本程序控制滚动显示第一目标组件;
在第一目标组件不存在子组件的情况下,为了在小程序界面中完整的显示第一目标组件的内容,对第一目标组件进行滚动显示;需要说明的是,本步骤中的滚动显示是为了对第一目标组件的内容进行完整展示;上文中对滚动视图节点对应的组件进行滚动显示是组件的响应事件为执行滚动显示。
步骤642:在第一目标组件存在子组件的情况下,脚本程序控制第一子组件处于焦点状态;
第一子组件是根据第一类型控制操作的操作方向确定的;示例性的,在第一类型控制操作的操作方向是第一方向的情况下,将第一焦点索引加一,得到第二焦点索引,第一子组件是第一目标组件中的第一个子组件;在第一类型控制操作的操作方向是第二方向的情况下,将第一焦点索引减一,得到第二焦点索引,第一子组件是第一目标组件中的最后一个子组件。
步骤644:在组件的组件状态发生变化的情况下,脚本程序更新组件对应的节点信息;
在节点状态发生变化情况下,更新焦点节点;比如:在焦点组件失去焦点状态,以及第一目标组件处于焦点状态的情况下,更新焦点节点为第一目标组件对应的节点。综上所述,本实施例提供的方法,通过硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;通过响应于硬件外设上的第一类型控制操作,控制切换组件,以使得第一目标组件处于焦点状态,为触摸切换事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
对应于车载终端的控制过程的基于硬件外设的人机交互方式三,图13示出了本申请一个车载终端的控制方法的流程图。该方法可以由车载终端执行;具体的,该方法也可以由车载终端中的脚本程序运行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。即在本申请的一个可选设计中,步骤520可以实现为如下步骤:
步骤525:响应于硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制小程序界面中处于焦点组件的上一层级或下一层级的第一目标组件处于焦点状态;
焦点组件是在接收到第二类型控制操作之前处于焦点状态的组件;示例性的,处于焦点状态的第一目标组件通过高亮方式显示在小程序界面上。
关于步骤525对应的在小程序界面上的显示情况,可以参考上文中图2示出的场景示意图中的基于硬件外设的人机交互方式三。
在本实施例的一个可选设计中,如图14所示,在图13示出的实施例在步骤525可以实现为步骤525a、步骤525b和步骤525c:
步骤525a:响应于硬件外设上的第二类型控制操作,读取焦点组件对应的第一层级索引;
第一焦点层级用于指示焦点组件的层级信息;示例性的,第一层级索引是根据焦点组件对应的焦点节点在小程序中的节点层级确定的;
示例性的,组件的层级索引是通过在组件对应的节点上添加数据焦点量度(Data-Focusindex)属性得到的;组件对应的层级索引可以是在小程序设计时完成的,也可以是通过车载终端,为组件添加的;
步骤525b:基于第二类型控制操作的操作方向将第一层级索引进行更新,得到第二层级索引的情况下;确定第二层级索引对应的第一目标组件;
示例性的,第二层级索引通常是第一层级索引的上一个或下一个层级索引;但也不排除第二层级索引与第一层级索引之间存在其他相关关系的情况。
示例性的,在第二类型控制操作的操作方向是第三方向的情况下,将第一层级索引加一,得到第二层级索引;比如:第二类型控制操作为拨动纵向拨动按钮,操作方向是第三方向为向下拨动;在向下拨动纵向拨动按钮的情况下,将第一层级索引加一,得到第二层级索引;
在第二类型控制操作的操作方向是第四方向的情况下,将第一层级索引减一,得到第二层级索引;比如:第二类型控制操作为拨动纵向拨动按钮,操作方向是第四方向为向上拨动;在向上拨动纵向拨动按钮的情况下,将第一层级索引减一,得到第二层级索引;
确定第二层级索引对应的第一目标组件,第一目标节点是第二层级索引对应节点,在第二层级索引对应有多个组件的情况下,如何确定第一目标组件不做出限制,可以通过预设条件确定第一目标组件;示例性的预设条件包括但不限于如下至少之一:第一目标节点是随机确定的第二层级索引对应的节点;第一目标节点是第二层级索引对应的节点中的首个节点。
可选的,在第一层级索引与第二层级索引存在所属关系的情况下,第一目标组件是第二层级索引对应的且与焦点组件具有所属关系的组件;
图15示出了本申请一个示例性实施例提供的小程序界面的示意图;小程序界面1200中包括:历史收听列表组件1202和我的喜欢列表组件1204,历史收听列表组件1202和我的喜欢列表组件1204对应第一层级索引;我的喜欢列表组件1204包括子组件:歌曲001组件1204a、歌曲002组件1204b和歌曲003组件1204c;
在歌曲002组件1204b为焦点节点的情况下,响应于向上拨动纵向拨动按钮,控制小程序界面中处于歌曲002组件1204b的上一层级即第一层级索引中与歌曲002组件1204b具有所属关系的第一目标组件处于焦点状态,第一目标组件为我的喜欢列表组件1204。
可选的,在第一层级索引与第二层级索引未存在所属关系的情况下,第一目标组件是第二层级索引对应的首个组件。
参考上文中图2示出的场景示意图中的基于硬件外设的人机交互方式三,由于热门视频显示区域910中包括的组件与热门新闻显示区域920中包括的组件未存在所属关系,第一目标组件是第二层级索引对应的首个组件,即第一目标组件是北方城市降温新闻组件922。
可选的,在未能成功更新得到第二层级索引的情况下,控制焦点组件失去焦点状态,以及控制焦点组件对应的原生标签处于焦点状态;
其中,小程序界面还显示有原生标签,原生标签是小程序引擎提供的;示例性的,未能成功更新得到第二层级索引的情况包括但不限于如下至少之一:
焦点节点未注册有事件响应方法;
焦点节点的内容为空;
在将第一层级索引减一得到第二层级索引的情况下,第一层级索引为顶层层级;
图16示出了本申请一个示例性实施例提供的小程序界面的示意图,小程序界面1300包括标签栏显示区域1310、出行导航功能显示区域1320;
标签栏显示区域1310包括三个原生标签:爱电影标签1312、音乐馆标签1314和出行导航标签1316;出行导航标签1316的内容显示在出行导航功能显示区域1320;
出行导航功能显示区域1320包括:导航组件1322、备忘组件1324和订阅组件1326;其中,备忘组件1324仅显示违章记录,未注册有事件响应方法;导航组件1322和订阅组件1326对应的层级索引均为顶层层级;
在备忘组件1324对应的节点为焦点节点的情况下,响应于硬件外设上的第二类型控制操作,未能成功更新得到第二层级索引,控制备忘组件1324对应的原生标签出行导航标签1316处于焦点状态,控制备忘组件1324失去焦点状态。
在导航组件1322对应的节点为焦点节点且第二类型控制操作的操作方向是第四方向的情况下,将第一层级索引减一,得到第二层级索引;由于导航组件1322对应的层级索引为顶层层级,未能成功更新得到第二层级索引,控制导航组件1322对应的原生标签出行导航标签1316处于焦点状态,控制导航组件1322失去焦点状态。
步骤525c:控制焦点组件失去焦点状态,以及控制第一目标组件切换为焦点状态;
第二层级索引对应有组件,将第二层级索引对应的组件确定为第一目标组件,控制焦点组件失去焦点状态,以及控制第一目标组件切换为焦点状态。示例性的,处于焦点状态的第一目标组件通过高亮方式显示在小程序界面上。
综上所述,本实施例提供的方法,通过硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;通过响应于硬件外设上的第二类型控制操作,控制切换组件的层级,以使得第一目标组件处于焦点状态,为触摸层级切换事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
对应于车载终端的控制过程的基于硬件外设的人机交互方式四,图17示出了本申请一个车载终端的控制方法的流程图。该方法可以由车载终端执行;具体的,该方法也可以由车载终端中的脚本程序运行,该车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序。即在本申请的一个可选设计中,步骤520可以实现为如下步骤:
步骤526:响应于硬件外设上的第三类型控制操作,控制返回小程序界面的上层界面,或关闭小程序界面,或关闭小程序界面上的弹窗;
关于步骤526对应的在小程序界面上的显示情况,可以参考上文中图2示出的场景示意图中的基于硬件外设的人机交互方式四;示例性的,硬件外设的第三类型控制操作为逆时针转动旋转点击按钮;在小程序页面逆时针转动旋转点击按钮,控制返回到小程序界面的上层界面,或关闭小程序界面,或关闭小程序界面上的弹窗。
在本实施例的一个可选设计中,对于关闭小程序界面上的弹窗步骤526可以实现为如下步骤:
响应于硬件外设上的第三类型控制操作,生成第二触摸点击事件;向小程序传递第二触摸点击事件;
第二触摸点击事件用于触发小程序对弹窗对应的节点添加数据关闭弹出属性,以使得弹窗关闭显示。示例性的,小程序在小程序界面上的弹窗对应的节点添加数据关闭弹出(Data-Closepopup)属性,数据关闭弹出属性指示小程序界面上的弹窗关闭显示。
示例性的,第二触摸点击事件中的触摸坐标属于小程序界面上的弹窗的关闭组件的坐标范围;在本实施例中,小程序界面上的弹窗的关闭组件的坐标范围通常为矩形,但也不排除坐标范围为圆形、椭圆形、扇形或其他多边形的情况。第二触摸点击事件中的触摸坐标是基于小程序界面上的弹窗的关闭组件的坐标范围中的第四参考点确定的。第四参考点是关闭组件的坐标范围中的参考点;优选的,第一参考点是关闭组件的坐标范围中的中心点。
综上所述,本实施例提供的方法,通过硬件外设控制小程序;实现了同时支持通过硬件外设和触摸屏对小程序进行控制,在车载终端上提供了安全的控制方法;通过响应于硬件外设上的第三类型控制操作,控制返回小程序界面的上层界面,或关闭小程序界面,或关闭小程序界面上的弹窗,为触摸关闭事件提供了对应的在硬件外设上的车载终端的控制方法,将触摸操作与硬件外设上的物理控制操作建立了联系。
本领域普通技术人员可以理解,上述实施例可以独立实施,也可以将上述实施例进行自由组合,组合出新的实施例实现本申请的车载终端的控制方法。
图18示出了本申请一个示例性实施例提供的车载终端的控制装置的框图。车载终端具有触摸屏和硬件外设,车载终端中运行有依赖于小程序引擎的小程序,该装置包括:
显示模块710,用于显示所述小程序的小程序界面,所述小程序界面包括至少两个组件;
控制模块720,用于响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件;
所述控制模块720,还用于响应于所述触摸屏上的触摸操作,控制所述小程序界面中的所述至少两个组件中的第二目标组件执行所述目标事件。
在实施例的一个可选设计中,所述控制模块720,包括:
处理单元722,用于响应于所述硬件外设上的确认操作,生成第一触摸点击事件,所述第一触摸点击事件中的触摸坐标属于处于焦点状态的所述第一目标组件的坐标范围;
传递单元724,用于向所述小程序传递所述第一触摸点击事件,所述第一触摸点击事件用于触发所述小程序控制所述第一目标组件执行响应事件。
在实施例的一个可选设计中,所述处理单元722还用于:
响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围中的第一参考点,生成第一触摸坐标;
在所述第一目标组件不包括子组件的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件。
在实施例的一个可选设计中,所述处理单元722还用于:
响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围内部的第一参考点,生成第一触摸坐标;
在所述第一目标组件包括子组件且所述第一触摸坐标不属于所述子组件的坐标范围的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件;
或,
在所述第一目标组件包括子组件且所述第一触摸坐标属于所述子组件的坐标范围的情况下,基于所述子组件的坐标范围重新生成第二触摸坐标;基于所述第二触摸坐标生成所述第一触摸点击事件。
在实施例的一个可选设计中,所述处理单元722还用于:
基于所述子组件的坐标范围和所述第一目标组件的坐标范围确定所述子组件的第一边界和所述第一目标组件的第二边界;
确定属于所述子组件的第一边界和所述第一目标组件的第二边界之间的第二参考点,基于所述第二参考点生成所述第二触摸坐标。
在实施例的一个可选设计中,所述处理单元722还用于:
响应于所述硬件外设上的确认操作,获取所述第一目标组件的坐标范围,以及所述第一目标组件中的子组件的坐标范围;
确定属于所述第一目标组件的坐标范围之内且属于所述子组件的坐标范围之外的第三参考点;
基于所述第三参考点生成第三触摸坐标,基于所述第三触摸坐标生成所述第一触摸点击事件。
在实施例的一个可选设计中,所述控制模块720还用于:
响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第一类型控制操作之前处于所述焦点状态的组件。
在实施例的一个可选设计中,所述装置还包括:
获取模块730,用于获取所述小程序界面对应的文档对象模型DOM树中目标节点,所述目标节点包括事件节点和焦点节点,所述事件节点是具有响应所述物理控制操作和/或触摸操作功能的组件所对应的节点,所述焦点节点是处于焦点状态的焦点组件所对应的节点;
所述控制模块720还用于:
响应于所述硬件外设上的第一类型控制操作,读取所述焦点组件对应的第一焦点索引;
基于所述第一类型控制操作的操作方向将所述第一焦点索引进行更新,得到第二焦点索引;
确定所述第二焦点索引对应的所述第一目标组件;控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在实施例的一个可选设计中,所述控制模块720还用于:
在所述第一目标组件不包括子组件且所述第一目标组件未完全显示在所述小程序界面中的情况下,基于所述第一类型控制操作的操作方向,在所述小程序界面上控制所述第一目标组件进行滚动显示。
在实施例的一个可选设计中,所述控制模块720还用于:
在所述第一类型控制操作的操作方向是第一方向的情况下,将所述第一焦点索引加一,得到所述第二焦点索引;
在所述第一类型控制操作的操作方向是第二方向的情况下,将所述第一焦点索引减一,得到所述第二焦点索引。
在实施例的一个可选设计中,所述获取模块730还用于:
在所述小程序界面的全部节点中筛选所述事件节点;
在所述事件节点中确定所述焦点节点;
获取所述事件节点和所述焦点节点的节点状态;以及根据所述节点状态的变化更新所述焦点节点。
在实施例的一个可选设计中,所述获取模块730还用于:
在所述小程序界面的全部节点中根据筛选条件筛选所述事件节点;
其中,所述筛选条件包括如下至少之一:
注册有事件响应装置的节点;
统一资源定位系统URL不为空的页面导航节点;
输入节点;
滚动视图节点。
在实施例的一个可选设计中,所述控制模块720还用于:
响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第二类型控制操作之前处于所述焦点状态的组件。
在实施例的一个可选设计中,所述控制模块720还用于:
响应于所述硬件外设上的第二类型控制操作,读取所述焦点组件对应的第一层级索引;
基于所述第二类型控制操作的操作方向将所述第一层级索引进行更新,得到第二层级索引的情况下;确定所述第二层级索引对应的所述第一目标组件;
控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在实施例的一个可选设计中,在所述第一层级索引与所述第二层级索引存在所属关系的情况下,所述第一目标组件是所述第二层级索引对应的且与所述焦点组件具有所属关系的组件;
在所述第一层级索引与所述第二层级索引未存在所属关系的情况下,所述第一目标组件是所述第二层级索引对应的首个组件。
在实施例的一个可选设计中,所述小程序界面还显示有原生标签,所述原生标签是所述小程序引擎提供的;所述控制模块720还用于:
在未能成功更新得到所述第二层级索引的情况下,控制所述焦点组件失去所述焦点状态,以及控制所述焦点组件对应的所述原生标签处于所述焦点状态。
在实施例的一个可选设计中,所述控制模块720还用于:
在所述第二类型控制操作的操作方向是第三方向的情况下,将所述第一层级索引加一,得到所述第二层级索引;
在所述第二类型控制操作的操作方向是第四方向的情况下,将所述第一层级索引减一,得到所述第二层级索引。
在实施例的一个可选设计中,所述控制模块720还用于:
响应于所述硬件外设上的第三类型控制操作,控制返回所述小程序界面的上层界面,或关闭所述小程序界面,或关闭所述小程序界面上的弹窗。
在实施例的一个可选设计中,所述控制模块720还用于:
响应于所述硬件外设上的第三类型控制操作,生成第二触摸点击事件;向所述小程序传递所述第二触摸点击事件,所述第二触摸点击事件用于触发所述小程序对所述弹窗对应的节点添加数据关闭弹出属性,以使得所述弹窗关闭显示。
需要说明的一点是,上述实施例提供的装置在实现其功能时,仅以上述各个功能模块的划分进行举例说明,实际应用中,可以根据实际需要而将上述功能分配由不同的功能模块完成,即将设备的内容结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述;各个模块执行操作取得的技术效果与有关该方法的实施例中的技术效果相同,此处将不做详细阐述说明。
图19示出了本申请一个示例性实施例提供的车载终端1400的结构框图。车载终端1400包括:控制芯片1420、与所述控制芯片1420相连的显示屏1440和控制硬件1460;
所述显示屏1440,用于在控制芯片的控制下显示小程序页面,所述小程序页面包括至少两个组件;
所述控制硬件1460,用于响应于硬件外设上的物理控制操作向所述控制芯片上报物理控制事件,以及响应于触摸屏上的触摸操作向所述控制芯片上报触摸事件;
所述控制芯片1420,用于在接收到所述物理控制事件,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件;以及在接收到所述触摸事件,控制所述小程序界面中的所述至少两个组件中的第二目标组件执行所述目标事件。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的确认操作,生成第一触摸点击事件,所述第一触摸点击事件中的触摸坐标属于处于焦点状态的所述第一目标组件的坐标范围;
向所述小程序传递所述第一触摸点击事件,所述第一触摸点击事件用于触发所述小程序控制所述第一目标组件执行确认响应事件。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围中的第一参考点,生成第一触摸坐标;
在所述第一目标组件不包括子组件的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围内部的第一参考点,生成第一触摸坐标;
在所述第一目标组件包括子组件且所述第一触摸坐标不属于所述子组件的坐标范围的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件;
或,
在所述第一目标组件包括子组件且所述第一触摸坐标属于所述子组件的坐标范围的情况下,基于所述子组件的坐标范围重新生成第二触摸坐标;基于所述第二触摸坐标生成所述第一触摸点击事件。
在本实施例的可选设计中,所述控制芯片1420,还用于基于所述子组件的坐标范围和所述第一目标组件的坐标范围确定所述子组件的第一边界和所述第一目标组件的第二边界;
确定属于所述子组件的第一边界和所述第一目标组件的第二边界之间的第二参考点,基于所述第二参考点生成所述第二触摸坐标。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的确认操作,获取所述第一目标组件的坐标范围,以及所述第一目标组件中的子组件的坐标范围;
确定属于所述第一目标组件的坐标范围之内且属于所述子组件的坐标范围之外的第三参考点;
基于所述第三参考点生成第三触摸坐标,基于所述第三触摸坐标生成所述第一触摸点击事件。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第一类型控制操作之前处于所述焦点状态的组件。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第二类型控制操作之前处于所述焦点状态的组件。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的第二类型控制操作,读取所述焦点组件对应的第一层级索引;
基于所述第二类型控制操作的操作方向将所述第一层级索引进行更新,得到第二层级索引的情况下;确定所述第二层级索引对应的所述第一目标组件;
控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
在本实施例的可选设计中,所述控制芯片1420,还用于响应于所述硬件外设上的第三类型控制操作,控制返回所述小程序界面的上层界面,或关闭所述小程序界面,或关闭所述小程序界面上的弹窗。
图20示出了本申请一个示例性实施例提供的车载终端1500的结构框图。通常,车载终端1500包括有:处理器1501和存储器1502。
处理器1501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1501可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1501所执行以实现本申请中方法实施例提供的车载终端的控制方法。
在一些实施例中,车载终端1500还可选包括有:外围设备接口1503和至少一个外围设备。处理器1501、存储器1502和外围设备接口1503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1503相连。具体地,外围设备包括:射频电路1504、触摸显示屏1505、摄像头1506、音频电路1507和电源1508中的至少一种。
外围设备接口1503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1501和存储器1502。在一些实施例中,处理器1501、存储器1502和外围设备接口1503被集成在同一芯片或电路板上;在一些其他实施例中,处理器1501、存储器1502和外围设备接口1503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。外围设备包括控制硬件,控制硬件包括:硬件旋钮、硬件拨钮、硬件触摸板和硬件按钮中的至少一种。在一个示例中,控制硬件包括:用于触发选择操作的硬件旋钮、用于触发确认操作的确认按钮以及用于触发后退操作的后退按钮。用于触发选择操作的硬件旋钮,也可替代实现为硬件拨钮或硬件触摸板。在一些示例中,存在支持多种控制功能的中控台按钮,该中控台按钮同时支持旋转控制、拨钮控制、触摸板控制和按钮控制中的至少一种。
射频电路1504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1504可以通过至少一种无线通信协议来与其它车载终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或无线保真(Wireless Fidelity,WiFi)网络。在一些实施例中,射频电路1504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在显示屏1505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1501进行处理。此时,显示屏1505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1505可以为一个,设置车载终端1500的前面板;在另一些实施例中,显示屏1505可以为至少两个,分别设置在车载终端1500的不同表面或呈折叠设计;在再一些实施例中,显示屏1505可以是柔性显示屏,设置在车载终端1500的弯曲表面上或折叠面上。甚至,显示屏1505还可以设置成非矩形的不规则图形,也即异形屏。显示屏1505可以采用液晶显示屏(Liquid Crystal Display,LCD)、有机发光二极管(OrganicLight-Emitting Diode,OLED)等材质制备。
摄像头组件1506用于采集图像或视频。可选地,摄像头组件1506包括前置摄像头和后置摄像头。通常,前置摄像头设置在车载终端的前面板,后置摄像头设置在车载终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1501进行处理,或者输入至射频电路1504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在车载终端1500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1501或射频电路1504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1507还可以包括耳机插孔。
电源1508用于为车载终端1500中的各个组件进行供电。电源1508可以是交流电、直流电、一次性电池或可充电电池。当电源1508包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,车载终端1500还包括有一个或多个传感器1510。该一个或多个传感器1510包括但不限于:加速度传感器1511、陀螺仪传感器1512、压力传感器1513、光学传感器1514以及接近传感器1515。
加速度传感器1511可以检测以车载终端1500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1511可以用于检测重力加速度在三个坐标轴上的分量。处理器1501可以根据加速度传感器1511采集的重力加速度信号,控制触摸显示屏1505以横向视图或纵向视图进行用户界面的显示。加速度传感器1511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1512可以检测车载终端1500的机体方向及转动角度,陀螺仪传感器1512可以与加速度传感器1511协同采集用户对车载终端1500的3D动作。处理器1501根据陀螺仪传感器1512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1513可以设置在车载终端1500的侧边框和/或触摸显示屏1505的下层。当压力传感器1513设置在车载终端1500的侧边框时,可以检测用户对车载终端1500的握持信号,由处理器1501根据压力传感器1513采集的握持信号进行左右手识别或快捷操作。当压力传感器1513设置在触摸显示屏1505的下层时,由处理器1501根据用户对触摸显示屏1505的压力操作,实现对UI界面上的可操作性组件进行控制。可操作性组件包括按钮组件、滚动条组件、图标组件、菜单组件中的至少一种。
光学传感器1514用于采集环境光强度。在一个实施例中,处理器1501可以根据光学传感器1514采集的环境光强度,控制触摸显示屏1505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1505的显示亮度;当环境光强度较低时,调低触摸显示屏1505的显示亮度。在另一个实施例中,处理器1501还可以根据光学传感器1514采集的环境光强度,动态调整摄像头组件1506的拍摄参数。
接近传感器1515,也称距离传感器,通常设置在车载终端1500的前面板。接近传感器1515用于采集用户与车载终端1500的正面之间的距离。在一个实施例中,当接近传感器1515检测到用户与车载终端1500的正面之间的距离逐渐变小时,由处理器1501控制触摸显示屏1505从亮屏状态切换为息屏状态;当接近传感器1515检测到用户与车载终端1500的正面之间的距离逐渐变大时,由处理器1501控制触摸显示屏1505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图20中示出的结构并不构成对车载终端1500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在示例性实施例中,还提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当所述芯片在计算机设备上运行时,用于实现上述方面所述的车载终端的控制方法。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器从计算机可读存储介质读取并执行该计算机指令,以实现上述各方法实施例提供的车载终端的控制方法。
在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现上述各方法实施例提供的车载终端的控制方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (20)

1.一种车载终端的控制方法,其特征在于,所述车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序,所述方法包括:
显示所述小程序的小程序界面,所述小程序界面包括至少两个组件;
响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件;
响应于所述触摸屏上的触摸操作,控制所述小程序界面中的所述至少两个组件中的第二目标组件执行所述目标事件。
2.根据权利要求1所述的方法,其特征在于,所述响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件,包括:
响应于所述硬件外设上的确认操作,生成第一触摸点击事件,所述第一触摸点击事件中的触摸坐标属于处于焦点状态的所述第一目标组件的坐标范围;
向所述小程序传递所述第一触摸点击事件,所述第一触摸点击事件用于触发所述小程序控制所述第一目标组件执行确认响应事件。
3.根据权利要求2所述的方法,其特征在于,所述响应于所述硬件外设上的确认操作,生成第一触摸点击事件,包括:
响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围中的第一参考点,生成第一触摸坐标;
在所述第一目标组件不包括子组件的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件。
4.根据权利要求2所述的方法,其特征在于,所述响应于所述硬件外设上的确认操作,生成第一触摸点击事件,包括:
响应于所述硬件外设上的确认操作,基于所述第一目标组件的坐标范围内部的第一参考点,生成第一触摸坐标;
在所述第一目标组件包括子组件且所述第一触摸坐标不属于所述子组件的坐标范围的情况下,基于所述第一触摸坐标生成所述第一触摸点击事件;
或,
在所述第一目标组件包括子组件且所述第一触摸坐标属于所述子组件的坐标范围的情况下,基于所述子组件的坐标范围重新生成第二触摸坐标;基于所述第二触摸坐标生成所述第一触摸点击事件。
5.根据权利要求4所述的方法,其特征在于,所述基于所述子组件的坐标范围重新生成第二触摸坐标,包括:
基于所述子组件的坐标范围和所述第一目标组件的坐标范围确定所述子组件的第一边界和所述第一目标组件的第二边界;
确定属于所述子组件的第一边界和所述第一目标组件的第二边界之间的第二参考点,基于所述第二参考点生成所述第二触摸坐标。
6.根据权利要求2所述的方法,其特征在于,所述响应于所述硬件外设上的确认操作,生成第一触摸点击事件,包括:
响应于所述硬件外设上的确认操作,获取所述第一目标组件的坐标范围,以及所述第一目标组件中的子组件的坐标范围;
确定属于所述第一目标组件的坐标范围之内且属于所述子组件的坐标范围之外的第三参考点;
基于所述第三参考点生成第三触摸坐标,基于所述第三触摸坐标生成所述第一触摸点击事件。
7.根据权利要求1至6任一所述的方法,其特征在于,所述响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件,还包括:
响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第一类型控制操作之前处于所述焦点状态的组件。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取所述小程序界面对应的文档对象模型DOM树中目标节点,所述目标节点包括事件节点和焦点节点,所述事件节点是具有响应所述物理控制操作和/或触摸操作功能的组件所对应的节点,所述焦点节点是处于焦点状态的焦点组件所对应的节点;
所述响应于所述硬件外设上的第一类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中排序在所述焦点组件之前或之后的所述第一目标组件处于所述焦点状态,包括:
响应于所述硬件外设上的第一类型控制操作,读取所述焦点组件对应的第一焦点索引;
基于所述第一类型控制操作的操作方向将所述第一焦点索引进行更新,得到第二焦点索引;
确定所述第二焦点索引对应的所述第一目标组件;控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在所述第一目标组件不包括子组件且所述第一目标组件未完全显示在所述小程序界面中的情况下,基于所述第一类型控制操作的操作方向,在所述小程序界面上控制所述第一目标组件进行滚动显示。
10.根据权利要求8所述的方法,其特征在于,所述获取所述小程序界面对应的文档对象模型DOM树中目标节点,包括:
在所述小程序界面的全部节点中筛选所述事件节点;
在所述事件节点中确定所述焦点节点;
获取所述事件节点和所述焦点节点的节点状态;以及根据所述节点状态的变化更新所述焦点节点。
11.根据权利要求10所述的方法,其特征在于,所述在所述小程序界面的全部节点中筛选所述事件节点,包括:
在所述小程序界面的全部节点中根据筛选条件筛选所述事件节点;
其中,所述筛选条件包括如下至少之一:
注册有事件响应方法的节点;
统一资源定位系统URL不为空的页面导航节点;
输入节点;
滚动视图节点。
12.根据权利要求1至6任一所述的方法,其特征在于,所述响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件,还包括:
响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,所述焦点组件是在接收到所述第二类型控制操作之前处于所述焦点状态的组件。
13.根据权利要求12所述的方法,其特征在于,所述响应于所述硬件外设上的第二类型控制操作,控制焦点组件失去焦点状态,以及控制所述小程序界面中处于所述焦点组件的上一层级或下一层级的所述第一目标组件处于所述焦点状态,包括:
响应于所述硬件外设上的第二类型控制操作,读取所述焦点组件对应的第一层级索引;
基于所述第二类型控制操作的操作方向将所述第一层级索引进行更新,得到第二层级索引的情况下;确定所述第二层级索引对应的所述第一目标组件;
控制所述焦点组件失去所述焦点状态,以及控制所述第一目标组件切换为所述焦点状态。
14.根据权利要求13所述的方法,其特征在于,
在所述第一层级索引与所述第二层级索引存在所属关系的情况下,所述第一目标组件是所述第二层级索引对应的且与所述焦点组件具有所属关系的组件;
在所述第一层级索引与所述第二层级索引未存在所属关系的情况下,所述第一目标组件是所述第二层级索引对应的首个组件。
15.根据权利要求1至6任一所述的方法,其特征在于,所述响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件,还包括:
响应于所述硬件外设上的第三类型控制操作,控制返回所述小程序界面的上层界面,或关闭所述小程序界面,或关闭所述小程序界面上的弹窗。
16.根据权利要求15所述的方法,其特征在于,所述响应于所述硬件外设上的第三类型控制操作,控制关闭所述小程序界面上的弹窗,包括:
响应于所述硬件外设上的第三类型控制操作,生成第二触摸点击事件;向所述小程序传递所述第二触摸点击事件,所述第二触摸点击事件用于触发所述小程序对所述弹窗对应的节点添加数据关闭弹出属性,以使得所述弹窗关闭显示。
17.一种车载终端的控制装置,其特征在于,所述车载终端具有触摸屏和硬件外设,所述车载终端中运行有依赖于小程序引擎的小程序,所述装置包括:
显示模块,用于显示所述小程序的小程序界面,所述小程序界面包括至少两个组件;
控制模块,用于响应于所述硬件外设上的物理控制操作,控制所述小程序界面中的所述至少两个组件中的第一目标组件执行目标事件;
所述控制模块,还用于响应于所述触摸屏上的触摸操作,控制所述小程序界面中的所述至少两个组件中的第二目标组件执行所述目标事件。
18.一种计算机设备,其特征在于,所述计算机设备包括:处理器和存储器,所述存储器中存储有至少一段程序;所述处理器,用于执行所述存储器中的所述至少一段程序以实现上述如权利要求1至16任一所述的车载终端的控制方法。
19.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有可执行指令,所述可执行指令由处理器加载并执行以实现上述如权利要求1至16任一所述的车载终端的控制方法。
20.一种计算机程序产品或计算机程序,其特征在于,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中,处理器从所述计算机可读存储介质读取并执行所述计算机指令,以实现上述如权利要求1至16任一所述的车载终端的控制方法。
CN202210070015.XA 2022-01-21 2022-01-21 车载终端的控制方法、装置、设备及存储介质 Pending CN114407796A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202210070015.XA CN114407796A (zh) 2022-01-21 2022-01-21 车载终端的控制方法、装置、设备及存储介质
PCT/CN2022/131057 WO2023138183A1 (zh) 2022-01-21 2022-11-10 车载终端的控制方法、装置、设备及存储介质
US18/455,583 US20230406227A1 (en) 2022-01-21 2023-08-24 Vehicle terminal control method, computer device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210070015.XA CN114407796A (zh) 2022-01-21 2022-01-21 车载终端的控制方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN114407796A true CN114407796A (zh) 2022-04-29

Family

ID=81274505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210070015.XA Pending CN114407796A (zh) 2022-01-21 2022-01-21 车载终端的控制方法、装置、设备及存储介质

Country Status (3)

Country Link
US (1) US20230406227A1 (zh)
CN (1) CN114407796A (zh)
WO (1) WO2023138183A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023138183A1 (zh) * 2022-01-21 2023-07-27 腾讯科技(深圳)有限公司 车载终端的控制方法、装置、设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105446172B (zh) * 2014-08-14 2018-06-29 深圳市赛格导航科技股份有限公司 一种车载控制方法、车载控制系统及汽车
DK201770414A1 (en) * 2017-05-16 2019-01-07 Apple Inc. Operational safety mode
CN109828807A (zh) * 2018-12-24 2019-05-31 天津字节跳动科技有限公司 小程序手势切换页面的方法、装置、电子设备及存储介质
CN111724785B (zh) * 2020-06-29 2023-07-04 百度在线网络技术(北京)有限公司 小程序的语音控制方法、设备及存储介质
CN112394869B (zh) * 2020-10-16 2022-07-29 腾讯科技(深圳)有限公司 基于车载终端的小程序控制方法、装置、设备及存储介质
CN114407796A (zh) * 2022-01-21 2022-04-29 腾讯科技(深圳)有限公司 车载终端的控制方法、装置、设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023138183A1 (zh) * 2022-01-21 2023-07-27 腾讯科技(深圳)有限公司 车载终端的控制方法、装置、设备及存储介质

Also Published As

Publication number Publication date
WO2023138183A1 (zh) 2023-07-27
US20230406227A1 (en) 2023-12-21

Similar Documents

Publication Publication Date Title
CN109828802B (zh) 列表视图显示方法、装置及可读介质
CN110221734B (zh) 信息显示方法、图形用户接口及终端
CN112394869B (zh) 基于车载终端的小程序控制方法、装置、设备及存储介质
CN113127130B (zh) 页面跳转方法、装置及存储介质
CN112230914B (zh) 小程序的制作方法、装置、终端及存储介质
CN108717365B (zh) 在应用程序中执行功能的方法和装置
CN108632413B (zh) 一种拍照方法及移动终端
CN109618192B (zh) 播放视频的方法、装置、系统和存储介质
CN113157172A (zh) 弹幕信息显示方法、发送方法、装置、终端及存储介质
CN111399736A (zh) 进度条控制方法、装置、设备及可读存储介质
CN111694478A (zh) 内容展示方法、装置、终端及存储介质
CN111400002B (zh) 应用进程与处理器核绑定方法及终端
CN113409427A (zh) 动画播放方法、装置、电子设备及计算机可读存储介质
US20230406227A1 (en) Vehicle terminal control method, computer device, and storage medium
CN110248202B (zh) 直播间的切换方法、装置及存储介质
CN114168369A (zh) 日志显示方法、装置、设备及存储介质
CN115695908A (zh) 视频播放方法、装置、电子设备及存储介质
CN113538633B (zh) 动画播放方法、装置、电子设备及计算机可读存储介质
CN111383251A (zh) 一种跟踪目标对象的方法、装置、监控设备和存储介质
CN112037545B (zh) 信息管理方法、装置、计算机设备及存储介质
CN114140105A (zh) 资源转移方法、装置、设备及计算机可读存储介质
CN114100121A (zh) 操作控制方法、装置、设备、存储介质及计算机程序产品
CN112711636A (zh) 数据同步方法、装置、设备及介质
CN113490052A (zh) 一种终端设备、自由视点视频播放方法和服务器
CN111324255A (zh) 一种基于双屏终端的应用处理方法及通信终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40068469

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination