本发明专利技术提供一种传感数据处理方法及计算节点。该方法应用于计算节点,所述计算节点包括硬件层,以及运行于所述硬件层之上的OS,以及运行于所述OS之上的浏览器引擎,其中所述硬件层包括第一传感设备,所述方法包括:第一传感设备感应状态变化生成传感数据,将所述传感数据以事件的方式向所述OS传递;所述OS根据所述传感数据确定所述事件的事件类型,将所述传感数据和事件类型向所述浏览器引擎传递;所述浏览器引擎根据所述事件类型确定所述事件已注册,执行所述事件的处理逻辑。本发明专利技术由浏览器引擎屏蔽了不同OS的差异性,只用写一次代码,所编写的应用即可运行在不同的OS上,实现了应用的跨平台运行。
【技术实现步骤摘要】
本专利技术实施例涉及传感应用技木,尤其涉及一种传感数据处理方法及计算节点。
技术介绍
传感设备在终端应用非常广泛,这里的终端是指泛终端,例如移动电话,电子书,平板电脑,电子相册等。传感设备的广泛使用,提供了更加丰富的功能,增强了用户体验。 图I为现有技术中传感设备的ー种交互模型示意图。如图I所示,原生应用直接和传感设备交互,不需要通过网页来访问,目前的終端操作系统(Operating System,简称OS)基本都采用这种交互方式。交互模型如下101、传感设备对用户响应/外部环境变化作出响应,传感数据传递给OS。102、OS对传感数据做处理后,传递给架构(Framework)层。103、Framework层判断原生应用是否处于数据可接收状态,如果是则将传感事件传递给原生应用。其中,根据OS的不同实现,Framework层可以增减。104、原生应用对传感事件作出响应,产生ー个操作传感设备的响应事件。105、响应事件向下传递,一直传递给传感设备。106、传感设备作出响应。上述方案由于不同的OS提供的系统调用接ロ都不一样,且采用的编程语言也不一样,例如在安卓Android平台上,采用的是Java和C++,而苹果的iOS平台采用的是Object-C,导致同一个应用如果需要同时运行在不同的OS平台上,需要不同的代码,井分别编译,导致开发和维护的成本的上升。
技术实现思路
本专利技术实施例提供一种传感数据处理方法及计算节点,用以解决现有技术中原生应用直接和传感设备交互导致应用不能跨平台的问题。本专利技术实施例的第一个方面是提供一种传感数据处理方法,应用于计算节点,所述计算节点包括硬件层,以及运行于所述硬件层之上的操作系统OS,以及运行于所述OS之上的浏览器引擎,其中所述硬件层包括第一传感设备,所述方法包括第一传感设备感应状态变化生成传感数据,将所述传感数据以事件的方式向所述OS传递;所述OS根据所述传感数据确定所述事件的事件类型,将所述传感数据和事件类型向所述浏览器引擎传递;所述浏览器引擎根据所述事件类型确定所述事件已注册,执行所述事件的处理逻辑。本专利技术实施例的另ー个方面是提供一种计算节点,包括硬件层,以及运行于所述硬件层之上的操作系统OS,以及运行于所述OS之上的浏览器引擎,其中所述硬件层包括第ー传感设备;所述第一传感设备,用于感应状态变化生成传感数据,将所述传感数据以事件的方式向所述OS传递;所述OS,用于根据所述传感数据确定所述事件的事件类型,将所述传感数据和事件类型向所述浏览器引擎传递;所述浏览器引擎,用于根据所述事件类型确定所述事件已注册,执行所述事件的处理逻辑。以上多个技术方案中的至少ー个技术方案具有如下优点或有益效果本专利技术实施例采用了传感设备感应状态变化生成传感数据并以事件的方式传递给OS,OS确定所述事件的事件类型,将所述传感数据和事件类型传递给浏览器引擎,浏览器引擎根据所述事件类型确定所述事件已注册,执行所述事件的处理逻辑的技术手段,由浏览器引擎屏蔽了不同OS的差异性,解决了现有技术中原生应用直接和传感设备交互导 致应用不能跨平台的问题,只用写一次代码,所编写的应用即可运行在不同的OS上,实现 了应用的跨平台运行。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作ー简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为现有技术中传感设备的ー种交互模型示意图;图2为本专利技术的ー种交互模型示意图;图3为基于图2所示交互模型的一种应用流程示意图;图4为本专利技术实施例提供的一种传感数据处理方法的流程示意图;图5为ー个web页面的DOM树的结构示意图;图6为本专利技术实施例中浏览器引擎加载web页面的一种信令示意图;图7本专利技术实施例在一种应用场景下的信令示意图;图8为本专利技术实施例在又一种应用场景下的信令示意图;图9为本专利技术实施例提供的一种计算节点的结构示意图。具体实施例方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图2为本专利技术的ー种交互模型示意图。如图2所示,交互模型包括201、传感设备对用户响应/外部环境变化作出响应,将传感数据以事件的方式传递给OS。其中,OS可以是普通OS,也可以是嵌入式OS202、OS对传感数据进行格式转换、预处理后传递给Framework层。203、Framework层将看浏览器Browser/微件Widget是否处于数据可接收状态,若处于数据可接收状态则传递给Browser/Widget。具体地,数据可接收状态可以根据Browser/Widget中的Browser引擎是否被激活来判断。其中,根据OS的不同实现,Framework层可以增减。Browser引擎是运行在OS上的web应用运行中间件。204>Browser/Widget中的Browser引擎判断web页面的文档对象模型(DocumentObject Model,简称D0M)节点是否有对应的事件监听代码,如果有则将传感数据传递给对应的Web网页。205、web页面上的事件处理模块被触发,若事件监听代码中包含对传感设备的调用,则调用传感模块,产生ー个响应事件。 206、响应事件向下传递,一直传递给传感设备。207、传感设备作出响应。图3为基于图2所示交互模型的一种应用流程示意图。如图3所示,应用流程具体包括301、授权开发者为web页面添加事件监听代码。这里的事件监听代码也可称为事件的处理逻辑。302、浏览器引擎加载web页面。303、浏览器引擎解析web页面,建立事件监听映射表。其中,事件监听映射表包括事件与其处理逻辑的对应关系。304、终端用户触发传感设备。305、传感设备将传感数据以事件的方式传递给OS。306、OS将事件传递给浏览器引擎。 307、浏览器引擎检测该事件是否已注册。308、若已注册,浏览器引擎根据事件监听映射表调用该事件的处理逻辑。3091、若处理逻辑包括对web页面脚本内容的修改,则重绘web页面。举例来说,为了增加web页面的表现能力,可以在web页面上设计ー个图案,利用该图案的顔色来表示当前温度。对应地,在温度传感器的温度变化事件的处理逻辑中包括根据温度參数修改该图案顔色的代码。这样的话,在温度传感器感应温度变化,上报温度參数后,浏览器引擎调用温度变化事件的处理逻辑,在执行该处理逻辑的过程中,修改该web页面脚本内容中该图案的颜色參数,然后根据修改后的脚本内容重绘web页面,重绘后的web页面上该图案呈现的顔色与温度传感器感应到的温度參数对应。3092、若处理逻辑包括对传感设备的调用,则调用传感设备。由上述交互模型可知,本专利技术可以使用web开发语言来处理和传感设备的交互,而web开发语言运行在浏览器引擎上,由浏览器引擎屏蔽不同OS的差异性,因此只用写一次代码,所编写的应用即可运本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:陆元飞,刘刚,刘存伟,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。