CN112394869B - 基于车载终端的小程序控制方法、装置、设备及存储介质 - Google Patents

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

Info

Publication number
CN112394869B
CN112394869B CN202011113028.8A CN202011113028A CN112394869B CN 112394869 B CN112394869 B CN 112394869B CN 202011113028 A CN202011113028 A CN 202011113028A CN 112394869 B CN112394869 B CN 112394869B
Authority
CN
China
Prior art keywords
component
applet
control
page
hardware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011113028.8A
Other languages
English (en)
Other versions
CN112394869A (zh
Inventor
李红波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 CN202011113028.8A priority Critical patent/CN112394869B/zh
Publication of CN112394869A publication Critical patent/CN112394869A/zh
Priority to PCT/CN2021/120995 priority patent/WO2022078199A1/zh
Application granted granted Critical
Publication of CN112394869B publication Critical patent/CN112394869B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures

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

Abstract

本申请公开了一种基于车载终端的小程序控制方法、装置及存储介质,属于人机交互领域。所述车载终端具有控制硬件,所述方法包括:显示小程序页面,所述小程序页面包括至少两个组件;响应于所述控制硬件上触发的选择操作,将所述至少两个组件中被选中的第一组件显示为选中样式;响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态,和/或执行所述第一组件对应的响应事件。本申请提供了一种低成本地将小程序适配到车载终端上的适配方案。

Description

基于车载终端的小程序控制方法、装置、设备及存储介质
技术领域
本申请实施例涉及人机交互领域,特别涉及一种基于车载终端的小程序控制方法、装置、设备及存储介质。
背景技术
随着智能驾驶和5G网络的发展,车载终端的功能越来越多样化和智能化。除了传统的本地(native)应用之外,车载终端上还可以运行小程序。
小程序是依赖于宿主程序运行的程序,当车载终端安装宿主程序后,该宿主程序可以运行一个或多个小程序。由于小程序在设计之初,都是针对智能手机的触摸屏使用场景来设计的,因此车载终端上的小程序也采用基于触摸屏的人机交互方式。
但是由于用户在驾驶过程中,使用触摸屏控制车载终端会导致视线聚焦在车载终端的触摸屏上,引发不安全隐患,因此亟待提供一种较为安全的小程序控制方法。
发明内容
本申请实施例提供了一种基于车载终端的小程序控制方法、装置、设备及存储介质。所述技术方案如下:
根据本申请的一个方面,提供了一种基于车载终端的小程序控制方法,所述车载终端具有控制硬件,所述方法包括:
显示小程序页面,所述小程序页面包括至少两个组件;
响应于所述控制硬件上触发的选择操作,将所述至少两个组件中被选中的第一组件显示为焦点选中样式,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;
响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态,和或,执行所述第一组件对应的响应事件。
根据本申请的另一方面,提供了一种小程序控制装置,所述小程序控制装置连接有控制硬件,所述装置包括:
显示模块,显示小程序页面,所述小程序页面包括至少两个组件;
交互模块,用于响应于所述控制硬件上触发的选择操作,将所述至少两个组件中被选中的第一组件显示为焦点选中样式,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态,和/或执行所述第一组件对应的响应事件。
根据本申请的另一方面,提供了一种基于车载终端的小程序控制方法,所述车载终端具有控制芯片、与所述控制芯片相连的显示屏和控制硬件,所述方法包括:
所述控制芯片控制所述显示屏显示小程序页面,所述小程序页面包括至少两个组件;
在接收到所述控制硬件上报的选择事件的情况下,所述控制芯片控制所述显示屏将所述至少两个组件中被选中的第一组件显示为焦点选中样式,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;
在接收到所述控制硬件上报的确认事件的情况下,所述控制芯片将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件。
示例性的,所述控制硬件包括所述车载终端的中控台按钮,所述中控台按钮支持旋转控制、拨动控制和按压控制;
所述选择事件是所述中控台按钮在接收到旋转操作时上报的事件;和/或,所述选择事件是所述中控台按钮在接收到拨动操作时上报的事件;
所述确认事件是所述中控台按钮在接收到按压操作时上报的事件。
根据本申请的另一方面,提供了一种车载终端,所述车载终端包括:控制芯片、与所述控制芯片相连的显示屏和控制硬件;
所述显示屏,用于在控制芯片的控制下显示小程序页面,所述小程序页面包括至少两个组件;
所述控制硬件,用于响应于选择操作向所述控制芯片上报选择事件,以及响应于确认操作向所述控制芯片上报确认事件;
所述控制芯片,用于在接收到所述选择事件的情况下,控制所述显示屏将所述至少两个组件中被选中的第一组件显示为焦点选中样式,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;
所述控制芯片,还用于在接收到所述确认事件的情况下,根据所述确认操作将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件。
示例性的,所述控制硬件包括所述车载终端的中控台按钮,所述中控台按钮支持旋转控制、拨动控制和按压控制;
所述中控台按钮,用于执行如下步骤中的至少一个:
在接收到旋转操作时向所述控制芯片上报所述选择事件;
在接收到拨动操作时上报所述选择事件;
在接收到按压操作时上报所述确认事件。
根据本申请的另一方面,提供了一种车载终端,所述车载终端包括存储器和处理器;
所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上所述的小程序控制方法。
根据本申请实施例的另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现如上所述的小程序控制方法。
根据本申请的另一方面,提供了一种计算机程序产品或计算机程序,上述计算机程序产品或计算机程序包括计算机指令。计算机设备的处理器执行上述计算机指令,使得上述计算机设备执行如上方面所述的小程序控制方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过采用诸如物理旋钮、物理拨钮和硬件按钮之类的控制硬件来控制小程序页面上的功能,将触摸屏的操作交互方式转化为实体按键的操作交互方式,从而实现了对车载终端上的小程序的安全控制,无需小程序的研发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的基于车载终端的小程序控制方法的场景示意图;
图2是本申请一个实施例提供的车载终端的示意图;
图3是本申请一个实施例提供的宿主程序和小程序之间的关系框图;
图4是本申请一个实施例提供的基于车载终端的小程序控制方法的流程图;
图5是本申请一个实施例提供的基于车载终端的小程序控制方法的流程图;
图6是本申请一个实施例提供的基于车载终端的小程序控制方法的界面图;
图7是本申请一个实施例提供的基于车载终端的小程序控制方法的界面图;
图8是本申请一个实施例提供的基于车载终端的小程序控制方法的界面图;
图9是本申请一个实施例提供的基于车载终端的小程序控制方法的流程图;
图10是本申请一个实施例提供的基于车载终端的小程序控制方法的流程图;
图11是本申请一个实施例提供的基于车载终端的小程序控制方法的流程图;
图12是本申请一个实施例提供的基于车载终端的小程序控制方法的流程图;
图13是本申请一个实施例提供的小程序控制装置的框图;
图14是本申请一个实施例提供的车载终端的框图;
图15是本申请一个实施例提供的车载终端的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
由于很多车载终端都是采用硬件旋钮、硬件拨钮和硬件按钮之类的控制硬件来控制,本申请提供了采用控制硬件控制小程序以及本地应用的技术方案。参考图1所示,在车载终端100上显示有小程序页面120,小程序页面120上显示有多个具有交互能力的组件,比如多个标签“排行”、“推荐”、“排位”、“我的”和图标入口“北京菜”和“川湘菜”。当用户旋转车载终端100上的物理旋钮时,能够控制选择焦点选中小程序页面120上的某个组件,被选中的组件会显示为焦点选中状态,该焦点选中状态用于表示组件处于被选择焦点选中的预选状态。比如被选中的组件外围显示有焦点选中框。当用户按压车载终端100上的确认按钮时,将被选中的组件设置为选中状态,且触发被选中的组件对应的响应功能;当用户按压车载终端100上的后退按钮时,触发后退至上一页面或关闭小程序。
图2示出了本申请一个示例性实施例提供的车载终端100的结构框图。该车载终端100包括:至少一个处理器210、存储器250、至少一个网络接口220和用户接口230。服务器200中的各个组件通过总线系统240耦合在一起。可理解,总线系统240用于实现这些组件之间的连接通信。总线系统240除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统240。
处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口230包括使得能够呈现媒体内容的一个或多个输出装置。典型的,输出装置包括:显示屏231和控制硬件232。显示屏231可以是触摸屏,也可以是非触摸屏。控制硬件232包括:硬件旋钮、硬件拨钮、硬件触摸板和硬件按钮中的至少一种。在一个示例中,控制硬件232包括:用于触发选择操作的硬件旋钮、用于触发确认操作的确认按钮以及用于触发后退操作的后退按钮。用于触发选择操作的硬件旋钮,也可替代实现为硬件拨钮或硬件触摸板。在一些示例中,存在支持多种控制功能的中控台按钮,该中控台按钮同时支持旋转控制、拨钮控制、触摸板控制和按钮控制中的至少一种。可选地,控制硬件232是指非触摸屏的输入外设,或者说,采用物理输入形式的输入外设,或者说,采用机械式输入或机电式输入的输入外设。其中,机电式输入是指机械和电气结合的输入形式,也称半机械式。
存储器250可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器250可选地包括在物理位置上远离处理器210的一个或多个存储设备。
存储器250包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器250旨在包括任意适合类型的存储器。
在一些实施例中,存储器250能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统251,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。该操作系统251可以是各种车机操作系统,车机操作系统的具体类型不加以限定。
在操作系统251中运行有宿主程序252和本地(native)应用253。
宿主程序252用于提供小程序的运行环境,在宿主程序252中运行有一个或多个小程序,比如小程序1和小程序2。不论是何种车机操作系统,只要该车机操作系统中运行有宿主程序252,小程序都可以依赖于宿主程序252运行,该宿主程序252也称小程序引擎。
示意性的如图3所示,宿主程序252是承载小程序的应用程序,为小程序的实现提供环境。宿主程序252是原生应用程序。原生应用程序是可直接运行于操作系统252的应用程序。宿主程序252可以是社交应用程序、专门支持小程序252的专用应用程序、文件管理应用程序、邮件应用程序、游戏应用程序、地图应用程序、导航应用程序等。社交应用程序包括即时通信应用、SNS(Social Network Service,社交网站)应用或者直播应用等。小程序则是可在宿主程序提供的环境中运行的应用程序。小程序具体可以是社交应用程序、文件管理应用程序、邮件应用程序或者游戏应用程序等。宿主程序252具体可以是微信程序(WeChat)或,相应的小程序可以称之为小程序。
小程序逻辑层单元252c和相应的小程序视图层单元252b用于实现小程序实例。一个小程序可由一个小程序逻辑层单元252c以及至少一个小程序视图层单元252b实现。小程序视图层单元252b和小程序页面可以是一一对应关系。
小程序视图层单元252b用于组织小程序的视图并渲染。小程序逻辑层单元252c用于处理小程序及相应的小程序页面的数据处理逻辑。单元具体可以是进程或者线程,小程序视图层单元252b如小程序视图层线程,小程序逻辑层单元252c如小程序逻辑层线程。小程序逻辑层单元252c可运行于虚拟机中。小程序视图层单元252b和小程序逻辑层单元252c可通过宿主程序原生单元252a中转通信,宿主程序原生单元252a是宿主程序252与小程序通信的接口,宿主程序原生单元252a可以是宿主程序252自身的线程或进程。各小程序页面的属于程序包的页面逻辑代码,可由小程序逻辑层单元252c在启动时进行注册,并在需要该页面逻辑代码处理数据时执行注册的页面逻辑代码。
本地应用253是基于车机操作系统设计的应用程序。通常情况下,本地应用253仅能在当前的车机操作系统中运行。本地应用253也称原生应用。
图4示出了本申请一个示例性实施例提供的基于车载终端的小程序控制方法的流程图。本实施例以该方法应用于车载终端执行来举例说明,该车载终端具有控制硬件。可选地,该方法可以由车载终端内的宿主程序252执行。该方法包括:
步骤302:显示小程序页面,小程序页面包括至少两个组件;
车载终端上运行有一个或多个小程序。小程序页面是小程序运行时的用户界面。由于小程序是基于web架构的,因此小程序页面通常是一个网页类页面。该小程序页面包括至少两个组件。组件包括:视图(view)、文本(text)、图片(image)、媒体(media)、滑块(swiper)视图、可滚动视图(scroll-view)、表单、导航、地图、画布中的至少一种。
小程序是依赖于宿主程序运行的一种程序。小程序可以是web类应用。
步骤304:响应于控制硬件上触发的选择操作,将至少两个组件中被选中的第一组件显示为焦点选中样式,焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;
具有选择功能的控制硬件包括:硬件旋钮、硬件拨钮和硬件触摸板中的至少一种。
在控制硬件包括硬件旋钮的情况下,响应于硬件旋钮上的旋转操作,将至少两个组件中被选中的第一组件显示为焦点选中样式。示意性的,硬件旋钮支持逆时针旋转操作和顺时针旋转操作。
在控制硬件包括硬件拨钮的情况下,响应于硬件拨钮上的拨动操作,将至少两个组件中被选中的第一组件显示为焦点选中样式。示意性的,硬件拨钮支持上、下、左和右中的至少两个方向的拨动操作。
在控制硬件包括硬件触摸板的情况下,响应于硬件触摸板上的触摸操作,将至少两个组件中被选中的第一组件显示为焦点选中样式。示意性的,硬件触摸板支持上、下、左和右中的至少两个方向的触摸操作。
可选地,车载终端上的宿主程序中提供有选中控制逻辑,小程序通过该选中控制逻辑对选择操作进行响应,将至少两个组件中被选中的第一组件显示为焦点选中样式。
步骤306:响应于控制硬件上触发的确认操作,将第一组件设置为选中状态,和/或,执行第一组件对应的响应事件。
具有确认功能的控制硬件包括:硬件按钮。示意性的,硬件按钮支持确认操作。
在控制硬件包括硬件按钮的情况下,响应于硬件按钮上的按压操作,将被选中的第一组件设置为选中状态,或,执行被选中的第一组件对应的响应事件,或,将被选中的第一组件设置为选中状态且执行被选中的第一组件对应的响应事件。
该响应事件是小程序提供的某个功能或业务或流程。该响应事件是小程序中与第一组件绑定的响应事件或响应方法。
综上所述,本实施例提供的方法,通过采用诸如物理旋钮、物理拨钮和硬件按钮之类的控制硬件来控制小程序页面上的功能,将触摸屏的操作交互方式转化为实体按键的操作交互方式,从而实现了对车载终端上的小程序的安全控制,无需小程序的研发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
图5示出了本申请另一示例性实施例提供的基于车载终端的小程序控制方法的流程图。本实施例以该方法应用于车载终端中执行来举例说明,该车载终端具有控制硬件。可选地,该方法可以由车载终端内的宿主程序252执行。该方法包括:
步骤401:显示小程序页面,小程序页面包括至少两个组件;
车载终端上运行有一个或多个小程序。在小程序启动后,宿主程序显示小程序页面。小程序页面通常是一个网页类页面。该小程序页面包括至少两个组件。组件包括:视图、文本、图片、媒体、滑块视图、可滚动视图、表单、导航、地图、画布中的至少一种。
示意性的,对于可滚动视图和滑块视图之类的组件,组件内还包括至少两个可滚动选择的组件。该类型的组件可称为容器类组件。
示意性的,小程序页面可划分为不同的页面区域(或称功能区域),每个功能区域可设置为一个单独的层级,不同的层级之间具有不同的层间优先级,层间优先级较高的层级会被优先选中。同理,同一个层级内的各个控件之间也具有不同的层内优先级,层内优先级较高的控件也会被优先选中。
如图6所示,组件“订火车票”和“订单”属于层级1,组件“出发城市-到达城市”、“出发日期”和“火车票查询”属于层级2,层级1的层间优先级高于层级2的层间优先级。在层级1中,组件“订火车票”的层内优先级高于组件“订单”的层内优先级。
步骤402:监控小程序页面中具有交互能力的交互组件列表;
交互组件列表是小程序页面中具有交互能力的组件列表。
具有交互能力的组件是指能够响应用户的人机交互操作的组件。假设小程序是针对触摸屏交互设计的,则具有交互能力的组件包括能够响应用户的触摸屏操作的组件。触摸屏操作包括但不限于:点击触摸操作、双击触摸操作、滑动触摸操作、悬浮触控操作、压力触控操作中的至少一种。在一个示例中,交互组件列表是通过如下方式获取的:
402-1:监控小程序页面中具有人机交互功能的目标组件,小程序页面包括不同的页面区域,不同的页面区域对应的不同的层级,每个页面区域内包括至少一个组件;
在小程序页面是基于web的网页页面时,小程序页面对应有DOM树。宿主程序中的组件监控逻辑用于监控小程序页面的DOM树中的目标节点,目标节点是具有人机交互能力的组件对应的节点。示例性的,目标节点包括:增加的节点、删除的节点和属性变化的节点中的至少一种。属性变化包括:节点的类(class)发生变化和节点的样式(style)发生变化中的至少一种。
具有人机交互功能的组件,通常都绑定有响应方法(注:此处的方法是指编程用语)或响应事件。宿主程序从目标节点中扫描出绑定有响应方法的候选组件列表;将候选组件列表中满足筛选条件的组件,确定为具有人机交互功能的目标组件;筛选条件包括如下至少一个条件:
显示层级位于窗口顶层;
处于小程序页面的可滚动窗口内;
具有可选择的组件属性。
其中,显示层级位于窗口顶层代表组件是前台运行的组件而非后台运行的组件。处于小程序页面的可滚动窗口内代表不论组件是否处于前台运行,但由于可滚动窗口位于前台显示,则该可滚动窗口内的组件都有可能被用户进行选中。具有可选择的组件属性代表该组件具有被选中的能力。
402-2:根据目标组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级,对目标组件进行排序得到交互组件列表;
其中,层间优先级用于表示第一层级在不同层级之间的优先级,层内优先级用于表示目标组件在第一层级内的至少一个组件之间的优先级。
示意性的参考图6,组件“订火车票”和“订单”属于层级1,组件“出发城市-到达城市”、“出发日期”和“火车票查询”属于层级2,层级1的层间优先级高于层级2的层间优先级。在层级1中,组件“订火车票”的层内优先级高于组件“订单”的层内优先级。在层级2中,组件“出发城市-到达城市”的层内优先级高于组件“出发日期”的层内优先级,组件“出发日期”的层内优先级高于组件“火车票查询”的层内优先级。
根据层间优先级和层内优先级,宿主程序对5个组件排序得到交互组件列表:组件“订火车票”、组件“订单”、组件“出发城市-到达城市”、组件“出发日期”和组件“火车票查询”。
其中,交互组件列表中的第一个组件“订火车票”可以是默认状态下被选中的组件。
步骤403:响应于控制硬件上触发的第一选择操作,将组件列表中历史选中的组件的上一个组件确定为被选中的第一组件,以及将第一组件显示为焦点选中样式;
控制硬件是物理旋钮,选择操作是物理旋钮上触发的旋转操作;或,控制硬件是物理拨钮,选择操作是物理拨钮上触发的拨动操作。
在一个示例中,控制硬件是物理旋钮,第一选择操作是物理旋钮上触发的逆时针旋转操作;或,控制硬件是物理拨钮,第一选择操作是物理拨钮上触发的向上拨动操作。在另一个示例中,控制硬件是物理旋钮,第一选择操作是物理旋钮上触发的顺时针旋转操作;或,控制硬件是物理拨钮,第一选择操作是物理拨钮上触发的向下拨动操作。
响应于控制硬件上触发的第一选择操作,宿主程序将组件列表中历史选中的组件的上一个组件确定为被选中的第一组件,以及将第一组件显示为焦点选中样式。可选地,焦点选中样式是采用CSS代码实现的,焦点选中样式包括但不限于:增加选中框、增加高亮效果、改变背景颜色、改变前景颜色中的至少一种。
需要说明的是,焦点选中样式仅代表组件处于被选择焦点选择的预选状态,该组件的组件属性尚未被设置为选中状态。该预选状态可理解为组件获得了选择焦点。
在一个示例中,焦点选中样式是车载终端中的宿主程序提供的默认样式,不论哪个小程序都可以使用该默认样式。当小程序未设计有焦点选中样式时,小程序可以使用宿主程序提供的默认样式。比如在图6中示出了一种默认的焦点选中样式,该焦点选中样式采用外部框线表示组件“推荐”处于选择焦点聚焦的状态(也即预选状态),但此时组件“推荐”尚未被设置为选中状态,此时处于选中状态的组件是组件“排行”。又比如在图7中示出了一种默认的焦点选中样式,该焦点选中样式采用外部框线表示组件“北京菜”处于选择焦点聚焦的状态。
在另一个示例中,焦点选中样式是小程序页面对应的小程序提供的自定义样式。
步骤404:响应于控制硬件上触发的第二选择操作,将组件列表中历史选中的组件的下一个组件确定为被选中的第一组件,以及将第一组件显示为焦点选中样式;
控制硬件是物理旋钮,选择操作是物理旋钮上触发的旋转操作;或,控制硬件是物理拨钮,选择操作是物理拨钮上触发的拨动操作。
在一个示例中,控制硬件是物理旋钮,第二选择操作是物理旋钮上触发的顺时针旋转操作;或,控制硬件是物理拨钮,第二选择操作是物理拨钮上触发的向下拨动操作。在另一个示例中,控制硬件是物理旋钮,第二选择操作是物理旋钮上触发的逆时针旋转操作;或,控制硬件是物理拨钮,第二选择操作是物理拨钮上触发的向上拨动操作。
响应于控制硬件上触发的第二选择操作,宿主程序将组件列表中历史选中的组件的下一个组件确定为被选中的第一组件,以及将第一组件显示为焦点选中样式。其中,历史选中的组件包括:宿主程序默认选中的组件,和/或,用户自主选中的组件。
步骤405:响应于控制硬件上触发的确认操作,将第一组件设置为选中状态,和/或,执行第一组件对应的响应事件。
示意性的,具有确认功能的控制硬件包括:硬件按钮。
在控制硬件包括硬件按钮的情况下,响应于硬件按钮上的按压操作,将被选中的第一组件设置为选中状态,或,执行被选中的第一组件对应的响应事件,或,将被选中的第一组件设置为选中状态且执行被选中的第一组件对应的响应事件。该响应事件是小程序提供的某个功能或业务或流程。该响应事件是小程序中与第一组件绑定的响应事件或响应方法。
比如在图7所示的例子中,若用户点击确认按钮,则组件“推荐”被设置为选中状态,且将下方的组件“北京菜”和“川湘菜”切换显示为组件“推荐”的下属组件。
又比如在图8所示的例子中,若用户点击确认按钮,则组件“北京菜”被设置为选中状态,且将组件“北京菜”和“川湘菜”切换显示为组件“北京菜”的下一级页面。
步骤406:响应于控制硬件上触发的后退操作,后退至小程序页面的上一页面,或,关闭小程序页面。
具有后退功能的控制硬件包括:硬件按钮。
在控制硬件包括硬件按钮的情况下,响应于硬件按钮上的按压操作,宿主程序控制小程序后退至小程序页面的上一页面,或,关闭小程序页面。
可选地,在存在小程序页面的上一页面的情况下,后退至小程序页面的上一页面。该上一页面可以是同级页面中排序在小程序页面之前的页面,也可以是小程序页面的父级页面。或者,在当前的小程序页面不是主页(Home)页面的情况下,后退至小程序页面的上一页面。
可选地,在不存在小程序页面的上一页面的情况下,关闭小程序页面,也即退出当前的小程序。或者,在当前的小程序页面是主页(Home)页面的情况下,退出当前的小程序。
步骤407:在小程序页面上显示有弹窗的情况下,响应于控制硬件上触发的选择操作,将弹窗中被选中的第二组件显示为焦点选中样式;
在一些示例中,如图9所示,在小程序页面的显示过程中,小程序页面上还叠加显示有弹窗,该弹窗可以是小程序调用宿主程序的弹窗框架来显示的。弹窗上显示有至少两个组件。由于弹窗的显示层级高于小程序页面的显示层级,若此时用户在控制硬件上触发选择操作,则宿主程序将弹窗中被选中的第二组件显示为焦点选中样式。
可选地,响应于控制硬件上触发的第一选择操作,宿主程序将弹窗中默认选中(或历史选中)的组件的上一个组件确定为被选中的第二组件,以及将第二组件显示为焦点选中样式。或者,响应于控制硬件上触发的第二选择操作,宿主程序将弹窗中默认选中(或历史选中)的组件的下一个组件确定为被选中的第二组件,以及将第二组件显示为焦点选中样式。
步骤408:响应于控制硬件上触发的确认操作,执行第二组件对应的响应事件。
示意性的,具有确认功能的控制硬件包括:硬件按钮。
在控制硬件包括硬件按钮的情况下,响应于硬件按钮上的按压操作,宿主程序控制小程序执行被选中的第二组件对应的响应事件。该响应事件是小程序提供的某个功能或业务或流程。该响应事件是小程序中与第二组件绑定的响应事件或响应方法。比如,宿主程序在第二组件上模拟点击事件,该模拟点击事件用于触发小程序执行第二组件对应的响应事件。
步骤409:响应于触摸屏上的触摸操作,将位于触摸操作的触摸位置上的第三组件显示为焦点选中样式。
在一些示例中,如图10所示,用户可能不仅使用控制硬件来控制小程序。若车载终端上具有触摸屏,用户还可能混合使用触摸屏来控制小程序。响应于触摸屏上的触摸操作,该触摸操作会触发点击事件,宿主程序根据点击事件将位于触摸操作的触摸位置上的第三组件显示为焦点选中样式。
若用户想要触发第三组件对应的响应事件,可以再次使用触摸屏上的触摸操作对第三组件进行触发,或者,用户在控制硬件上触发确认操作,从而触发小程序执行第三组件对应的响应事件。
综上所述,本实施例提供的方法,通过采用诸如物理旋钮、物理拨钮和硬件按钮之类的控制硬件来控制小程序页面上的功能,将触摸屏的操作交互方式转化为实体按键的操作交互方式,从而实现了对车载终端上的小程序的安全控制,无需小程序的研发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
本实施例提供的方法,通过对小程序页面中的组件进行监控,能够准确得到具有人机交互能力的组件列表,作为可供顺序选择的组件列表,提供了小程序在初始设计下并未提供的组件顺序选择功能,使得用户能够通过物理控制组件来进行组件的顺序选择。
本实施例提供的方法,通过提供默认或自定义的焦点选择样式,能够在用户选择某一个组件后,在小程序页面上对该组件进行突出显示,从而响应用户的人机交互,让用户在物理控制组件上的交互操作得到视觉上的响应回复。
在一个示例性的例子中,车载终端上设置有控制芯片,与控制芯片相连的显示屏和控制硬件。示意性的,该控制硬件包括:中控台按钮和后退按钮。该中控台按钮是一种复合式多功能按钮或几个物理按钮的组合,同时支持旋转控制、拨动控制和按压控制。
图11示出了本申请另一示例性实施例提供的基于车载终端的小程序控制方法的流程图。本实施例以该方法应用于车载终端中执行来举例说明,该车载终端具有控制芯片,与控制芯片相连的显示屏和控制硬件。该方法包括:
步骤501:控制芯片控制显示屏显示小程序页面,小程序页面包括至少两个组件;
车载终端上运行有一个或多个小程序。在小程序启动后,控制芯片控制显示屏显示小程序页面。
示意性的,小程序页面可划分为不同的页面区域(或称功能区域),每个功能区域可设置为一个单独的层级,不同的层级之间具有不同的层间优先级,层间优先级较高的层级会被优先选中。同理,同一个层级内的各个组件之间也具有不同的层内优先级,层内优先级较高的组件也会被优先选中。
步骤502:控制芯片监控小程序页面对应的交互组件列表,交互组件列表包括小程序页面中显示出的具有交互能力的目标组件;
具有交互能力的目标组件是指能够响应用户的人机交互操作的组件。在一个示例中,交互组件列表是通过如下步骤获取到的:
控制芯片监控小程序页面中具有人机交互功能的目标组件,小程序页面包括不同的页面区域,不同的页面区域对应不同层级,每个页面区域内包括至少一个组件。对于目标组件,控制芯片根据目标组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级,对目标组件进行排序得到组件列表;其中,层间优先级用于表示第一层级在不同层级之间的优先级,层内优先级用于表示目标组件在第一层级内的至少一个组件之间的优先级。
在小程序页面是基于web的网页页面时,小程序页面对应有DOM树。控制芯片中的组件监控逻辑用于监控小程序页面的DOM树中的目标节点。目标节点是具有人机交互功能的目标组件在DOM树中所对应的节点。具有人机交互功能的目标组件,通常都绑定有响应方法(注:此处的方法是指编程用语)或响应事件。控制芯片从目标节点中扫描出绑定有响应方法的候选组件列表;将候选组件列表中满足筛选条件的组件,确定为具有人机交互功能的目标组件;筛选条件包括如下至少一个条件:
显示层级位于窗口顶层;
处于小程序页面的可滚动窗口内;
具有可选择的组件属性。
其中,显示层级位于窗口顶层代表组件是前台运行的组件而非后台运行的组件。处于小程序页面的可滚动窗口内代表不论组件是否处于前台运行,但由于可滚动窗口位于前台显示,则该可滚动窗口内的组件都有可能被用户进行选中。具有可选择的组件属性代表该组件具有被选中的能力。
步骤503:在接收到控制硬件上报的选择事件的情况下,控制芯片控制显示屏将至少两个组件中被选中的第一组件显示为焦点选中样式;
在一个示例中,选择事件是中控台按钮上的逆时针旋转操作触发的,或者,中控台按钮上的顺时针旋转操作触发的,或者,中控台按钮上的拨动操作触发的。该拨动操作可以是向上拨动操作、向下拨动操作、向左拨动操作和向右拨动操作中的至少一种。选择事件包括:代表向前选中的第一选择事件,以及代表向后选中的第二选择事件中的至少一种。
在接收到的中控台按钮上报的第一选择事件的情况下,控制芯片控制将组件列表中历史选中的组件的上一个组件确定为被选中的第一组件,以及控制显示屏将第一组件显示为焦点选中样式。在接收到的中控台按钮上报的第二选择事件的情况下,控制芯片控制将组件列表中历史选中的组件的下一个组件确定为被选中的第一组件,以及控制显示屏将第一组件显示为焦点选中样式。可选地,焦点选中样式是采用CSS代码实现的,焦点选中样式包括但不限于:增加选中框、增加高亮效果、改变背景颜色、改变前景颜色中的至少一种。
需要说明的是,焦点选中样式仅代表组件处于被选择焦点选择的预选状态,该组件的组件属性尚未被设置为选中状态。该预选状态可理解为组件获得了选择焦点。
在一个示例中,焦点选中样式是车载终端中的控制芯片提供的默认样式,不论哪个小程序都可以使用该默认样式。当小程序未设计有焦点选中样式时,小程序可以使用控制芯片提供的默认样式。在另一个示例中,焦点选中样式是小程序页面对应的小程序提供的自定义样式。
步骤504:在接收到控制硬件上报的确认事件的情况下,控制芯片控制小程序将第一组件设置为选中状态,和/或,执行第一组件对应的响应事件;
示意性的,确认事件是中控台按钮上触发的按压操作。
在接收到中控台按钮上报的确认事件的情况下,控制芯片控制小程序将被选中的第一组件设置为选中状态,或,执行被选中的第一组件对应的响应事件,或,将被选中的第一组件设置为选中状态且执行被选中的第一组件对应的响应事件。该响应事件是小程序提供的某个功能或业务或流程。该响应事件是小程序中与第一组件绑定的响应事件或响应方法。
可选地,将被选中的第一组件设置为选中状态包括:将被选中的第一组件的组件属性设置为选中属性。
步骤505:在接收到控制硬件上报的后退事件的情况下,控制芯片控制小程序后退至小程序页面的上一页面,或,关闭小程序页面。
示意性的,确认事件是中控台按钮或后退按钮上触发的按压操作。
在接收到中控台按钮或后退按钮上报的后退事件,控制芯片控制小程序后退至小程序页面的上一页面,或,关闭小程序页面。
可选地,在存在小程序页面的上一页面的情况下,后退至小程序页面的上一页面。该上一页面可以是同级页面中排序在小程序页面之前的页面,也可以是小程序页面的父级页面。或者,在当前的小程序页面不是主页(Home)页面的情况下,后退至小程序页面的上一页面。
可选地,在不存在小程序页面的上一页面的情况下,关闭小程序页面,也即退出当前的小程序。或者,在当前的小程序页面是主页(Home)页面的情况下,退出当前的小程序。
在一个可选的实施例中,在小程序页面上显示有弹窗且接收到控制硬件上报的选择事件的情况下,将弹窗中被选中的第二组件显示为焦点选中样式;
在小程序页面的显示过程中,小程序页面上还叠加显示有弹窗,该弹窗可以是小程序调用宿主程序的弹窗框架来显示的。弹窗上显示有至少两个组件。由于弹窗的显示层级高于小程序页面的显示层级,若此时接收到中控台按钮上报的选择事件,则控制芯片将弹窗中被选中的第二组件显示为焦点选中样式。
可选地,在接收到中控台按钮上报的第一选择事件的情况下,控制芯片将弹窗中默认选中(或历史选中)的组件的上一个组件确定为被选中的第二组件,以及将第二组件显示为焦点选中样式。或者,在接收到中控台按钮上报的第二选择事件的情况下,控制芯片将弹窗中默认选中(或历史选中)的组件的下一个组件确定为被选中的第二组件,以及将第二组件显示为焦点选中样式。
在一个可选的实施例中,在接收到中控台按钮上报的确认事件的情况下,控制芯片设置第二组件为选中状态且执行第二组件对应的响应事件。该响应事件是小程序提供的某个功能或业务或流程。该响应事件是小程序中与第二组件绑定的响应事件或响应方法。比如,控制芯片在第二组件上模拟点击事件,该模拟点击事件用于触发小程序执行第二组件对应的响应事件。
步骤506:在接收到触摸屏上报的触摸事件的情况下,控制芯片控制显示屏将触摸事件所指示的触摸位置上的第三组件显示为焦点选中样式。
在一些示例中,用户可能不仅使用控制硬件来控制小程序。若车载终端上具有触摸屏,用户还可能混合使用触摸屏来控制小程序。在接收到触摸屏上报的触摸事件的情况下,控制芯片控制显示屏将触摸事件所指示的触摸位置上的第三组件显示为焦点选中样式。
若用户想要触发第三组件对应的响应事件,可以再次使用触摸屏上的触摸操作对第三组件进行触发,或者,用户在控制硬件上触发确认操作,从而触发小程序执行第三组件对应的响应事件。
综上所述,本实施例提供的方法,通过采用诸如物理旋钮、物理拨钮和硬件按钮之类的控制硬件来控制小程序页面上的功能,将触摸屏的操作交互方式转化为实体按键的操作交互方式,从而实现了对车载终端上的小程序的安全控制,无需小程序的研发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
在一个示意性的例子中,如图12所示,上述基于车载终端的小程序控制方法包括如下步骤:
组件监控阶段:
S51,启动小程序页面;
S52,根据是否自定义选中样式加载对应的CSS;
当小程序采用默认的焦点选中样式时,宿主程序加载宿主程序提供的默认的焦点选中样式对应的CSS;当小程序采用自定义的焦点选中样式时,宿主程序加载小程序提供的自定义的焦点选中样式对应的CSS。
S53,加载组件监控脚本;
宿主程序加载组件监控脚本。组件监控脚本是用于监控小程序页面中的组件的脚本。该组件监控脚本可以命名为KeyRuntime。
S54,注册页面变化监控;
小程序采用组件监控脚本监控小程序页面中的组件,以及在小程序页面发生变化时,宿主程序更新对小程序页面中的组件的监控。
S55,扫描所有绑定有响应事件的组件列表;
绑定有响应事件的组件是具有人机交互能力的组件。组件监控脚本扫描所有绑定有响应事件的组件,得到组件列表。
S56,确定组件是否可选以及选择顺序,生成结构化的数据;
组件监控脚本确定组件是否可选以及选择顺序,将具有可选择能力的组件按照选择顺序生成结构化的数据。
选中逻辑阶段:
S57,接收控制硬件上的按键输入,将按键输入分发到位于窗口顶层的小程序;
宿主程序接收控制硬件上的按键输入,宿主程序将按键输入分发到位于窗口顶层的小程序。
S58,检测是否有native弹窗;
native弹窗是小程序调用宿主程序的弹窗框架绘制的弹窗。当存在native弹窗时,进入S59;当不存在native弹窗时,进入S60;
S59,弹框的焦点管理及样式绘制;
在存在有弹窗时,宿主程序控制对弹窗的选择焦点进行管理,也即优先对弹窗内的组件显示焦点选中样式,并按照默认或自定义的焦点选中样式的绘制方式,对弹窗内的组件绘制焦点选中样式。
S60,是否后退事件;
在不存在有弹窗时,宿主程序判断按键输入是否为后退按钮上触发的后退事件。若是后退事件,则进入S61;若不是后退事件,则进入S62。
S61,是否在小程序的主页(Home)页面;
宿主程序判断当前的小程序页面,是否在小程序的主页页面。若处于主页页面,则进入S62;若不处于主页页面,则进入S63。
S62,关闭当前小程序;
S63,后退至上一页面。
在不处于主页页面时,宿主程序控制小程序将当前的小程序页面,后退至上一页面。
S64,是否确认事件;
宿主程序判断按键输入是否为确认按钮上触发的确认事件。若是确认事件,则进入S65;若不是确认事件,则进入S66。
S65,在显示有焦点选中样式的组件上模拟点击操作;
该模拟点击操作用于触发被选中的组件对应的响应事件。
S66,从结构化数据中计算新的选择节点;
新的选择节点是指被选择焦点新选中的组件所对应的DOM节点。比如在按键输入是第一选择操作时,将结构化的数据中的上一个组件确定为新选中的组件;在按键输入是第二选择操作时,将结构化的数据中的下一个组件确定为新选中的组件。
S67,修改组件属性,让焦点选中样式匹配到新的选择节点。
小程序修改新的选择节点的组件属性,将新的选择节点对应的组件显示为焦点选中样式。可选地,小程序修改新的选择节点的组件属性为焦点选中属性。
S68,点击组件或者页面变化。
在点击组件或者页面变化的情况下,由于小程序页面的显示内容发生改变,宿主程序重新执行组件监控阶段的一个或多个步骤。
以下为本申请的装置实施例,对于装置实施例中未详细描述的细节,可以参考如上所述的方法实施例。
图13示出了本申请一个示例性实施例提供的小程序控制装置的框图,该装置可以应用在车载终端中,或实现成为车载终端的全部或一部分。所述装置包括:
显示模块1320,显示小程序页面,所述小程序页面包括至少两个组件;
交互模块1340,用于响应于所述控制硬件上触发的选择操作,将所述至少两个组件中被选中的第一组件显示为焦点选中样式,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;
所述交互模块1340,用于响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件。
在本申请实施例的一个可选设计中,交互模块1340包括:
选中显示子模块1344,用于响应于所述控制硬件上触发的第一选择操作,将交互组件列表中历史选中的组件的上一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式;
选中显示子模块1344,用于响应于所述控制硬件上触发的第二选择操作,将所述交互组件列表中历史选中的组件的下一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式。
其中,所述交互组件列表为小程序页面中具有交互能力的组件列表。
在本申请实施例的一个可选设计中,所述装置还包括:组件监控子模块1342,用于监控所述小程序页面中具有人机交互功能的目标组件,所述小程序页面包括不同的页面区域,所述不同的页面区域对应不同层级,所述页面区域内包括至少一个组件;根据所述目标组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级,对所述目标组件进行排序得到所述交互组件列表;
其中,所述层间优先级用于表示所述第一层级在所述不同层级之间的优先级,所述层内优先级用于表示所述目标组件在所述第一层级内的所述至少一个组件之间的优先级。
在本申请实施例的一个可选设计中,组件监控子模块1342,用于监控所述小程序页面的DOM树中的目标节点;从所述目标节点中扫描出绑定有响应装置的候选组件列表;将所述候选组件列表中满足筛选条件的组件,确定为所述具有人机交互功能的目标组件;所述筛选条件包括如下至少一个条件:
显示层级位于窗口顶层;
处于所述小程序页面的可滚动窗口内;
具有可选择的组件属性。
在本申请实施例的一个可选设计中,所述装置还包括执行模块1360;
选中显示子模块1344,用于在所述小程序页面上显示有本地应用的弹窗的情况下,响应于所述控制硬件上触发的选择操作,将所述弹窗中被选中的第二组件显示为所述焦点选中样式;
执行模块1360,用于响应于所述控制硬件上触发的确认操作,将所述第二组件设置为选中状态,和/或,执行所述第二组件对应的响应事件。
在本申请实施例的一个可选设计中,所述控制硬件是物理旋钮,所述选择操作是所述物理旋钮上触发的旋转操作;或,所述控制硬件是物理拨钮,所述选择操作是所述物理拨钮上触发的拨动操作。
在本申请实施例的一个可选设计中,执行模块1360,用于响应于所述控制硬件上触发的确认操作,在所述第一组件上执行模拟点击事件,所述模拟点击事件用于触发所述小程序执行所述第一组件对应的响应事件。
在本申请实施例的一个可选设计中,所述车载终端还包括触摸屏,所述装置还包括:
执行模块1360,用于响应于所述触摸屏上的触摸操作,将位于所述触摸操作的触摸位置上的第三组件显示为所述焦点选中样式。
在本申请实施例的一个可选设计中,执行模块1360,用于响应于所述控制硬件上触发的后退操作,后退至所述小程序页面的上一页面,或,关闭所述小程序页面。
在本申请实施例的一个可选设计中,所述焦点选中样式是所述车载终端中的宿主程序提供的默认样式,所述宿主程序用于为所述小程序页面对应的小程序提供运行环境;或,所述焦点选中样式是所述小程序提供的自定义样式。
综上所述,本实施例提供的装置,通过采用诸如物理旋钮、物理拨钮和硬件按钮之类的控制硬件来控制小程序页面上的功能,将触摸屏的操作交互方式转化为实体按键的操作交互方式,从而实现了对车载终端上的小程序的安全控制,无需小程序的研发人员对小程序进行特定规范的改造,即可针对所有小程序使用该功能,提供了一种低成本地将小程序适配到车载终端上的适配方案。
本实施例提供的装置,通过对小程序页面中的组件进行监控,能够准确得到具有人机交互能力的组件列表,作为可供顺序选择的组件列表,提供了小程序在初始设计下并未提供的组件顺序选择功能,使得用户能够通过物理控制组件来进行组件的顺序选择。
本实施例提供的装置,通过提供默认或自定义的焦点选择样式,能够在用户选择某一个组件后,在小程序页面上对该组件进行突出显示,从而响应用户的人机交互,让用户在物理控制组件上的交互操作得到视觉上的响应回复。
图14示出了本申请一个示例性实施例提供的车载终端1400的结构框图。车载终端1400包括:控制芯片1420、与所述控制芯片1420相连的显示屏1440和控制硬件1460;
所述显示屏1440,用于在控制芯片的控制下显示小程序页面,所述小程序页面包括至少两个组件;
所述控制硬件1460,用于响应于选择操作向所述控制芯片上报选择事件,以及响应于确认操作向所述控制芯片上报确认事件;
所述控制芯片1420,用于在接收到所述选择事件的情况下,控制所述显示屏将所述至少两个组件中被选中的第一组件显示为焦点选中样式,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态;
所述控制芯片1420,还用于在接收到所述确认事件的情况下,根据所述确认操作将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件。
在本实施例的可选设计中,所述控制硬件包括所述车载终端的中控台按钮,所述中控台按钮支持旋转控制、拨动控制和按压控制;
所述中控台按钮,用于执行如下步骤中的至少一个:
响应于旋转操作,向所述控制芯片上报所述选择事件;
响应于拨动操作,向所述控制芯片上报所述选择事件;
响应于按压操作,向所述控制芯片上报所述确认事件。
在本实施例的可选设计中,所述控制芯片1420,还用于在接收到所述控制硬件上报的第一选择事件的情况下,将交互组件列表中历史选中的组件的上一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式;和/或,在接收到所述控制硬件上报的第二选择事件,将所述交互组件列表中历史选中的组件的下一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式;
其中,所述交互组件列表为所述小程序页面中具有交互能力的组件列表。
在本实施例的可选设计中,所述控制芯片1420,还用于监控所述小程序页面中具有人机交互功能的目标组件,所述小程序页面包括不同的页面区域,所述不同的页面区域对应不同层级,所述页面区域内包括至少一个组件;根据所述目标组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级,对所述目标组件进行排序得到所述交互组件列表;
其中,所述层间优先级用于表示所述第一层级在所述不同层级之间的优先级,所述层内优先级用于表示所述目标组件在所述第一层级内的所述至少一个组件之间的优先级。
在本实施例的可选设计中,所述控制芯片1420,还用于监控所述小程序页面的DOM树中的目标节点;从所述目标节点中扫描出绑定有响应方法的候选组件列表;将所述候选组件列表中满足筛选条件的组件,确定为所述具有人机交互功能的目标组件;所述筛选条件包括如下至少一个条件:
显示层级位于窗口顶层;
处于所述小程序页面的可滚动窗口内;
具有可选择的组件属性。
在本实施例的可选设计中,所述控制芯片1420,还用于在所述小程序页面上显示有弹窗且接收到所述控制硬件上报的选择事件的情况下,将所述弹窗中被选中的第二组件显示为所述焦点选中样式;在接收到所述控制硬件上报的选择事件的情况下,将所述第二组件设置为所述选中状态,和/或,执行所述第二组件对应的响应事件。
在本实施例的可选设计中,所述控制芯片1420,还用于在所述控制硬件上触发的确认事件的情况下,将所述第一组件设置为选中状态且在所述第一组件上执行模拟点击事件,所述模拟点击事件用于触发所述小程序执行所述第一组件对应的响应事件。
在本实施例的可选设计中,所述显示屏是触摸屏,所述控制芯片1420,还用于在接收到所述触摸屏上的触摸事件的情况下,将所述触摸事件所指示的触摸位置上的第三组件显示为所述焦点选中样式。
在本实施例的可选设计中,所述控制芯片1420,还用于在接收到所述控制硬件上触发的后退事件的情况下,后退至所述小程序页面的上一页面,或,关闭所述小程序页面。
在本实施例的可选设计中,所述焦点选中样式是所述车载终端中的宿主程序提供的默认样式,所述宿主程序用于为所述小程序页面对应的小程序提供运行环境;或,所述焦点选中样式是所述小程序提供的自定义样式。
图15示出了本申请一个示例性实施例提供的车载终端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和电源1509中的至少一种。
外围设备接口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)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在显示屏1505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1501进行处理。此时,显示屏1505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1505可以为一个,设置车载终端1500的前面板;在另一些实施例中,显示屏1505可以为至少两个,分别设置在车载终端1500的不同表面或呈折叠设计;在再一些实施例中,显示屏1505可以是柔性显示屏,设置在车载终端1500的弯曲表面上或折叠面上。甚至,显示屏1505还可以设置成非矩形的不规则图形,也即异形屏。显示屏1505可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1506用于采集图像或视频。可选地,摄像头组件1506包括前置摄像头和后置摄像头。通常,前置摄像头设置在车载终端的前面板,后置摄像头设置在车载终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1501进行处理,或者输入至射频电路1504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在车载终端1500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1501或射频电路1504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1507还可以包括耳机插孔。
定位组件1508用于定位车载终端1500的当前地理位置,以实现导航或LBS(Location Based Service,基于位置的服务)。定位组件1508可以是基于美国的GPS(Global Positioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源1509用于为车载终端1500中的各个组件进行供电。电源1509可以是交流电、直流电、一次性电池或可充电电池。当电源1509包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,车载终端1500还包括有一个或多个传感器1510。该一个或多个传感器1510包括但不限于:加速度传感器1511、陀螺仪传感器1512、压力传感器1513、指纹传感器1514、光学传感器1515以及接近传感器1516。
加速度传感器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采集到的指纹识别用户的身份,或者,由指纹传感器1514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1514可以被设置车载终端1500的正面、背面或侧面。当车载终端1500上设置有物理按键或厂商Logo时,指纹传感器1514可以与物理按键或厂商Logo集成在一起。
光学传感器1515用于采集环境光强度。在一个实施例中,处理器1501可以根据光学传感器1515采集的环境光强度,控制触摸显示屏1505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1505的显示亮度;当环境光强度较低时,调低触摸显示屏1505的显示亮度。在另一个实施例中,处理器1501还可以根据光学传感器1515采集的环境光强度,动态调整摄像头组件1506的拍摄参数。
接近传感器1516,也称距离传感器,通常设置在车载终端1500的前面板。接近传感器1516用于采集用户与车载终端1500的正面之间的距离。在一个实施例中,当接近传感器1516检测到用户与车载终端1500的正面之间的距离逐渐变小时,由处理器1501控制触摸显示屏1505从亮屏状态切换为息屏状态;当接近传感器1516检测到用户与车载终端1500的正面之间的距离逐渐变大时,由处理器1501控制触摸显示屏1505从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图15中示出的结构并不构成对车载终端1500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (11)

1.一种基于车载终端的小程序控制方法,其特征在于,所述车载终端具有控制硬件,所述方法包括:
显示小程序页面,所述小程序页面包括至少两个组件,所述小程序是依赖于宿主程序运行的一种程序,所述小程序是针对触摸屏的操作交互方式设计的,所述小程序页面对应有文档对象化模型DOM树;
响应于所述控制硬件上触发的第一选择操作,将交互组件列表中历史选中的组件的上一个组件确定为被选中的第一组件,以及将所述第一组件显示为焦点选中样式;和/或,响应于所述控制硬件上触发的第二选择操作,将所述交互组件列表中历史选中的组件的下一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式;其中,所述交互组件列表为所述小程序页面中具有交互能力的组件列表,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态,其中,所述车载终端上的所述宿主程序中提供有选中控制逻辑,所述小程序通过所述选中控制逻辑对所述选择操作进行响应,所述控制硬件包括硬件旋钮、硬件拨钮和硬件触摸板中的至少一种,所述宿主程序中提供有组件监控逻辑,所述组件监控逻辑用于监控所述小程序页面对应的DOM树中的目标节点,所述宿主程序中提供有包括所述至少两个组件的交互组件列表,所述交互组件列表是根据所述至少两个组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级确定的;所述宿主程序支持运行第一小程序和第二小程序,所述第一小程序和所述第二小程序在运行小程序视图层单元和小程序逻辑层单元时均需经过宿主程序原生单元转发;
响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件;
在检测到原生弹窗的情况下,所述宿主程序优先对所述原生弹窗内的组件显示所述焦点选中样式,响应于所述控制硬件上触发的选择操作,将所述原生弹窗中被选中的第二组件显示为所述焦点选中样式;响应于所述控制硬件上触发的确认操作,将所述第二组件设置为所述选中状态,和/或,执行所述第二组件对应的响应事件,所述原生弹窗是所述小程序调用所述宿主程序的弹窗框架绘制得到的;
其中,所述交互组件列表通过如下方式获取:
监控所述小程序页面的DOM树中的所述目标节点;
从所述目标节点中扫描出绑定有响应方法的候选组件列表;
将所述候选组件列表中满足筛选条件的组件,确定为具有人机交互功能的目标组件;所述筛选条件包括如下至少一个条件:显示层级位于窗口顶层;处于所述小程序页面的可滚动窗口内;具有可选择的组件属性,所述小程序页面包括不同的页面区域,所述不同的页面区域对应不同层级,所述页面区域内包括至少一个组件;
根据所述目标组件所在的第一层级的层间优先级和层内优先级,对所述目标组件进行排序得到所述交互组件列表;
其中,所述层间优先级用于表示所述第一层级在所述不同层级之间的优先级,所述层内优先级用于表示所述目标组件在所述第一层级内的所述至少一个组件之间的优先级。
2.根据权利要求1所述的方法,其特征在于,
所述控制硬件是物理旋钮,所述选择操作是所述物理旋钮上触发的旋转操作;
或,
所述控制硬件是物理拨钮,所述选择操作是所述物理拨钮上触发的拨动操作。
3.根据权利要求1所述的方法,其特征在于,所述响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态且执行所述第一组件对应的响应事件,包括:
响应于所述控制硬件上触发的确认操作,将所述第一组件设置为选中状态且在所述第一组件上执行模拟点击事件,所述模拟点击事件用于触发所述小程序执行所述第一组件对应的响应事件。
4.根据权利要求1所述的方法,其特征在于,所述车载终端还包括触摸屏,所述方法还包括:
响应于所述触摸屏上的触摸操作,将位于所述触摸操作的触摸位置上的第三组件显示为所述焦点选中样式。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述控制硬件上触发的后退操作,后退至所述小程序页面的上一页面,或,关闭所述小程序页面。
6.根据权利要求1所述的方法,其特征在于,
所述焦点选中样式是所述车载终端中的宿主程序提供的默认样式,所述宿主程序用于为所述小程序页面对应的小程序提供运行环境;
或,
所述焦点选中样式是所述小程序提供的自定义样式。
7.一种基于车载终端的小程序控制方法,其特征在于,所述车载终端具有控制芯片、与所述控制芯片相连的显示屏和控制硬件,所述方法包括:
所述控制芯片控制所述显示屏显示小程序页面,所述小程序页面包括至少两个组件,所述小程序是依赖于宿主程序运行的一种程序,所述小程序是针对触摸屏的操作交互方式设计的,所述小程序页面对应有文档对象化模型DOM树;
在接收到所述控制硬件上报的第一选择事件的情况下,所述控制芯片控制所述显示屏将交互组件列表中历史选中的组件的上一个组件确定为被选中的第一组件,以及将所述第一组件显示为焦点选中样式;和/或,在接收到所述控制硬件上报的第二选择事件的情况下,所述控制芯片控制所述显示屏将所述交互组件列表中历史选中的组件的下一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式;其中,所述交互组件列表为所述小程序页面中具有交互能力的组件列表,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态,其中,所述车载终端上的所述宿主程序中提供有选中控制逻辑,所述小程序通过所述选中控制逻辑对选择操作进行响应,所述控制硬件包括硬件旋钮、硬件拨钮和硬件触摸板中的至少一种,所述宿主程序中提供有组件监控逻辑,所述组件监控逻辑用于监控所述小程序页面对应的DOM树中的目标节点,所述宿主程序中提供有包括所述至少两个组件的交互组件列表,所述交互组件列表是根据所述至少两个组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级确定的;所述宿主程序支持运行第一小程序和第二小程序,所述第一小程序和所述第二小程序在运行小程序视图层单元和小程序逻辑层单元时均需经过宿主程序原生单元转发;
在接收到所述控制硬件上报的确认事件的情况下,所述控制芯片将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件;
在检测到原生弹窗的情况下,所述控制芯片控制所述宿主程序优先对所述原生弹窗内的组件显示所述焦点选中样式,响应于所述控制硬件上触发的选择操作,将所述原生弹窗中被选中的第二组件显示为所述焦点选中样式;响应于所述控制硬件上触发的确认操作,将所述第二组件设置为所述选中状态,和/或,执行所述第二组件对应的响应事件,所述原生弹窗是所述小程序调用所述宿主程序的弹窗框架绘制得到的;
其中,所述交互组件列表通过如下方式获取:
所述控制芯片监控所述小程序页面的DOM树中的所述目标节点;
所述控制芯片从所述目标节点中扫描出绑定有响应方法的候选组件列表;
所述控制芯片将所述候选组件列表中满足筛选条件的组件,确定为具有人机交互功能的目标组件;所述筛选条件包括如下至少一个条件:显示层级位于窗口顶层;处于所述小程序页面的可滚动窗口内;具有可选择的组件属性,所述小程序页面包括不同的页面区域,所述不同的页面区域对应不同层级,所述页面区域内包括至少一个组件;
所述控制芯片根据所述目标组件所在的第一层级的层间优先级和层内优先级,对所述目标组件进行排序得到所述交互组件列表;
其中,所述层间优先级用于表示所述第一层级在所述不同层级之间的优先级,所述层内优先级用于表示所述目标组件在所述第一层级内的所述至少一个组件之间的优先级。
8.根据权利要求7所述的方法,其特征在于,所述控制硬件包括所述车载终端的中控台按钮,所述中控台按钮支持旋转控制、拨动控制和按压控制;
所述选择事件是所述中控台按钮在接收到旋转操作时上报的事件;和/或,所述选择事件是所述中控台按钮在接收到拨动操作时上报的事件;
所述确认事件是所述中控台按钮在接收到按压操作时上报的事件。
9.一种车载终端,其特征在于,所述车载终端包括:控制芯片、与所述控制芯片相连的显示屏和控制硬件;
所述显示屏,用于在控制芯片的控制下显示小程序页面,所述小程序页面包括至少两个组件,所述小程序是依赖于宿主程序运行的一种程序,所述小程序是针对触摸屏的操作交互方式设计的,所述小程序页面对应有文档对象化模型DOM树;
所述控制硬件,用于响应于选择操作向所述控制芯片上报选择事件,以及响应于确认操作向所述控制芯片上报确认事件;
所述控制芯片,用于在接收到所述控制硬件上报的第一选择事件的情况下,控制所述显示屏将交互组件列表中历史选中的组件的上一个组件确定为被选中的第一组件,以及将所述第一组件显示为焦点选中样式;和/或,在接收到所述控制硬件上报的第二选择事件的情况下,控制所述显示屏将所述交互组件列表中历史选中的组件的下一个组件确定为所述被选中的第一组件,以及将所述第一组件显示为所述焦点选中样式;其中,所述交互组件列表为所述小程序页面中具有交互能力的组件列表,所述焦点选中样式用于指示所述第一组件处于被选择焦点选中的预选状态,其中,所述车载终端上的所述宿主程序中提供有选中控制逻辑,所述小程序通过所述选中控制逻辑对所述选择操作进行响应,所述控制硬件包括硬件旋钮、硬件拨钮和硬件触摸板中的至少一种,所述宿主程序中提供有组件监控逻辑,所述组件监控逻辑用于监控所述小程序页面对应的DOM树中的目标节点,所述宿主程序中提供有包括所述至少两个组件的交互组件列表,所述交互组件列表是根据所述至少两个组件所在的第一层级的层间优先级和层内优先级中的至少一种优先级确定的;所述宿主程序支持运行第一小程序和第二小程序,所述第一小程序和所述第二小程序在运行小程序视图层单元和小程序逻辑层单元时均需经过宿主程序原生单元转发;
所述控制芯片,还用于在接收到所述确认事件的情况下,根据所述确认操作将所述第一组件设置为选中状态,和/或,执行所述第一组件对应的响应事件;
所述控制芯片,还用于在检测到原生弹窗的情况下,控制所述宿主程序优先对所述原生弹窗内的组件显示所述焦点选中样式,响应于所述控制硬件上触发的选择操作,将所述原生弹窗中被选中的第二组件显示为所述焦点选中样式;响应于所述控制硬件上触发的确认操作,将所述第二组件设置为所述选中状态,和/或,执行所述第二组件对应的响应事件,所述原生弹窗是所述小程序调用所述宿主程序的弹窗框架绘制得到的;
其中,所述交互组件列表通过如下方式获取:
所述控制芯片监控所述小程序页面的DOM树中的所述目标节点;
所述控制芯片从所述目标节点中扫描出绑定有响应方法的候选组件列表;
所述控制芯片将所述候选组件列表中满足筛选条件的组件,确定为具有人机交互功能的目标组件;所述筛选条件包括如下至少一个条件:显示层级位于窗口顶层;处于所述小程序页面的可滚动窗口内;具有可选择的组件属性,所述小程序页面包括不同的页面区域,所述不同的页面区域对应不同层级,所述页面区域内包括至少一个组件;
所述控制芯片根据所述目标组件所在的第一层级的层间优先级和层内优先级,对所述目标组件进行排序得到所述交互组件列表;
其中,所述层间优先级用于表示所述第一层级在所述不同层级之间的优先级,所述层内优先级用于表示所述目标组件在所述第一层级内的所述至少一个组件之间的优先级。
10.根据权利要求9所述的车载终端,其特征在于,所述控制硬件包括所述车载终端的中控台按钮,所述中控台按钮支持旋转控制、拨动控制和按压控制;
所述中控台按钮,用于执行如下步骤中的至少一个:
响应于旋转操作,向所述控制芯片上报所述选择事件;
响应于拨动操作,向所述控制芯片上报所述选择事件;
响应于按压操作,向所述控制芯片上报所述确认事件。
11.一种车载终端,其特征在于,所述车载终端包括存储器、处理器和与所述处理器相连的控制硬件;
所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至8任一所述的小程序控制方法。
CN202011113028.8A 2020-10-16 2020-10-16 基于车载终端的小程序控制方法、装置、设备及存储介质 Active CN112394869B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011113028.8A CN112394869B (zh) 2020-10-16 2020-10-16 基于车载终端的小程序控制方法、装置、设备及存储介质
PCT/CN2021/120995 WO2022078199A1 (zh) 2020-10-16 2021-09-27 小程序控制方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011113028.8A CN112394869B (zh) 2020-10-16 2020-10-16 基于车载终端的小程序控制方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112394869A CN112394869A (zh) 2021-02-23
CN112394869B true CN112394869B (zh) 2022-07-29

Family

ID=74596011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011113028.8A Active CN112394869B (zh) 2020-10-16 2020-10-16 基于车载终端的小程序控制方法、装置、设备及存储介质

Country Status (2)

Country Link
CN (1) CN112394869B (zh)
WO (1) WO2022078199A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112394869B (zh) * 2020-10-16 2022-07-29 腾讯科技(深圳)有限公司 基于车载终端的小程序控制方法、装置、设备及存储介质
CN114407796A (zh) * 2022-01-21 2022-04-29 腾讯科技(深圳)有限公司 车载终端的控制方法、装置、设备及存储介质
CN114238821B (zh) * 2022-02-18 2022-04-29 北京金堤科技有限公司 弹窗处理方法及装置
CN116700694B (zh) * 2023-08-07 2024-01-26 深圳凡泰极客科技有限责任公司 小程序引擎

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1749944A (zh) * 2004-09-15 2006-03-22 哈曼贝克自动系统股份有限公司 车载多媒体系统和车载多媒体系统的操作方法
CN102375851A (zh) * 2010-08-23 2012-03-14 中国移动通信有限公司 一种显示页面的方法及设备
CN107193450A (zh) * 2017-05-25 2017-09-22 北京三快在线科技有限公司 页面元素选择方法及装置
CN110382280A (zh) * 2017-01-06 2019-10-25 本田技研工业株式会社 用于控制车辆信息系统的系统和方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5308509B2 (ja) * 2011-04-15 2013-10-09 シャープ株式会社 メニュー画面の表示制御方法
CN102981689B (zh) * 2011-09-07 2019-07-02 腾讯科技(深圳)有限公司 一种实现默认焦点定位的方法、装置和系统
CN106843643B (zh) * 2016-12-30 2020-04-28 百度在线网络技术(北京)有限公司 页面处理方法及移动终端
CN109375918A (zh) * 2018-11-23 2019-02-22 天津字节跳动科技有限公司 小程序的界面渲染方法、装置、电子设备和存储介质
CN110704136B (zh) * 2019-09-27 2023-06-20 北京百度网讯科技有限公司 小程序组件的渲染方法、客户端、电子设备及存储介质
CN111580879A (zh) * 2020-04-30 2020-08-25 北京字节跳动网络技术有限公司 小程序的运行方法、装置、电子设备及计算机存储介质
CN111666011B (zh) * 2020-06-05 2023-07-07 阿波罗智联(北京)科技有限公司 页面焦点显示方法及装置
CN112394869B (zh) * 2020-10-16 2022-07-29 腾讯科技(深圳)有限公司 基于车载终端的小程序控制方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1749944A (zh) * 2004-09-15 2006-03-22 哈曼贝克自动系统股份有限公司 车载多媒体系统和车载多媒体系统的操作方法
CN102375851A (zh) * 2010-08-23 2012-03-14 中国移动通信有限公司 一种显示页面的方法及设备
CN110382280A (zh) * 2017-01-06 2019-10-25 本田技研工业株式会社 用于控制车辆信息系统的系统和方法
CN107193450A (zh) * 2017-05-25 2017-09-22 北京三快在线科技有限公司 页面元素选择方法及装置

Also Published As

Publication number Publication date
WO2022078199A1 (zh) 2022-04-21
CN112394869A (zh) 2021-02-23

Similar Documents

Publication Publication Date Title
CN112394869B (zh) 基于车载终端的小程序控制方法、装置、设备及存储介质
CN111597008A (zh) 弹窗管理方法、装置、终端及存储介质
CN113204298B (zh) 显示发布进度的方法、装置、电子设备及存储介质
CN113127130B (zh) 页面跳转方法、装置及存储介质
CN112990509B (zh) 预约码显示方法、装置、设备及存储介质
CN113613028B (zh) 直播数据处理方法、装置、终端、服务器及存储介质
CN112230914A (zh) 小程序的制作方法、装置、终端及存储介质
CN111897465B (zh) 弹窗显示方法、装置、设备及存储介质
CN112163406A (zh) 互动消息显示方法、装置、计算机设备及存储介质
CN111694478A (zh) 内容展示方法、装置、终端及存储介质
CN112825040A (zh) 用户界面的显示方法、装置、设备及存储介质
US20230406227A1 (en) Vehicle terminal control method, computer device, and storage medium
CN111752658B (zh) 管理功能教程的方法、装置、设备以及存储介质
CN112988254B (zh) 管理硬件设备的方法、装置和设备
CN111383251B (zh) 一种跟踪目标对象的方法、装置、监控设备和存储介质
CN111782950A (zh) 样本数据集获取方法、装置、设备及存储介质
CN111580892A (zh) 一种业务组件调用的方法、装置、终端和存储介质
CN111694535B (zh) 闹钟信息显示方法及装置
CN112732133B (zh) 消息处理的方法、装置、电子设备及存储介质
CN114140105A (zh) 资源转移方法、装置、设备及计算机可读存储介质
CN114498827A (zh) 清洁机器人的运行方法、装置、电子设备及介质
CN110134393B (zh) 一种处理操作信号的方法和装置
CN113393608A (zh) 业务处理方法、装置、终端及存储介质
CN113190302A (zh) 信息显示方法、装置、电子设备及存储介质
CN114168369A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40038269

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant