CN105335131A - 传感器接口处理方法及装置 - Google Patents
传感器接口处理方法及装置 Download PDFInfo
- Publication number
- CN105335131A CN105335131A CN201410243477.2A CN201410243477A CN105335131A CN 105335131 A CN105335131 A CN 105335131A CN 201410243477 A CN201410243477 A CN 201410243477A CN 105335131 A CN105335131 A CN 105335131A
- Authority
- CN
- China
- Prior art keywords
- sensor
- parameter
- function
- call back
- api
- 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.)
- Granted
Links
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种传感器接口处理方法。该方法包括:当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识;根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式;根据所确定的API的操作模式执行对应处理。本发明相应提供一种处理装置。本发明提供的方案,能够满足不同传感器的不同操作需求,使得浏览器可以更方便、更灵活使用传感器。
Description
技术领域
本发明涉及移动通信技术领域,更为具体地,涉及一种传感器接口处理方法及装置。
背景技术
传感器是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。传感器是实现自动检测和自动控制的首要环节。
API(ApplicationProgrammingInterface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码或理解内部工作机制的细节。目前官方定义的传感器的API一般有两种:一种是部分传感器的私有API,另外一种是比较简单的通用API。
现有技术的方案存在的问题是:对于特定传感器的私有API,一般只能满足自身传感器的需求,无法满足其他传感器的需求;而通用API,功能很简单,只满足了传感器的某一些部分特性,如环境压力事件、环境湿度事件等。
因此,现有的移动终端的浏览器使用上述两种传感器API实现一些功能时,实现方案都受到了限制,实现的功能一般比较简单,而且灵活性差,不能扩展。
发明内容
鉴于上述,本发明提出了一种传感器接口处理方法及装置,能够满足不同传感器的不同操作需求,使得浏览器可以更方便、更灵活使用传感器。
根据本发明的一个方面,提供了一种传感器接口处理方法,包括:当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识;根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式;根据所确定的API的操作模式执行对应处理。
优选的,其中,根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式包括:当所述参数中的回调标识表示是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,否则为直接获取模式。
优选的,其中:所述参数还包括传感器数据和参数数据;所述根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器后还包括:进一步查找到所述传感器所对应的获取或设置数据的操作集合,根据所述操作集合和所述参数中的传感器数据,在预置的数据表中找到执行传感器数据所表示的功能的函数指针;所述根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式包括:当所述参数中的回调标识表示参数中的参数数据是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,否则为直接获取模式;所述根据所确定的API的操作模式执行对应处理包括:当为回调模式时,将所述参数数据注册为所述传感器数据对应的事件,当为直接获取模式时,将所述参数数据作为所述查找到的函数指针的参数。
优选的,该方法还包括:当为直接获取模式时,调用所述函数指针实现函数指针的操作;当为回调模式时,在注册的事件被触发后,回调注册事件中的注册函数实现注册函数定义的操作。
优选的,其中:所述参数中的传感器名称为字符串类型,所述传感器数据为数组类型,所述回调标识为布尔类型,所述参数数据为数组类型。
根据本发明的一个方面,还提供一种传感器接口处理装置,包括:信息获取单元,用于当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识;模式选择单元,用于根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器,根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式;处理单元,用于根据所确定的API的操作模式执行对应处理。
优选的,其中,所述模式选择单元包括:第一查找单元,用于根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;标识判断单元,用于判断所述参数中的回调标识是否表示是回调函数;第一选择单元,用于所述标识判断单元判断出是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式;第二选择单元,用于所述标识判断单元判断出不是回调函数时,确定所述查找到的传感器的API的操作模式为直接获取模式。
优选的,其中:所述信息获取单元获取的参数还包括传感器数据和参数数据;所述模式选择单元还包括:第二查找单元,用于在所述第一查找单元查找对应的传感器后,进一步查找到所述传感器所对应的获取或设置数据的操作集合,根据所述操作集合和所述参数中的传感器数据,在预置的数据表中找到执行传感器数据所表示的功能的函数指针;所述第一选择单元在所述参数中的回调标识表示参数中的参数数据是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,所述第二选择单元在所述参数中的回调标识表示参数中的参数数据不是回调函数时,确定所述查找到的传感器的API的操作模式为直接获取模式;所述处理单元在为回调模式时,将所述参数数据注册为所述传感器数据对应的事件,在为直接获取模式时,将所述参数数据作为所述查找到的函数指针的参数。
优选的,该装置还包括:调用单元,用于当为直接获取模式时,调用所述函数指针实现函数指针的操作,当为回调模式时,在注册的事件被触发后,回调注册事件中的注册函数实现注册函数定义的操作。
利用上述方法,本发明在传感器操作函数中的参数里设置了回调标识,根据参数中的传感器名称在预置的数据表中查找对应的传感器后,根据回调标识就可以确定查找到的传感器的API的操作模式为回调模式或直接获取模式,再根据所确定的API的操作模式执行对应处理,也就是说可以从API的这两种操作模式对应选择其中一种模式,相当于同时提供了两种操作模式的API供操作,这样可以满足所有传感器的操作需求,从而客服现有技术的缺陷。
为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
附图说明
根据下述参照附图进行的详细描述,本发明的上述和其他目的、特征和优点将变得更加显而易见。在附图中:
图1是本发明的处理方法第一流程图;
图2是本发明的处理方法第二流程图;
图3是本发明的应用例一的流程图;
图4是本发明的应用例二的流程图;
图5是本发明实施的装置一示意图;
图6是本发明实施的装置二示意图。
在所有附图中相同的标号指示相似或相应的特征或功能。
具体实施方式
下面描述本公开的各个方面。应该明白的是,本文的教导可以以多种多样形式具体体现,并且在本文中公开的任何具体结构、功能或两者仅仅是代表性的。基于本文的教导,本领域技术人员应该明白的是,本文所公开的一个方面可以独立于任何其它方面实现,并且这些方面中的两个或多个方面可以按照各种方式组合。例如,可以使用本文所阐述的任何数目的方面,实现装置或实践方法。另外,可以使用其它结构、功能、或除了本文所阐述的一个或多个方面之外或不是本文所阐述的一个或多个方面的结构和功能,实现这种装置或实践这种方法。此外,本文所描述的任何方面可以包括权利要求的至少一个元素。
本发明提出一种传感器接口处理方法,能够满足不同传感器的不同操作需求,使得浏览器可以更方便、更灵活使用传感器。
一般来说,JavaScriptAPI(简称JSAPI)有两种操作模式,一种模式是用户直接设置/获取数据(简称直接获取模式),另一种模式是通过事件回调来实现用户操作(简称回调模式)。
本发明设置了新的函数参数格式,并建立参数对照表,从而可以利用这些参数格式和参数对照表,从API的两种操作模式对应选择其中一种模式,相当于同时提供了两种操作模式的API供操作,这样可以满足所有传感器的操作需求。
传感器的函数参数格式中,每项内容包括:
{传感器名称,传感器数据,回调标识(是否回调),参数数据(逗号分隔,可表示参数的类型和内容)}
其中,传感器名称的类型是字符串,通过使用字符串匹配的形式可以区别不同的传感器;传感器数据的类型是数组,可以通过这个数组获取传感器在不同状态或不同功能下表现的内容;回调标识的类型是布尔,用于表示是否是回调函数;参数数据的类型也是数组,可用于多参数的传递。
参考上述参数格式,本发明设置和维护一份参数对照列表,列表中包含公共的传感器名称、操作集合、函数指针等信息。当有新的传感器时只需要更新这份公共的参数对照表。
使用参数对照表,可以找到正确的传感器以及操作集合、函数指针等。根据回调标识,就可以确定对应选择回调模式或选择直接获取模式,即从API的两种操作模式对应选择其中一种模式,从而使得可以满足所有传感器的操作需求。其中,当为回调模式时,将参数中的参数数据注册为传感器数据对应的事件,在注册的事件被触发后,就可以回调注册事件中的注册函数实现注册函数定义的操作;当为直接获取模式时,将参数中的参数数据作为查找到的函数指针的参数,就可以调用所述函数指针实现函数指针的操作。
以下介绍示例介绍本发明提出的参数格式。
获取/设置传感器函数的接口,按以下4个参数格式定义:
getSensorData(sensor,name,iscallback,param)
setSensorData(sensor,name,iscallback,param)
get开头是表示获取传感器的数据,set开头是表示选择或设置传感器的功能、数据或者状态。需要说明的是,本发明只是以4个参数举例说明但不局限于此。
其中:
1)参数1sensor(传感器):
意义:传感器名称,指明是哪种传感器。
类型:字符串。
值:Vibration(振动传感器)、DeviceOrientation(方向传感器)、Battery(电池传感器)等。
2)参数2name(名称):
意义:传感器数据,指明获取传感器的什么数据,可以区别不同传感器的不同功能。
类型:数组。
值:vibrate(振动)、acceleration(加速度)、charging(充电)等。
3)参数3:iscallback(是否回调)
意义:回调标识,用于指明参数3后面的参数4是否是回调函数。
类型:布尔,false表示非回调函数,true表示是回调函数。
4)参数4:param(param是一种HTML元素,用于设置APPLET、EMBED或OBJECT元素的属性初始值,param元素仅在APPLET、EMBED、OBJECT元素内有效)
意义:参数3为false(即表示不是回调函数)时,如果根据声明获知参数2是一个函数,则参数4就是相关的调用参数,即作为函数指针的参数,如果根据声明获知参数2不是一个函数,则参数4为空。
需说明的是,参数2本身不能直接表明是否为函数或者不是函数。这个需要由制定参数2字符串的人来确定,并作为规范告诉所有的人,一般通过声明可以获知。例如,某个传感器确定了有4个数据。这4个分别为key1、key2、key3、key4。然后,在声明这4个key时,要说明key是否为函数。例如,key1和key2是函数,key3和key4不是函数。
参数3为true(即表示是回调函数),那么参数4param就是回调函数以及回调函数的参数,param的类型为数组。数组的内容为:如有0个、1个或多个回调函数,则数组中,先放函数类型的回调函数,接着就是参数2中的参数。
类型:数组
需说明的是,如果回调函数只有一个参数,该参数类型为数组,则回调函数没有返回值。回调函数声明如下:functioncallback(list)
5)返回值:
意义:是get和set接口的返回值,返回指定传感器指定操作的结果,可以为空。
类型:如有返回值,返回数组。
以下结合附图介绍本发明方法的流程。
图1是本发明的处理方法第一流程图,包括:
步骤101、当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识。
步骤102、根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式。
其中,当所述参数中的回调标识表示是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,否则为直接获取模式。
其中,所述预置的数据表例如是本发明的参数对照表。
步骤103、根据所确定的API的操作模式执行对应处理。
进一步的,所述参数还包括传感器数据和参数数据,即参数具体包括4个参数:传感器名称、传感器数据、回调标识、参数数据;
所述根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器后还包括:进一步查找到所述传感器所对应的获取或设置数据的操作集合,根据所述操作集合和所述参数中的传感器数据,在预置的数据表中找到执行传感器数据所表示的功能的函数指针;
当所述参数中的回调标识表示参数中的参数数据是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,否则为直接获取模式;
当为回调模式时,将所述参数数据注册为所述传感器数据对应的事件,在注册的事件被触发后,就可以回调注册事件中的注册函数实现注册函数定义的操作;当为直接获取模式时,将所述参数数据作为所述查找到的函数指针的参数,后续就可以调用所述函数指针实现函数指针的操作。
可以发现,本发明在传感器操作函数中的参数里设置了回调标识,根据参数中的传感器名称在预置的数据表中查找对应的传感器后,根据回调标识就可以确定查找到的传感器的API的操作模式为回调模式或直接获取模式,再根据所确定的API的操作模式执行对应处理,也就是说可以从API的这两种操作模式对应选择其中一种模式,相当于同时提供了两种操作模式的API供操作,这样可以满足所有传感器的操作需求,从而客服了现有技术的缺陷。
图2是本发明的处理方法第二流程图,包括:
步骤201、浏览器执行JS代码,当执行到与传感器相关的操作函数时,获取传感器操作函数中的参数。
例如,获取到传感器操作函数中的以下4个参数:传感器名称、传感器数据、回调标识(是否回调)、参数数据。
步骤202、根据获取到的传感器名称参数,在公共的参数对照表中,找到需要操作的传感器所对应的获取或设置数据的操作集合。
这个操作集合是会在公开的文档进行声明。各个浏览器按照这个声明,使用各自的数据结构(如列表、多重数组、哈希表)去实现。
浏览器中,预先本地存储公共的参数对照表,或者从服务器中下载存储公共的参数对照表。
参数对照表中存储的内容包括:传感器名称、操作集合、函数指针等。一般函数指针的名单都是由操作名称加前缀与后缀形成。
参数对照表的格式包括:
表1
步骤203、根据查找到的传感器所对应的操作集合,并结合获取到的传感器数据参数,找到执行传感器数据所表示的功能的函数指针。
步骤204、根据获取到的用于判断是否回调的第3个参数,判断获取到的第4个参数是否为回调的输入参数(即是否为回调函数),如果为false时,进入步骤205。如果为true时,进入步骤207。
步骤205、判断获取到的第4个参数不是回调的输入参数后,如果第4个参数是非函数类型,将第4个参数作为步骤203中找到的函数指针的参数。进入步骤206。
步骤206、调用函数指针,实现函数指针的操作。
在执行get或set函数时同步调用执行函数指针。这个函数指针指向的函数的功能是将第4个参数解析后的结果(即回调函数或参数)注册到dom事件中。
步骤207、判断获取到的第4个参数是回调的输入参数后,遍历第4个参数,从中查找出函数类型的参数,并将查找出的函数类型的参数注册为传感器数据对应事件的回调函数。进入步骤208。
步骤208、当注册的事件被触发后,通过浏览器的事件机制,回调注册事件中的注册函数,实现注册函数定义的操作。
以下结合具体应用例说明具体的处理方案:
例1:假设需调用传感器实现振动功能。
功能是:手机振动(Vibrate)1秒,停止0.5秒,然后振动2秒:(第4个参数为数组)
执行的JavaScript代码:
window.getSensorData("Vibrate","vibrate",false,[1000,500,2000]);
get函数是表示获取振动传感器的数据。
该应用例的执行流程如图3所示,包括:
步骤301、浏览器执行JS代码,当执行到代码中的getSensorDataDirect函数时,获取传递的4个参数("Vibrate","vibrate",false,[1000,500,2000])。
步骤302、根据获取到的参数1"Vibrate",查找参数对照表,找到Vibrate需要操作的传感器所对应的获取或设置数据的操作集合。
步骤303、根据Vibrate需要操作的传感器所对应的操作集合,以及参数2"vibrate",找到执行参数2所表示的功能的函数指针。
步骤304、根据获取到的参数3判断参数4是否为回调函数,发现为false,进入下一步骤305。
步骤305、判断获取到的参数4[1000,500,2000]不是回调函数,而是一个数组(非函数类型),则将参数4作为步骤303中找到的函数指针的参数。
其中,[1000,500,2000]中的1000表示1秒,500表示0.5秒,2000表示2秒。
步骤306、调用将参数4作为参数的函数指针,实现函数指针的操作,即手机振动1秒,停止0.5秒,然后振动2秒。
例2:假设需调用传感器实现注册电源的放电时间改变的事件,并显示出来:(回调参数)
该例中,charging属性用来表示当前是否正在充电,0表示充电,1表示放电。Time表示充电或放电的时间。当charging为0时,time表示充电的时间;为1时,time表示放电需要的时间。ondischargingtimechange表示电量发生改变时触发的事件。showDischargingtime是事情触发后被调用的函数,即已注册的回调函数。
执行的JavaScript代码:functionshowDischargingtime(param)//实现注册电源的放电时间改变的事件并显示
该应用例的执行流程如图4所示,包括:
步骤401、浏览器执行JS代码,当执行到getSensorDataDirect函数时,获取传递的4个参数("Battery","ondischargingtimechange",true,param)。
步骤402、根据获取到的参数1"Battery",查找参数对照表,找到Battery需要操作的传感器所对应的获取或设置数据的操作集合。
步骤403、根据Battery需要操作的传感器所对应的操作集合,以及参数2"ondischargingtimechange",找到执行参数2功能的函数指针。
步骤404、根据获取到的参数3判断参数4是否为回调函数,发现为true,即参数4是回调函数,进入下一步骤。
步骤405、遍历参数4param,在遍历param中,发现只有1个函数类型showDischargingtime,而没有showDischargingtime的参数,所以,就以showDischargingtime为参数注册第2个参数的ondischargingtimechange事件。进入步骤406。步骤406、当系统放电时间改变触发ondischargingtimechange事件后,通过浏览器的事件机制,回调注册事件中的showDischargingtime注册函数,显示是否正在充电,以及充电或放电需要的时间。
上述详细介绍了本发明的方法,以下介绍本发明对应的装置。
图5是本发明实施的装置示意图。
如图5所示,一种传感器接口处理装置,包括:信息获取单元501、模式选择单元502、处理单元503。
信息获取单元501,用于当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识;
模式选择单元502,用于根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器,根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式;
处理单元503,用于根据所确定的API的操作模式执行对应处理。
图6是本发明实施的装置二示意图。
如图6所示,该装置包括:信息获取单元501、模式选择单元502、处理单元503、调用单元504。
其中,所述模式选择单元502包括:第一查找单元5021、标识判断单元5022、第一选择单元5023、第二选择单元5024、第二查找单元5025。
第一查找单元5021,用于根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;
标识判断单元5022,用于判断所述参数中的回调标识是否表示是回调函数;
第一选择单元5023,用于所述标识判断单元5022判断出是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式;
第二选择单元5024,用于所述标识判断单元5022判断出不是回调函数时,确定所述查找到的传感器的API的操作模式为直接获取模式。
其中:所述信息获取单元501获取的参数还包括传感器数据和参数数据;
第二查找单元5025,用于在所述第一查找单元5021查找对应的传感器后,进一步查找到所述传感器所对应的获取或设置数据的操作集合,根据所述操作集合和所述参数中的传感器数据,在预置的数据表中找到执行传感器数据所表示的功能的函数指针;
所述第一选择单元5023在所述参数中的回调标识表示参数中的参数数据是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,所述第二选择单元5024在所述参数中的回调标识表示参数中的参数数据不是回调函数时,确定所述查找到的传感器的API的操作模式为直接获取模式;
所述处理单元503在为回调模式时,将所述参数数据注册为所述传感器数据对应的事件,在为直接获取模式时,将所述参数数据作为所述查找到的函数指针的参数。
调用单元504,用于当为直接获取模式时,调用所述函数指针实现函数指针的操作,当为回调模式时,在注册的事件被触发后,回调注册事件中的注册函数实现注册函数定义的操作。
综上所述,本发明在传感器操作函数中的参数里设置了回调标识,根据参数中的传感器名称在预置的数据表中查找对应的传感器后,根据回调标识就可以确定查找到的传感器的API的操作模式为回调模式或直接获取模式,再根据所确定的API的操作模式执行对应处理,也就是说可以从API的这两种操作模式对应选择其中一种模式,相当于同时提供了两种操作模式的API供操作,这样可以满足所有传感器的操作需求,从而客服了现有技术的缺陷。
此外,典型地,本发明所述的移动终端可为各种具有蓝牙功能的手持终端设备,例如具有蓝牙功能的手机、个人数字助理(PDA)。
此外,根据本发明的方法还可以被实现为由移动终端中的处理器(比如CPU)执行的计算机程序,并且存储在移动终端的存储器中。在该计算机程序被处理器执行时,执行本发明的方法中限定的上述功能。
此外,根据本发明的方法还可以实现为一种计算机程序产品,该计算机程序产品包括计算机可读介质,在该计算机可读介质上存储有用于执行本发明的方法中限定的上述功能的计算机程序。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储设备实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现所述的功能,但是这种实现决定不应被解释为导致脱离本发明的范围。
尽管前面公开的内容示出了本发明的示例性实施例,但是应当注意,在不背离权利要求限定的本发明的范围的前提下,可以进行多种改变和修改。根据这里描述的发明实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明的元素可以以个体形式描述或要求,但是也可以设想多个,除非明确限制为单数。
虽然如上参照图描述了根据本发明的各个实施例进行了描述,但是本领域技术人员应当理解,对上述本发明所提出的各个实施例,还可以在不脱离本发明内容的基础上做出各种改进。因此,本发明的保护范围应当由所附的权利要求书的内容确定。
Claims (9)
1.一种传感器接口处理方法,包括:
当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识;
根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式;
根据所确定的API的操作模式执行对应处理。
2.根据权利要求1所述的传感器接口处理方法,其中,根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式包括:
当所述参数中的回调标识表示是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,否则为直接获取模式。
3.根据权利要求1所述的传感器接口处理方法,其中:
所述参数还包括传感器数据和参数数据;
所述根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器后还包括:进一步查找到所述传感器所对应的获取或设置数据的操作集合,根据所述操作集合和所述参数中的传感器数据,在预置的数据表中找到执行传感器数据所表示的功能的函数指针;
所述根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式包括:当所述参数中的回调标识表示参数中的参数数据是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,否则为直接获取模式;
所述根据所确定的API的操作模式执行对应处理包括:当为回调模式时,将所述参数数据注册为所述传感器数据对应的事件,当为直接获取模式时,将所述参数数据作为所述查找到的函数指针的参数。
4.根据权利要求3所述的传感器接口处理方法,还包括:
当为直接获取模式时,调用所述函数指针实现函数指针的操作;
当为回调模式时,在注册的事件被触发后,回调注册事件中的注册函数实现注册函数定义的操作。
5.根据权利要求3所述的传感器接口处理方法,其中:
所述参数中的传感器名称为字符串类型,所述传感器数据为数组类型,所述回调标识为布尔类型,所述参数数据为数组类型。
6.一种传感器接口处理装置,包括:
信息获取单元,用于当执行代码过程中执行到传感器操作函数时,获取所述传感器操作函数中的参数,所述参数至少包括传感器名称、回调标识;
模式选择单元,用于根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器,根据所述参数中的回调标识,确定所述查找到的传感器的API的操作模式为回调模式或直接获取模式;
处理单元,用于根据所确定的API的操作模式执行对应处理。
7.根据权利要求6所述的传感器接口处理装置,其中,所述模式选择单元包括:
第一查找单元,用于根据所述参数中的传感器名称,在预置的数据表中查找对应的传感器;
标识判断单元,用于判断所述参数中的回调标识是否表示是回调函数;
第一选择单元,用于所述标识判断单元判断出是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式;
第二选择单元,用于所述标识判断单元判断出不是回调函数时,确定所述查找到的传感器的API的操作模式为直接获取模式。
8.根据权利要求6所述的传感器接口处理装置,其中:
所述信息获取单元获取的参数还包括传感器数据和参数数据;
所述模式选择单元还包括:
第二查找单元,用于在所述第一查找单元查找对应的传感器后,进一步查找到所述传感器所对应的获取或设置数据的操作集合,根据所述操作集合和所述参数中的传感器数据,在预置的数据表中找到执行传感器数据所表示的功能的函数指针;
所述第一选择单元在所述参数中的回调标识表示参数中的参数数据是回调函数时,确定所述查找到的传感器的API的操作模式为回调模式,所述第二选择单元在所述参数中的回调标识表示参数中的参数数据不是回调函数时,确定所述查找到的传感器的API的操作模式为直接获取模式;
所述处理单元在为回调模式时,将所述参数数据注册为所述传感器数据对应的事件,在为直接获取模式时,将所述参数数据作为所述查找到的函数指针的参数。
9.根据权利要求8所述的传感器接口处理装置,还包括:
调用单元,用于当为直接获取模式时,调用所述函数指针实现函数指针的操作,当为回调模式时,在注册的事件被触发后,回调注册事件中的注册函数实现注册函数定义的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410243477.2A CN105335131B (zh) | 2014-06-03 | 2014-06-03 | 传感器接口处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410243477.2A CN105335131B (zh) | 2014-06-03 | 2014-06-03 | 传感器接口处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105335131A true CN105335131A (zh) | 2016-02-17 |
CN105335131B CN105335131B (zh) | 2018-12-25 |
Family
ID=55285707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410243477.2A Active CN105335131B (zh) | 2014-06-03 | 2014-06-03 | 传感器接口处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105335131B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144597A (zh) * | 2017-06-19 | 2019-01-04 | 武汉斗鱼网络科技有限公司 | 一种获得下载接口回调信息的方法和装置 |
CN112749024A (zh) * | 2020-12-28 | 2021-05-04 | 深兰人工智能(深圳)有限公司 | 用于多传感器的数据分发方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101814084A (zh) * | 2010-01-11 | 2010-08-25 | 北京世纪高通科技有限公司 | Api管理方法及系统 |
CN101969469A (zh) * | 2010-10-25 | 2011-02-09 | 华为技术有限公司 | 电信能力开放中的回调处理方法及装置 |
CN102203736A (zh) * | 2011-05-20 | 2011-09-28 | 华为技术有限公司 | 开放应用程序编程接口调用方法及设备 |
US20120179760A1 (en) * | 2011-01-06 | 2012-07-12 | International Business Machines Corporation | Completion Processing For Data Communications Instructions |
-
2014
- 2014-06-03 CN CN201410243477.2A patent/CN105335131B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101814084A (zh) * | 2010-01-11 | 2010-08-25 | 北京世纪高通科技有限公司 | Api管理方法及系统 |
CN101969469A (zh) * | 2010-10-25 | 2011-02-09 | 华为技术有限公司 | 电信能力开放中的回调处理方法及装置 |
US20120179760A1 (en) * | 2011-01-06 | 2012-07-12 | International Business Machines Corporation | Completion Processing For Data Communications Instructions |
CN102203736A (zh) * | 2011-05-20 | 2011-09-28 | 华为技术有限公司 | 开放应用程序编程接口调用方法及设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144597A (zh) * | 2017-06-19 | 2019-01-04 | 武汉斗鱼网络科技有限公司 | 一种获得下载接口回调信息的方法和装置 |
CN109144597B (zh) * | 2017-06-19 | 2021-09-07 | 武汉斗鱼网络科技有限公司 | 一种获得下载接口回调信息的方法和装置 |
CN112749024A (zh) * | 2020-12-28 | 2021-05-04 | 深兰人工智能(深圳)有限公司 | 用于多传感器的数据分发方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105335131B (zh) | 2018-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107943489B (zh) | 数据分享方法及移动终端 | |
CN105224462B (zh) | 控件元素的识别方法和装置 | |
CN108089977B (zh) | 一种应用程序的异常处理方法、装置及移动终端 | |
CN106502703B (zh) | 一种函数调用方法和装置 | |
CN111752826A (zh) | 一种接口测试方法、装置、电子设备及存储介质 | |
CN111078556B (zh) | 应用测试方法及装置 | |
CN107896249B (zh) | 跨网络区域数据访问方法、装置、设备及存储介质 | |
CN109101327B (zh) | 一种轻应用的切换及移动终端 | |
CN108287706B (zh) | 数据处理方法及装置 | |
CN109902089B (zh) | 利用异构索引的查询方法、装置、电子设备及介质 | |
CN112311853A (zh) | 一种数据同步方法、装置、设备及计算机可读存储介质 | |
CN109324999B (zh) | 一种基于下载指令执行操作的方法和电子设备 | |
CN112262556A (zh) | 模型文件的管理方法和终端设备 | |
CN107918509B (zh) | 软件快捷方式提示设置方法、装置及可读存储介质 | |
CN107608707A (zh) | 具有热修复功能之应用检测方法、终端及可读存储介质 | |
CN112650498B (zh) | 静态库集成方法、装置、电子设备及存储介质 | |
CN105335131A (zh) | 传感器接口处理方法及装置 | |
CN112650530A (zh) | 多类库集成方法、装置、电子设备及可读存储介质 | |
CN110928797B (zh) | 一种代码耦合检测方法、装置、终端设备及存储介质 | |
CN109857300A (zh) | 多媒体服务提供方法及装置 | |
CN108958584B (zh) | 一种应用分类方法及终端 | |
CN112486567A (zh) | 代码的合并请求发送方法、装置、电子设备及存储介质 | |
CN112199997A (zh) | 一种终端及工具处理方法 | |
CN110879709A (zh) | 无用代码的检测方法、装置、终端设备及存储介质 | |
CN108491225B (zh) | 一种更新包生成方法及移动终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200527 Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: Alibaba (China) Co.,Ltd. Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping B radio 14 floor tower square Patentee before: GUANGZHOU UCWEB COMPUTER TECHNOLOGY Co.,Ltd. |