CN108681478A - 智能交互平板工具栏的通信方法、装置及计算机设备 - Google Patents
智能交互平板工具栏的通信方法、装置及计算机设备 Download PDFInfo
- Publication number
- CN108681478A CN108681478A CN201810284511.9A CN201810284511A CN108681478A CN 108681478 A CN108681478 A CN 108681478A CN 201810284511 A CN201810284511 A CN 201810284511A CN 108681478 A CN108681478 A CN 108681478A
- Authority
- CN
- China
- Prior art keywords
- toolbar
- application
- screen
- interface
- secondary screen
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Abstract
本发明涉及智能交互平板工具栏的通信方法、装置、计算机设备及存储介质,应用于信息交互技术领域。所述方法包括:接收请求方应用发起的接口调用指令,所述接口调用指令中携带有请求调用的目标接口信息,目标接口属于工具栏应用提供的功能函数编程接口;根据所述调用指令确定请求方应用请求调用的目标接口;对目标接口对应的功能函数进行本地调用;检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。通过本发明有利于降低智能交互平板中请求方应用与工具栏应用之间的通信难度。
Description
技术领域
本发明涉及智能交互平板技术领域,特别是涉及智能交互平板工具栏的通信方法、装置及计算机设备。
背景技术
智能交互平板,又称交互智能平板,是通过触控技术对显示在显示平板(显示屏)上的内容进行操控和实现人机交互操作的一体化设备。智能交互平板通过工具栏提供若干个控件(也称作功能控件),用户操作工具栏中的控件,可实现智能交互平板应用之间的切换,例如,通过切换,使得智能交互平板显示的应用界面从书写应用(例如白板应用)的界面切换为视频会议的界面;此外,通过操作工具栏中的控件,还可实现对当前应用界面的内容进行操作,例如,当前应用为白板应用,用户通过操作工具栏中的控件,可实现书写、擦除等操作。
在实现本发明的过程中,发明人发现现有技术中存在如下问题:
工具栏既可以显示在智能交互平板的主屏(也称作大屏或者内屏),也可以切换至智能交互平板的副屏(也称作小屏或者外屏)显示,当工具栏切换至副屏显示时,工具栏与智能交互平板中其他应用之间的通信复杂度较高。
发明内容
基于此,有必要针对现有方式下工具栏副屏显示状态下工具栏与智能交互平板中其他应用之间的通信复杂度较高,提供一种智能交互平板工具栏的通信方法、装置、计算机设备及存储介质。
本发明实施例提供的方案包括:
一方面提供,一种智能交互平板工具栏的通信方法,包括:接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口的信息,所述目标接口属于工具栏应用对外提供的功能函数的编程接口;根据所述接口调用指令确定请求方应用请求调用的目标接口;对目标接口对应的功能函数进行本地调用;检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,还包括:检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,所述接收请求方应用发起的接口调用指令之前,还包括:确定工具栏应用包含的与所述请求方应用关联的功能函数;对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用;将所述编程接口的信息提供给所述请求方应用。
在其中一个实施例中,所述将所述编程接口的信息提供给所述请求方应用,包括:根据所述编程接口生成对应的软件开发工具包(SDK),将所述SDK的信息提供给所述请求方应用。
在其中一个实施例中,所述工具栏应用提供的功能函数编程接口,包括以下至少一种:增加工具栏控件的第一编程接口、删减工具栏控件的第二编程接口、替换工具栏控件的第三编程接口中。
在其中一个实施例中,更新副屏/主屏显示的工具栏,包括以下情况的至少一种:在副屏/主屏当前显示的工具栏中增加新的、与所述请求方应用对应的控件;将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件删除;将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件,替换为与所述请求方应用对应的控件。
在其中一个实施例中,还包括:建立工具栏应用与请求方应用的远程过程调用(RPC)通信连接;其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。
在其中一个实施例中,所述接收请求方应用发起的接口调用指令,包括以下情况的至少一种:
接收请求方应用发起的调用第一编程接口的第一RPC调用指令;
接收请求方应用发起的调用第二编程接口的第二RPC调用指令;
接收请求方应用发起的调用第三编程接口的第三RPC调用指令。
在其中一个实施例中,所述通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏之后,还包括:
检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述副屏显示的工具栏信息;根据所述工具栏信息将副屏显示的工具栏回退至更新前的状态;
所述检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏之后,还包括:
检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述主屏显示的工具栏信息;根据所述工具栏信息将主屏显示的工具栏回退至更新前的状态。
在其中一个实施例中,所述通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果之前,还包括:
将所述功能函数的本地调用结果数据进行转换,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述将所述功能函数的本地调用结果数据进行转换包括:
根据主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装。
在其中一个实施例中,所述根据预设的主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装之前,还包括:
若所述功能函数的本地调用结果数据中包含新增的图片数据,将所述图片数据转换为副屏兼容的图片数据格式。
在其中一个实施例中,所述主屏基于安卓系统,所述工具栏应用提供的功能函数编程接口为标准安卓接口。
在其中一个实施例中,所述副屏基于嵌入式系统;主屏与副屏之间的通信连接为串口连接。
在其中一个实施例中,所述请求方应用包括:安装于智能交互平板中的白板应用、视频会议、投屏应用中的至少一种。
在其中一个实施例中,当请求方应用为白板应用时,更新后的工具栏中的控件包括:书写控件、图形控件、表格控件、擦除控件、返回控件中的至少一个;
和/或,
当请求方应用为视频会议时,更新后的工具栏中的控件包括:录音控件、录屏控件、退出控件中的至少一个;
和/或,
当请求方应用为投屏应用时,更新后的工具栏中的控件包括:投屏选择控件、翻页控件、批注控件、截屏控件、退出播放控件中的至少一个。
在其中一个实施例中,所述通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏之后,还包括:
通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,接收作用于副屏显示的工具栏的触发事件;
生成触发事件对应的回调指令;
向所述请求方应用发送所述回调指令;所述回调指令用于触发所述请求方应用响应所述触发事件。
在其中一个实施例中,向与工具栏应用通信连接的所述请求方应用之外的其他应用广播所述回调指令。
又一方面提供,一种智能交互平板工具栏的通信装置,包括:指令接收模块,用于接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口信息,目标接口属于工具栏应用提供的功能函数编程接口;接口确定模块,用于根据所述调用指令确定请求方应用请求调用的目标接口;函数调用模块,用于对目标接口对应的功能函数进行本地调用;以及,副屏通信模块,用于检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,还包括:
还包括:主屏通信模块,用于检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,还包括:
接口发布模块,用于确定工具栏应用包含的与所述请求方应用关联的功能函数;对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用;将所述编程接口的信息提供给所述请求方应用。
在其中一个实施例中,所述接口发布模块根据所述编程接口生成对应的软件开发工具包(SDK),将所述SDK的信息提供给所述请求方应用。
在其中一个实施例中,所述工具栏应用提供的功能函数编程接口,包括以下至少一种:增加工具栏控件的第一编程接口、删减工具栏控件的第二编程接口、替换工具栏控件的第三编程接口。
在其中一个实施例中,更新副屏/主屏显示的工具栏,包括以下情况的至少一种:
在副屏/主屏当前显示的工具栏中增加新的、与所述请求方应用对应的控件;
将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件删除;
将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件,替换为与所述请求方应用对应的控件。
在其中一个实施例中,还包括:
连接建立模块,用于建立工具栏应用与请求方应用的远程过程调用(RPC)通信连接;其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。
在其中一个实施例中,其特征在于,
所述指令接收模块,用于接收以下指令的至少一种:
接收请求方应用发起的调用第一编程接口的第一RPC调用指令;
接收请求方应用发起的调用第二编程接口的第二RPC调用指令;
接收请求方应用发起的调用第三编程接口的第三RPC调用指令。
在其中一个实施例中,还包括:
异常处理模块,用于在检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述副屏显示的工具栏信息;根据所述工具栏信息将副屏显示的工具栏回退至更新前的状态;
所述异常处理模块,还用于在检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述主屏显示的工具栏信息;根据所述工具栏信息将主屏显示的工具栏回退至更新前的状态。
在其中一个实施例中,所述副屏通信模块,还用于在通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果之前,将所述功能函数的本地调用结果数据进行转换,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述副屏通信模块,根据主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述副屏通信模块,还用于在对所述功能函数的本地调用结果数据进行封装之前,若所述功能函数的本地调用结果数据中包含新增的图片数据,将所述图片数据转换为副屏兼容的图片数据格式。
在其中一个实施例中,所述主屏基于安卓系统,所述工具栏应用提供的功能函数编程接口为标准安卓接口。
在其中一个实施例中,所述副屏基于嵌入式系统;主屏与副屏之间的通信连接为串口连接。
在其中一个实施例中,所述请求方应用包括:安装于智能交互平板中的白板应用、视频会议、投屏应用中的至少一种。
在其中一个实施例中,当请求方应用为白板应用时,更新后的工具栏中的控件包括:书写控件、图形控件、表格控件、擦除控件、返回控件中的至少一个;
和/或,
当请求方应用为视频会议时,更新后的工具栏中的控件包括:录音控件、录屏控件、退出控件中的至少一个;
和/或,
当请求方应用为投屏应用时,更新后的工具栏中的控件包括:投屏选择控件、翻页控件、批注控件、截屏控件、退出播放控件中的至少一个。
在其中一个实施例中,所述的通信装置,还包括:
回调信息检测模块,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,接收作用于副屏显示的工具栏的触发事件;
指令生成模块,用于生成触发事件对应的回调指令;
回调发送模块,用于向所述请求方应用发送所述回调指令;所述回调指令用于触发所述请求方应用响应所述触发事件。
在其中一个实施例中,所述回调发送模块,还用于向与工具栏应用通信连接的所述请求方应用之外的其他应用广播所述回调指令。
又一方面提供,一种智能交互平板,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,还包括主屏和副屏,所述主屏与副屏通信连接;所述处理器执行所述程序时实现上述任一通信方法的步骤。
又一方面提供,一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一通信方法的步骤。
上述实施例的智能交互平板工具栏的通信方法、装置、计算机设备及存储介质,通过接收请求方应用发起的接口调用指令,其中,所述接口调用指令中携带有请求调用的目标接口信息,目标接口属于工具栏应用提供的功能函数编程接口;根据所述调用指令确定请求方应用请求调用的目标接口;对目标接口对应的功能函数进行本地调用;检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。对于请求方应用而言,通过工具栏对外提供的编程接口实现对工具栏的远程调用,无需区分工具栏的显示状态,降低了请求方应用与工具栏应用之间的通信难度,有利于提高请求方应用与工具栏应用之间的通信效率。
附图说明
图1为一个实施例中工具栏的通信方法的应用环境图;
图2为一实施例的工具栏的主屏显示状态的效果示意图;
图3为一实施例的工具栏的副屏显示状态的效果示意图;
图4为一实施例的工具栏的通信方法的示意性流程图;
图5为一实施例的实现工具栏的通信方法的逻辑示意图;
图6为另一实施例的工具栏的通信方法的示意性流程图;
图7为又一实施例的工具栏的通信方法的示意性流程图;
图8为又一实施例的作用于副屏的工具栏触发事件的响应效果示意图;
图9为又一实施例的作用于副屏的工具栏触发事件的响应效果示意图;
图10为一实施例的工具栏的通信装置的示意性结构图;
图11为另一实施例的工具栏的通信装置的示意性结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明实施例提供的智能交互平板工具栏的通信方法,应用于智能交互平板中;智能交互平板的硬件部分由显示模组、智能处理系统(包括控制器)等部分所构成,由整体结构件结合到一起,同时也由专用的软件系统作为支撑,其中显示模组包括显示屏和背光灯组件,其中显示屏包括透明电导层和液晶层等。
显示屏,在本说明书中的实施例中,是指触摸屏、触控屏、触控面板,是一种感应式液晶显示装置,当接触了屏幕上的图形按钮时,屏幕上的触觉反馈系统可根据预先编程的程式驱动各种连结装置,可用以取代机械式的按钮面板,并借由液晶显示画面制造出生动的影音效果。从技术原理来区别触摸屏,可以分为五个基本种类:矢量压力传感技术触摸屏、电阻技术触摸屏、电容技术触摸屏、红外线技术触摸屏、表面声波技术触摸屏。按照触摸屏的工作原理和传输信息的介质,可以把触摸屏分为四个种类:电阻式、电容感应式、红外线式以及表面声波式。
当用户用手指或笔触摸屏幕时,将该点坐标定位,从而实现对智能处理系统的控制,随后通过智能处理系统内置的软件来实现不同的功能应用。
本说明书中所提到的智能交互平板显示某个界面是指智能交互平板的显示屏显示该界面。其中,显示屏包括主屏和副屏;其中,主屏和副屏均可以检测用户的触控操作,本发明实施例中,主屏和副屏的屏幕型号或种类可根据实际情况选定。
参考图1所示,该智能交互平板的内部结构可以如图1所示,包括通过系统总线连接的处理器、存储器、网络接口、主屏、副屏和输入装置。其中,处理器用于提供计算和控制能力;该智能交互平板的存储器包括非易失性存储介质、内存储器,该非易失性存储介质存储有操作系统和计算机程序;该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机程序被处理器执行时以实现一种工具栏的通信方法。网络接口可以用于实现该智能交互平板与外部设备的网络连接,外部设备可以是智能手机或者智能平板,也可以是个人电脑(PC),该网络连接可以是有线网络连接,也可以是无线网络连接;该智能交互平板的主屏、副屏之间通信连接,副屏的设置方式包括但不限于设置在主屏的一侧或者两侧,主屏、副屏可以是相同类型的显示屏,例如均可以是液晶显示屏或者电子墨水显示屏,主屏、副屏也可以是不同类型的显示屏,例如主屏为显示分辨率较高的显示屏,副屏为显示分辨率低于主屏的显示屏;该智能交互平板的输入装置可以是主屏和/或副屏上覆盖的触摸层,也可以是智能交互平板外壳上设置的按键或触控板,还可以是智能交互平板外接的键盘、触控板或鼠标等。
该智能交互平板的工具栏既可以显示在主屏,也可以显示在副屏,用户通过操作工具栏提供的控件,可以实现对智能交互平板当前显示界面的应用进行操作。其中,工具栏的显示方式包括但不限于显示在主屏的一侧或者两侧,显示在主屏一侧时的效果可参考图2所示;工具栏显示在副屏时的效果可参考图3所示,用户操作副屏显示的工具栏控件,可以实现与操作主屏显示的工具栏控件相同的效果。
工具栏提供的控件,包括但不限于图2、图3中示出的控件,根据实际情况,还可以设置其他控件。此外,该智能交互平板中不同的应用可以关联不同的工具栏,不同的工具栏指的是,包括不同控件的工具栏,或者,控件数量不同的工具栏等。由此,智能交互平板在运行不同的应用时,通过主屏或者副屏可显示出不同的工具栏。例如,智能交互平板在运行白板应用时,对应工具栏中的控件可以为但不限于以下控件:书写控件、字体转换控件、图形转换控件、表格展示控件、组织架构展示控件、笔迹粗细选择控件、擦除控件、翻页控件、颜色控件。智能交互平板在运行投屏应用时,对应工具栏中的控件可以为但不限于以下控件:无线投屏选择控件、翻页控件、退出播放控件、批注控件、截屏控件、录音控件、录屏控件、计时控件。
可选地,白板应用对应的工具栏中,除了包括白板功能相关的控件,还可以包括其他控件,例如,包括用于切换至系统默认界面的控件、用于切换至其他应用的控件(例如用于切换至投屏应用的控件、用于切换至PPT应用的控件、用于切换至视频会议模式的控件等)。当用于切换至系统默认界面的控件被触发之后,智能交互平板显示系统默认界面。系统默认界面上有多种应用的图标或文字等用于启动应用的符号。用户用手或笔触摸某个应用的图标,则智能交互平板显示该应用的界面。例如,用户用手或笔触摸视频会议模式的图标后,智能交互平板将切换至显示视频会议应用,在主屏中显示出视频会议的界面。
可以理解的,投屏应用对应的工具栏中,除了包括投屏功能相关的控件,同样还可以包括其他控件。例如,包括用于切换至系统默认界面的控件、用于切换至其他应用的控件。
该智能交互平板中的应用类型可以包括安卓模块应用类型,如图2、图3中所示的应用(白板应用、文稿展示)属于安卓模块应用类型;此外还可以包括计算机模块应用类型,例如投屏应用。不同应用类型的应用、或者属于相同类型的不同应用,对应的工具栏可以不同,例如,智能交互平板在运行白板时通过主屏或者副屏显示的工具栏,可以不同于该智能交互平板在进行视频会议时通过主屏或者副屏显示的工具栏。
其中,副屏的数量可以是一个,也可以是多个,当副屏为多个时,工具栏可以显示在多个副屏中的一个副屏,也可以将当前的工具栏显示在每个副屏,以方便位于不同位置的用户操作。
基于上述应用环境,在一个实施例中,如图4所示,从智能交互平板工具栏应用的角度,提供了一种智能交互平板工具栏的通信方法,其中方法步骤的执行主体均可以是智能交互平板的工具栏应用,工具栏应用可以控制通过工具栏显示出的控件数量和控件类型,还可以控制工具栏的显示方式,包括主屏显示或者副屏显示,还可以控制工具栏隐藏等。参考图4所示,该智能交互平板工具栏的通信方法包括以下步骤:
S11,接收请求方应用发起的接口调用指令,所述接口调用指令中携带有请求调用的目标接口的信息,目标接口属于工具栏应用提供的功能函数的编程接口。
其中,请求方应用可以是智能交互平板中涉及工具栏操作的任何应用,例如白板应用、文稿展示、视频会议、投屏应用等应用。所述请求方应用包括但不限于安装于智能交互平板中的白板应用、视频会议和投屏应用。
一般地,智能交互平板中设置有默认工具栏,在智能交互平板开机运行时,通过主屏显示系统默认界面,并通过主屏或者副屏显示默认工具栏;此后,在智能交互平板接收到用于触发某一应用的指令时,则需调出该应用对应的工具栏进行显示,即从默认工具栏切换为与该应用对应的工具栏。相应地,在智能交互平板接收到用于触发某一应用的指令时,该应用可向工具栏应用发送相应的接口调用指令,以触发其对应工具栏的显示。在智能交互平板接收到用于退出该应用的指令时,需将工具栏切换至默认工具栏,该应用向工具栏应用发送新的接口调用指令,以重新显示默认工具栏。
智能交互平板中工具栏应用与其他应用之间的通信属于跨应用的信息交互,为了实现这种跨应用的信息交互,预先为工具栏应用中相应的功能函数建立编程接口,并将该编程接口提供给其他应用,对于其他应用来说,无需知晓工具栏应用的功能函数的具体实现方式,只需明确需要调用的编程接口信息,便可实现对工具栏应用的功能函数的远程调用。
S12,根据所述调用指令确定请求方应用请求调用的目标接口。
如上述所述,智能交互平板中某应用启动或者退出时,会向工具栏应用发起的接口调用指令,工具栏应用收到接口调用指令之后,基于彼此之间预先协定的通信协议,可解析出请求方应用请求调用的编程接口。
其中,工具栏应用与其他应用之间的通信协议,可以是远程过程调用(RemoteProcedure Call,RPC)协议,它是一种通过网络从其他计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据;本申请中优选采用TCP,以保证连接的稳定和过程调用的可靠性。RPC采用客户端/服务端模式,请求方(请求方应用)就是一个客户端,而服务提供程序就是一个服务端。
在一实施例中,工具栏应用与其他应用之间基于RPC通信,请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。客户端调用进程发送一个有进程参数的调用信息到服务进程,进程参数中包含有客户端请求调用的目标接口信息;在服务端,当一个调用信息到达,服务端获得进程参数,可确定请求调用的目标接口。
在一个实施例中,上述实施例所述通信方法还包括:预先建立工具栏应用与请求方应用的RPC通信连接;其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。
S13,对目标接口对应的功能函数进行本地调用。
工具栏应用可包含多个功能函数,各功能函数分别对应不同编程接口,工具栏应用程根据请求方应用的接口调用指令获得该请求方应用需要调用的编程接口后,可通过预先建立的编程接口与功能函数的对应关系,确定出请求方应用需要调用的功能函数,对该功能函数进行本地调用即可。
S14,检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
工具栏的副屏显示状态,指的是通过智能交互平板的副屏显示工具栏的状态,在工具栏应用中,可以设置一个标志位,用于记录当前工具栏的显示状态,可通过读取该标志位的当前数值,检测工具栏当前的显示状态为副屏显示状态或者主屏显示状态。
其中,工具栏应用可运行在主屏系统中,无论主屏还是副屏显示的工具栏信息,均是由工具栏应用决定的。如果需要通过副屏显示工具栏,则工具栏应用根据请求方应用的接口调用信息进行相应功能函数的本地调用之后,将调用结果数据发送给副屏,副屏基于收到的调用结果数据进行工具栏的显示,由此,可降低对副屏的数据处理性能要求,副屏和主屏可以选用不同类型的显示屏。
通过上述实施例的工具栏的通信方法,通过接收请求方应用发起的接口调用指令,接口调用指令中携带有请求调用的目标接口信息,目标接口属于工具栏应用提供的功能函数编程接口;根据所述调用指令确定请求方应用请求调用的目标接口;对目标接口对应的功能函数进行本地调用;检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。对于请求方应用而言,通过工具栏对外提供的编程接口实现对工具栏的远程调用,无需区分工具栏的显示状态,降低了请求方应用与工具栏应用之间的通信难度,有利于提高请求方应用与工具栏应用之间的通信效率。
进一步的,在一实施例中,在上述步骤S13之后还包括:工具栏应用检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。通过该实施例,对于请求方应用来说,在调用时无需区分工具栏是主屏显示还是副屏显示,简化了对工具栏应用的远程调用。
可以理解的,各应用对应的工具栏控件的数量和种类可根据具体情况设定。可选地,当请求方应用为白板应用时,更新后的工具栏中的控件包括:书写控件、图形控件、表格控件、擦除控件、返回控件中的至少一个。可选地,当请求方应用为视频会议时,更新后的工具栏中的控件包括:录音控件、录屏控件、退出控件中的至少一个。可选地,当请求方应用为投屏应用时,更新后的工具栏中的控件包括:投屏选择控件、翻页控件、批注控件、截屏控件、退出播放控件中的至少一个。此外,各应用对应的工具栏的控件可以分级布局,例如在应用运行时,仅展示一级控件,通过一级控件的触发操作进一步调出二级控件展示,以此类推;对用户来说,不会因为展示的控件太多,导致无法快速找到需要的控件。
通过上述实施例,用户使用智能交互平板时,使用白板时,通过主屏或者副屏显示白板对应的工具栏,与白板无关的控件将不显示在工具栏中;使用投屏时,通过主屏或者副屏显示投屏对应的工具栏,与投屏无关的控件将不显示在工具栏中;由此方便了用户的使用,使得操作更加方便快捷,提升了用户体验。
进一步地,在一实施例中,在工具栏应用与请求方应用的RPC通信连接的情况下,当请求方应用由于某些原因崩溃的时候,RPC客户端会主动断开RPC连接,导致其和服务端的长连接断开,服务端检测到RPC长连接断开后,可做一些恢复现场的操作,使得工具栏恢复到前一个状态。基于此,上述的通信方法还可包括:检测到所述客户端与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述副屏显示的工具栏信息;根据所述工具栏信息将副屏显示的工具栏回退至更新前的状态。主屏工具栏的回退处理类似。
例如:当启动开机引导的时候,工具栏应用是启动的,但工具栏不显示在主屏或者副屏,不允许用户直接跳过开机引导页面点击工具栏中的控件,但万一开机引导由于程序逻辑原因崩溃,工具栏应用有能力在没有任何请求方应用调用的前提下,将工具栏显示出来。通过该实施例的工具栏状态回退处理,可避免工具栏应用的请求方应用异常时,智能交互平板工具栏显示异常的问题。
进一步地,在上述实施例的基础上,提供在一种具体场景下的智能交互平板工具栏的通信方法,其中,智能交互平板的主屏基于安卓系统,工具栏应用与其他应用之间为RPC通信,工具栏应用为服务端,请求方应用为客户端,工具栏应用提供的功能函数编程接口为标准安卓接口;智能交互平板的副屏基于嵌入式系统,主屏与副屏之间的通信连接为串口连接,数据通信为双向串口通信。
结合图5、图6所示,上述的智能交互平板工具栏的通信方法具体包括以下步骤:
S21,确定工具栏应用包含的与请求方应用关联的功能函数;对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用。
其中,工具栏应用提供的功能函数编程接口,包括但不限于以下几种:增加工具栏控件的第一编程接口、删减工具栏控件的第二编程接口、替换工具栏控件的第三编程接口。
可以理解的,还可根据实际情况,通过工具栏应用提供的其他的编程接口。通过对外提供编程接口的方式,便于其他应用对工具栏功能函数的远程调用,同时也便于工具栏应用的功能扩展。
S22,将工具栏应用提供的编程接口的信息告知请求方应用。
工具栏应用预先将其提供的编程接口信息提供给其他应用,方便后续对工具栏应用功能函数的远程调用。
在一个实施例中,可根据所述编程接口生成对应的软件开发工具包(SDK),将所述SDK的信息提供给所述请求方应用。其中,SDK可以理解为多个编程接口的集合,通过该实施例,以SDK的形式提供工具栏应用的编程接口,对于不同的应用,工具栏应用提供不同的SDK,由此进一步简化了工具栏应用与其他智能交互平板应用之间的数据交互,可实现不同应用,对应工具栏操作的技术效果。
S23,基于工具栏应用与请求方应用之间的RPC连接,请求方应用向工具栏应用发起的接口调用指令,所述接口调用指令中携带有请求调用的目标接口信息,目标接口属于工具栏应用提供的功能函数的编程接口。
在一个实施例中,与上述工具栏应用提供的功能函数编程接口对应,工具栏应用接收到的请求方应用发起的接口调用指令,可包括以下情况的至少一种:工具栏应用接收请求方应用发起的调用第一编程接口的第一RPC调用指令;工具栏应用接收请求方应用发起的调用第二编程接口的第二RPC调用指令;工具栏应用接收请求方应用发起的调用第三编程接口的第三RPC调用指令。
可以理解的,工具栏应用接收到的请求方应用发起的接口调用指令还可以是其他工具栏应用提供的编程接口,对于请求方应用而言,在知道工具栏应用提供的编程接口以及各编程接口所对应的函数功能的情况下,可以调用任意接口以对应工具栏功能函数进行远程调用。
S24,工具栏应用根据所述调用指令确定请求方应用请求调用的目标接口。
S25,工具栏应用对目标接口对应的功能函数进行本地调用。
S26,检测到工具栏当前的显示状态为副屏显示状态,将功能函数的本地调用结果数据进行转换,得到副屏可识别的调用结果数据。
若主屏和副屏为基于不同系统的显示屏,例如主屏基于安装系统,副屏基于嵌入式系统,或者主屏和副屏对数据显示的要求不同,这种情况下,副屏可能无法识别功能函数的本地调用结果数据,进而无法有效实现副屏工具栏的更新显示,因此,工具栏应用在向副屏发送本地调用结果数据之前,还需对本地调用结果数据进行转换,以便副屏能够识别,进而有效实现副屏工具栏的更新显示。在一实施例中,可根据主屏与副屏之间的通信协议,对功能函数的本地调用结果数据进行封装,副屏收到封装的数据后,基于其与主屏之间的通信协议,可有效识别主屏发送的本地调用结果数据。
进一步地,副屏的屏幕分辨率可能低于主屏,或者副屏对图片的显示格式要求有所不同,当需要在工具栏中增加控件图像时,还需对新增的控件图片的数据格式进行转换,以适应副屏的图片显示格式。即在一实施例中,根据预设的主屏与副屏之间的通信协议,对功能函数的本地调用结果数据进行封装之前,还包括:若功能函数的本地调用结果数据中包含新增的图片数据,将所述图片数据转换为副屏兼容的图片数据格式。例如主屏显示的图片为矢量图,副屏显示的图像为位图,则需要先将新增的矢量图数据转换为对应的位图数据,在封装发给副屏,以使副屏能够正常实现相应的图片。由此,可兼容不同图片显示要求的副屏,保证副屏工具栏的正常显示。
S27,通过主屏与副屏之间的通信连接,向副屏发送转换后的调用结果数据,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在一实施例中,更新副屏显示的工具栏,包括以下情况的至少一种:在副屏当前显示的工具栏中增加新的、与所述请求方应用对应的控件;将副屏当前显示的工具栏中与所述请求方应用无关的控件删除;将副屏当前显示的工具栏中与所述请求方应用无关的控件,替换为与所述请求方应用对应的控件。
即,副屏收到调用结果数据后,可对应的显示更多的控件,或者显示更少的控件,或者显示包含完全不同控件的工具栏。,具体显示的工具栏控件可基于应用预先设定,便于用户使用对应应用。至此,对请求方应用的请求调用完成。
此后,副屏上工具栏的触发事件信息,通过主屏与副屏之间的通信连接发送给工具栏应用,由工具栏应用回调给客户端,如此一个请求方应用与副屏工具栏的通信周期结束。
此外,如果当前工具栏为主屏显示状态,上述步骤S26、S27涉及的过程替换为以下过程:检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏。
在一实施例中,更新主屏显示的工具栏,包括以下情况的至少一种:在主屏当前显示的工具栏中增加新的、与所述请求方应用对应的控件;将主屏当前显示的工具栏中与所述请求方应用无关的控件删除;将主屏当前显示的工具栏中与所述请求方应用无关的控件,替换为与所述请求方应用对应的控件。
当工具栏为主屏显示状态,可根据本地调用结果,对应的在主屏显示的工具栏中显示更多的控件,或者显示更少的控件,或者显示包含完全不同控件的工具栏。至此,对请求方应用的请求调用响应完成。此后,主屏上工具栏的触发事件信息,由工具栏应用回调给客户端,如此一个请求方应用与主屏工具栏的通信周期结束。
通过上述实施例的工具栏的通信方法,当需要新发布与工具栏应用关联的应用时,执行通过工具栏应用为该新发布的应用提供对应的SDK,该新发布的应用便可方便的对工具栏应用的功能函数进行远程调用,无需区分工具栏的显示状态,降低了请求方应用与工具栏应用之间的通信难度,有利于智能交互平板工具栏应用的功能拓展。
参考图6以及图7所示,从智能交互平板工具栏应用的角度,在上述实施例的基础上,该智能交互平板工具栏的通信方法还包括工具栏触发事件的回调过程,包括以下步骤:
S31,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,接收作用于副屏显示的工具栏的触发事件。
其中,副屏显示的工具栏可参考图3所示,其中可包括若干个供用户操作的控件。作用于副屏显示的工具栏的触发事件包括用户对副屏显示的工具栏中任何控件的操作事件,例如控件的点击事件,控件的长按事件等。
在一实施例中,工具栏应用在接收到作用于副屏显示的工具栏的触发事件的信息之后,还该信息对应的数据转换为适应与主屏中应用识别的数据,此后在进行触发事件的识别,并基于识别的触发事件信息执行后续步骤。
S32,生成触发事件对应的回调指令;
在生成回调指令之前,还需确定触发事件关联的回调对象,该回调对象可以是当前处于前端运行的应用,即为当前工具栏触发事件关联的回调对象,也即是上述的请求方应用。
智能交互平板中工具栏应用与其他应用之间的信息交互属于跨应用交互,为了实现这种跨应用函数调用,预先为回调对象包含相应的功能函数建立编程接口,并将该编程接口提供给工具栏应用,对于工具栏应用来说,只需告知回调对象其需要调用的接口信息,便可实现对回调对象的功能函数的远程调用。所述回调指令中携带有请求回调的目标接口信息,目标接口属于所述回调对象提供的功能函数编程接口。
在一个实施例中,上述实施例的通信方法还包括:预先接收所述回调对象发送的编程接口信息,所述编程接口根据所述回调对象包含的与工具栏触发事件关联的应用功能函数构建,允许工具栏应用回调。作为回调对象的应用可包含多个功能函数,各功能函数分别对应不同编程接口,工具栏应用程根据触摸事件确定需回调的编程接口后,根据该编程接口生成对应的回调指令。对于回调对象而言,通过回调指令中携带的编程接口信息,可确定被工具栏应用回调的功能函数,对该功能函数进行本地调用即可。
在一个实施例中,工具栏应用运行在主屏系统中,无论主屏还是副屏的工具栏触发事件信息,均是由工具栏应用进行分发处理。如果是副屏工具栏触发事件信息,工具栏应用收到触发事件信息之后,还可对该触发事件信息进行转换,以适应主屏系统,然后根据转换后的触发事件信息生成回调指令。由此,可降低对副屏的数据处理性能要求,副屏和主屏可以选用不同类型的显示屏。
S33,向所述请求方应用发送所述回调指令;所述回调指令用于触发所述请求方应用响应所述触发事件。
如上述所述,工具栏应用与智能交互平板中其他应用之间的通信协议,可以是RPC协议。在一实施例中,工具栏应用为RPC通信的服务端,请求方应用为RPC通信的客户端。工具栏应用调用进程发送一个有进程参数的调用信息到客户端进程,进程参数中包含有客户端请求调用的目标接口信息;在客户端,当一个调用信息到达,客户端获得进程参数,可确定请求服务端调用的目标接口。
通过上述实施例的工具栏的通信方法,对于回调对象(请求方应用)而言,无需区分是副屏的工具栏触发事件,还是主屏的工具栏触发事件,降低了工具栏应用与回调对象之间的信息交互难度。
其中,回调对象对目标接口对应的功能函数进行本地调用,以响应所述工具栏的触发事件例如:智能交互平板当前显示界面为白板应用的界面,用户点击副屏工具栏中的书写控件,如图8所示,该工具栏触发事件对应的白板功能函数为,在白板页面中调出书写笔可选颜色的颜色选项,白板在收到工具栏的回调指令后,对相应的功能函数进行本地调用,在白板界面中显示一悬浮框,该悬浮框内包括与被触发的书写控件相关联的下一级控件(或者称作子功能控件);例如用户触发书写控件,在白板界面中显示一悬浮框,该悬浮框内显示出书写笔可选颜色的颜色选项控件,对应的回调响应结果如图9所示。用户可以轻松选择自己需要的书写笔颜色。
此外,回调指令中还可包括被触发事件发生的位置信息,例如,书写控件的位置信息,对应地,在白板界面中显示出书写笔可选颜色的颜色选项控件的显示位置,与工具栏中书写控件的位置对应,如图9所示,白板中颜色选项控件的显示位置在书写控件的附近。
此外,在生成的悬浮框还可以用于显示被触发的控件对应的预览界面,预览界面用于提示用户操作。
进一步的,继续参考图7所示,在一实施例中,该通信方法还包括步骤S34,即工具栏应用除了向当前的回调对象发送回调指令之外,还向与工具栏应用通信连接的所述回调对象之外的其他应用广播所述回调指令。通过回调指令的广播,可消除不同应用之间的响应冲突,例如,当前的回调对象为第一应用,将当前回调指令发送给第一应用之外,还广播给其他应用,如果此时当其他应用中的第二应用正处于工具栏应用的上一次回调响应进程中,则第二应用在收到该广播消息后,将中止其对应的回调响应进程,防止第二应用、第一应用与对工具栏回调的响应冲突。
应该理解的是,对于前述的各方法实施例,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,方法实施例的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
基于与上述实施例中的工具栏的通信方法相同的思想,本发明还提供一种智能交互平板工具栏的通信装置的实施例。
在一个实施例中,如图10所示,智能交互平板工具栏的通信装置包括:
指令接收模块501,用于接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口的信息,目标接口属于工具栏应用提供的功能函数的编程接口。
接口确定模块502,用于根据所述调用指令确定请求方应用请求调用的目标接口。
函数调用模块503,用于对目标接口对应的功能函数进行本地调用。
以及,副屏通信模块504,用于检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
此外,在一实施例中,所述通信装置还包括:主屏通信模块,用于检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
通过上述实施例的工具栏的通信装置,对于请求方应用而言,通过工具栏对外提供的编程接口实现对工具栏的远程调用,无需区分工具栏的显示状态,降低了请求方应用与工具栏应用之间的通信难度,有利于提高请求方应用与工具栏应用之间的通信效率。
其中,上述的请求方应用可以包括:安装于智能交互平板中的白板应用、视频会议、投屏应用中的至少一种。智能交互平板中多个应用均可远程调用工具栏应用的功能函数,有利于为不同的应用提供不同的工具栏,为用户使用不同应用提供方便。
可以理解的,各应用对应的工具栏控件的数量和种类可根据具体情况设定,在一实施例中,当请求方应用为白板应用时,更新后的工具栏中的控件包括:书写控件、图形控件、表格控件、擦除控件、返回控件中的至少一个;当请求方应用为视频会议时,更新后的工具栏中的控件包括:录音控件、录屏控件、退出控件中的至少一个;当请求方应用为投屏应用时,更新后的工具栏中的控件包括:投屏选择控件、翻页控件、批注控件、截屏控件、退出播放控件中的至少一个。
此外,各应用对应的工具栏的控件可以分级布局,例如在应用运行时,仅展示一级控件,通过一级控件的触发操作进一步调出二级控件,以此类推;对用户来说,不会因为展示的控件太多,导致无法快速找到需要的控件。
通过上述实施例,用户使用智能交互平板时,使用白板时,通过主屏或者副屏显示白板对应的工具栏,与白板无关的控件将不显示在工具栏中;使用投屏时,通过主屏或者副屏显示投屏对应的工具栏,与投屏无关的控件将不显示在工具栏中;由此方便了用户的使用,使得操作更加方便快捷,提升了用户体验。
在一实施例中,所述的通信装置还包括:接口发布模块,用于确定工具栏应用包含的与所述请求方应用关联的功能函数;对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用;将所述编程接口的信息提供给所述请求方应用。
其中,工具栏应用提供的功能函数编程接口,包括但不限于以下几种:增加工具栏控件的第一编程接口、删减工具栏控件的第二编程接口、替换工具栏控件的第三编程接口。
可以理解的,还可根据实际情况,通过工具栏应用提供的其他的编程接口。通过对外提供编程接口的方式,便于其他应用对工具栏功能函数的远程调用,同时也便于工具栏应用的功能扩展。
具体地,所述接口发布模块可以根据所述编程接口生成对应的软件开发工具包(SDK),将所述SDK的信息提供给所述请求方应用。由此进一步简化了工具栏应用与其他智能交互平板应用之间的数据交互,可实现不同应用,对应工具栏操作的技术效果。
在一实施例中,对于副屏通信模块/主屏通信模块来说,在更新副屏/主屏显示的工具栏时,可以包括以下情况的至少一种:
在副屏/主屏当前显示的工具栏中增加新的、与所述请求方应用对应的控件;将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件删除;将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件,替换为与所述请求方应用对应的控件。
即,副屏收到调用结果数据后,可对应的显示更多的控件,或者显示更少的控件,或者显示包含完全不同控件的工具栏,具体显示的工具栏控件可基于应用预先设定,便于用户使用对应应用。
进一步地,所述的通信装置还可以包括:连接建立模块,用于建立工具栏应用与请求方应用的远程过程调用(RPC)通信连接;其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。工具栏应用与其他应用通过RPC通信机制,有利于简化了应用之间的通信难度,提高通信效率。
在一实施例中,上述的指令接收模块可以用于接收以下指令的至少一种:
接收请求方应用发起的调用第一编程接口的第一RPC调用指令;接收请求方应用发起的调用第二编程接口的第二RPC调用指令;接收请求方应用发起的调用第三编程接口的第三RPC调用指令。可以理解的,工具栏应用接收到的请求方应用发起的接口调用指令还可以是其他工具栏应用提供的编程接口,对于请求方应用而言,在知道工具栏应用提供的编程接口以及各编程接口所对应的函数功能的情况下,可以调用任意接口以对对应工具栏功能函数进行远程调用。
在一实施例中,所述的通信装置还包括:异常处理模块,用于在检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述副屏显示的工具栏信息;根据所述工具栏信息将副屏显示的工具栏回退至更新前的状态。同理,所述异常处理模块,还用于在检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述主屏显示的工具栏信息;根据所述工具栏信息将主屏显示的工具栏回退至更新前的状态。
由此,在工具栏应用与请求方应用的RPC通信连接的情况下,当请求方应用由于某些原因崩溃的时候,RPC客户端会主动断开RPC连接,导致其和服务端的长连接断开,服务端感知到长连接断开后,可做一些恢复现场的操作,使得工具栏恢复到前一个状态。
在一实施例中,上述的副屏通信模块504,还用于在通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果之前,将所述功能函数的本地调用结果数据进行转换,得到副屏可识别的调用结果数据。
在一实施例中,所述的通信装置中,所述副屏通信模块,根据主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装,得到副屏可识别的调用结果数据。
当主屏和副屏为基于不同系统的显示屏时,例如主屏基于安装系统,副屏基于嵌入式系统,或者主屏和副屏对数据显示的要求不同,这种情况下,副屏可能无法识别功能函数的本地调用结果数据,通过数据转换处理,可兼容不同类型的副屏。
具体地,所述副屏通信模块504还可以用于,在对所述功能函数的本地调用结果数据进行封装之前,若所述功能函数的本地调用结果数据中包含新增的图片数据,将所述图片数据转换为副屏兼容的图片数据格式。例如主屏显示的图片为矢量图,副屏显示的图像为位图,则需要先将新增的矢量图数据转换为对应的位图数据,在封装发给副屏,以使副屏能够正常实现相应的图片。
在一实施例中,如图11所示,该智能交互平板工具栏的通信装置还包括:
回调信息检测模块505,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,接收作用于副屏显示的工具栏的触发事件;指令生成模块506,用于生成触发事件对应的回调指令;以及,回调发送模块507,用于向所述请求方应用发送所述回调指令;所述回调指令用于触发所述请求方应用响应所述触发事件。
通过上述实施例的工具栏的通信装置,对于回调对象(请求方应用)而言,无需区分是副屏的工具栏触发事件,还是主屏的工具栏触发事件,降低了工具栏应用与回调对象之间的信息交互难度。
此外,所述回调发送模块507,还可以用于向与工具栏应用通信连接的所述请求方应用之外的其他应用广播所述回调指令。通过本实施例加入的广播回调指令机制,可消除不同应用之间的响应冲突。
在一实施例中,所述主屏基于安卓系统,所述工具栏应用提供的功能函数编程接口为标准安卓接口。所述副屏基于嵌入式系统;主屏与副屏之间的通信连接为串口连接,数据通信为双向串口通信。可采用主流的串口通信技术实现数据传输,有利于降低与副屏的数据通信成本,选用基于嵌入式系统的副屏,也可控制智能交互平板的整体硬件成本。
关于智能交互平板工具栏的通信装置的具体限定,可以参见上文中对于智能交互平板工具栏的通信方法的限定,在此不再赘述。上述智能交互平板工具栏的通信装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
此外,上述示例的智能交互平板工具栏的通信装置的实施方式中,各程序模块的逻辑划分仅是举例说明,实际应用中可以根据需要,例如出于相应硬件的配置要求或者软件的实现的便利考虑,将上述功能分配由不同的程序模块完成,即将智能交互平板工具栏的通信装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分功能。
在一个实施例中,提供了一种智能交互平板,包括存储器和处理器,存储器中存储有计算机程序,还包括主屏和副屏,所述主屏与副屏通信连接;其中,处理器执行计算机程序时实现如下步骤:接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口的信息,所述目标接口属于工具栏应用对外提供的功能函数的编程接口;根据所述接口调用指令确定请求方应用请求调用的目标接口;对目标接口对应的功能函数进行本地调用;检测到工具栏显示在副屏中,通过主屏与副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,以更新副屏显示的工具栏,使得更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:在接收请求方应用发起的接口调用指令之前,确定工具栏应用包含的与所述请求方应用关联的功能函数;对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用;将所述编程接口的信息提供给所述请求方应用。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:建立工具栏应用与请求方应用的远程过程调用(RPC)通信连接;其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:在通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述副屏显示的工具栏信息;根据所述工具栏信息将副屏显示的工具栏回退至更新前的状态;以及,在检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述主屏显示的工具栏信息;根据所述工具栏信息将主屏显示的工具栏回退至更新前的状态。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:在通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果之前,将所述功能函数的本地调用结果数据进行转换,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:根据主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述处理器执行所述程序时,还实现如下步骤:在根据预设的主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装之前,若所述功能函数的本地调用结果数据中包含新增的图片数据,将所述图片数据转换为副屏兼容的图片数据格式。
通过对应实施例的智能交互平板,能够降低智能交互平板中工具栏应用与其他应用的信息交互难度,提高交互效率。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如下步骤:接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口的信息,所述目标接口属于工具栏应用对外提供的功能函数的编程接口;根据所述接口调用指令确定请求方应用请求调用的目标接口;对目标接口对应的功能函数进行本地调用;检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:在接收请求方应用发起的接口调用指令之前,确定工具栏应用包含的与所述请求方应用关联的功能函数;对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用;将所述编程接口的信息提供给所述请求方应用。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:建立工具栏应用与请求方应用的远程过程调用(RPC)通信连接;其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:在通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果,所述本地调用结果用于更新副屏显示的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述副屏显示的工具栏信息;根据所述工具栏信息将副屏显示的工具栏回退至更新前的状态;以及,在检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏之后,检测到所述请求方应用与工具栏应用的RPC通信断开,获取在对目标接口对应的功能函数进行本地调用之前所述主屏显示的工具栏信息;根据所述工具栏信息将主屏显示的工具栏回退至更新前的状态。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:在通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果之前,将所述功能函数的本地调用结果数据进行转换,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:根据主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装,得到副屏可识别的调用结果数据。
在其中一个实施例中,所述计算机程序被处理器执行时,还实现如下步骤:在根据预设的主屏与副屏之间的通信协议,对所述功能函数的本地调用结果数据进行封装之前,若所述功能函数的本地调用结果数据中包含新增的图片数据,将所述图片数据转换为副屏兼容的图片数据格式。
通过对应实施例的计算机可读存储介质,能够降低智能交互平板中工具栏应用与其他应用的信息交互难度,提高交互效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
本文实施例的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或(模块)单元的过程、方法、系统、设备或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、设备或设备固有的其它步骤或单元。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
在本文中提及的“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序。应该理解“第一\第二”区分的对象在适当情况下可以互换,以使这里描述的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种智能交互平板工具栏的通信方法,其特征在于,包括:
接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口的信息,所述目标接口属于工具栏应用对外提供的功能函数的编程接口;
根据所述接口调用指令确定请求方应用请求调用的目标接口;
对目标接口对应的功能函数进行本地调用;
检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果;所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
2.根据权利要求1所述的通信方法,其特征在于,还包括:
检测到工具栏为主屏显示状态,根据所述功能函数的本地调用结果更新主屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
3.根据权利要求1所述的通信方法,其特征在于,所述接收请求方应用发起的接口调用指令之前,还包括:
确定工具栏应用包含的与所述请求方应用关联的功能函数;
对所述功能函数构建各自对应的编程接口,所述编程接口允许所述请求方应用调用;
将所述编程接口的信息提供给所述请求方应用。
4.根据权利要求3所述的通信方法,其特征在于,所述将所述编程接口的信息提供给所述请求方应用,包括:
根据所述编程接口生成对应的软件开发工具包(SDK),将所述SDK的信息提供给所述请求方应用。
5.根据权利要求2至4任一所述的通信方法,其特征在于,所述工具栏应用提供的功能函数编程接口,包括以下至少一种:
增加工具栏控件的第一编程接口、删减工具栏控件的第二编程接口、替换工具栏控件的第三编程接口中。
6.根据权利要求5所述的通信方法,其特征在于,更新副屏/主屏显示的工具栏,包括以下情况的至少一种:
在副屏/主屏当前显示的工具栏中增加新的、与所述请求方应用对应的控件;
将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件删除;
将副屏/主屏当前显示的工具栏中与所述请求方应用无关的控件,替换为与所述请求方应用对应的控件。
7.根据权利要求2所述的通信方法,其特征在于,还包括:
建立工具栏应用与请求方应用的远程过程调用(RPC)通信连接;
其中,所述请求方应用为RPC通信的客户端,工具栏应用为RPC通信的服务端。
8.一种智能交互平板工具栏的通信装置,其特征在于,包括:
指令接收模块,用于接收请求方应用发起的接口调用指令;其中,所述接口调用指令中携带有请求调用的目标接口信息,目标接口属于工具栏应用提供的功能函数编程接口;
接口确定模块,用于根据所述调用指令确定请求方应用请求调用的目标接口;
函数调用模块,用于对目标接口对应的功能函数进行本地调用;
以及,副屏通信模块,用于检测到工具栏为副屏显示状态,通过智能交互平板的主屏与智能交互平板的副屏之间的通信连接,向副屏发送所述功能函数的本地调用结果;所述本地调用结果用于更新副屏显示的工具栏,更新后的工具栏为所述请求方应用对应的工具栏。
9.一种智能交互平板,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,还包括主屏和副屏,所述主屏与副屏通信连接;所述处理器执行所述程序时实现上述权利要求1至7任一所述的通信方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现上述权利要求1至7任一所述的通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810284511.9A CN108681478A (zh) | 2018-04-02 | 2018-04-02 | 智能交互平板工具栏的通信方法、装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810284511.9A CN108681478A (zh) | 2018-04-02 | 2018-04-02 | 智能交互平板工具栏的通信方法、装置及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108681478A true CN108681478A (zh) | 2018-10-19 |
Family
ID=63799358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810284511.9A Pending CN108681478A (zh) | 2018-04-02 | 2018-04-02 | 智能交互平板工具栏的通信方法、装置及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108681478A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110225292A (zh) * | 2019-06-13 | 2019-09-10 | 深圳市闪联信息技术有限公司 | 一种基于双屏异显的会议控制设备及其交互方法 |
CN111522605A (zh) * | 2020-04-16 | 2020-08-11 | 艾普阳科技(深圳)有限公司 | 一种本地过程调用方法、装置、设备及介质 |
CN113220179A (zh) * | 2021-05-07 | 2021-08-06 | Oppo广东移动通信有限公司 | 侧边栏的显示方法、装置、终端及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722336A (zh) * | 2012-06-12 | 2012-10-10 | 桂林电子科技大学 | 编辑与演示操作同步跟踪的Office无线演讲系统及同步跟踪方法 |
CN106095226A (zh) * | 2016-06-01 | 2016-11-09 | 广州三星通信技术研究有限公司 | 在电子终端中运行应用程序的方法及设备 |
CN106406656A (zh) * | 2016-08-30 | 2017-02-15 | 维沃移动通信有限公司 | 一种应用程序工具栏的控制方法及移动终端 |
-
2018
- 2018-04-02 CN CN201810284511.9A patent/CN108681478A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722336A (zh) * | 2012-06-12 | 2012-10-10 | 桂林电子科技大学 | 编辑与演示操作同步跟踪的Office无线演讲系统及同步跟踪方法 |
CN106095226A (zh) * | 2016-06-01 | 2016-11-09 | 广州三星通信技术研究有限公司 | 在电子终端中运行应用程序的方法及设备 |
CN106406656A (zh) * | 2016-08-30 | 2017-02-15 | 维沃移动通信有限公司 | 一种应用程序工具栏的控制方法及移动终端 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110225292A (zh) * | 2019-06-13 | 2019-09-10 | 深圳市闪联信息技术有限公司 | 一种基于双屏异显的会议控制设备及其交互方法 |
CN111522605A (zh) * | 2020-04-16 | 2020-08-11 | 艾普阳科技(深圳)有限公司 | 一种本地过程调用方法、装置、设备及介质 |
CN111522605B (zh) * | 2020-04-16 | 2022-07-29 | 艾普阳科技(深圳)有限公司 | 一种本地过程调用方法、装置、设备及介质 |
CN113220179A (zh) * | 2021-05-07 | 2021-08-06 | Oppo广东移动通信有限公司 | 侧边栏的显示方法、装置、终端及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110703966B (zh) | 文件共享方法、装置、系统、相应设备及存储介质 | |
CN108932144B (zh) | 显示界面控制方法、装置、设备及存储介质 | |
CN104461242B (zh) | 一种基于Android操作系统的多窗口界面实现方法 | |
EP2530576B1 (en) | Mobile terminal and control method thereof | |
WO2022252528A1 (zh) | 信息展示方法及装置 | |
CN109669657B (zh) | 一种用于进行远程文档协作的方法与设备 | |
CN108681478A (zh) | 智能交互平板工具栏的通信方法、装置及计算机设备 | |
TW201812567A (zh) | 顯示資料的控制方法、裝置和系統 | |
CN111857532B (zh) | 虚拟键盘显示方法、装置及电子设备 | |
CN105867754B (zh) | 应用界面处理方法及装置 | |
CN106572139A (zh) | 多终端控制方法、终端、服务器和系统 | |
CN113849091A (zh) | 移动终端中应用程序图标的管理方法和装置 | |
CN112835485A (zh) | 应用界面处理方法、装置、电子设备及可读存储介质 | |
CN109753315A (zh) | 一种智能设备交互式内容编辑实现方法及存储介质 | |
CN110109635A (zh) | 投屏显示桌、投屏显示方法、装置、控制器、设备和介质 | |
CN111580903B (zh) | 实时投票方法、装置、终端设备和存储介质 | |
CN108132745A (zh) | 交互方法、装置、设备及存储介质 | |
CN115022551A (zh) | 拍摄界面显示方法及装置、电子设备和可读存储介质 | |
JP2017076207A (ja) | 画像処理装置及び画像処理システム | |
WO2019218622A1 (zh) | 元素控制方法、装置、设备及存储介质 | |
CN113721808A (zh) | 一种控制方法及装置 | |
CN108399058A (zh) | 一种信号显示控制方法及装置 | |
JP2014204412A (ja) | 情報処理装置及びプログラム | |
CN109165626A (zh) | 电子白板的书写笔画处理方法、装置、设备和存储介质 | |
CN104335151B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181019 |
|
RJ01 | Rejection of invention patent application after publication |