一种软件开发包的接口加载方法、装置及设备与流程

文档序号:16400639发布日期:2018-12-25 20:06阅读:143来源:国知局
一种软件开发包的接口加载方法、装置及设备与流程

本发明涉及计算机软件技术领域,特别是指一种软件开发包的接口加载方法、装置及设备。

背景技术

对于物联网设备使用运营商的网络时,物联网终端上为实现某一功能所安装的应用(app),在进行数据通信时,对网络运营商所提供的软件开发包(sdk),或者第三方提供的sdk,会有一定的定制需求,需要模组厂商针对不同的sdk定制不同的软件版本。

sdk的全称是softwaredevelopmentkit,中文的意思就是软件开发包。它提供一套有一定结构和逻辑的对外开发接口,封装对内的业务逻辑。开发者只需要按照说明文档使用相应的对外开发接口就可以实现预期的功能,简化了互联网应用开发流程,提高了互联网应用开发速度,并在一定程度上保证了互联网应用的开发质量。

然而,不同的网络运营商提供sdk的不同或者第三方提供的sdk的不同,导致物联网终端厂家在开发应用时,也需要做相应的适配工作,研发成本较高。



技术实现要素:

本发明提供了一种软件开发包的接口加载方法、装置及设备。当开发模组使用不同运营商的网络时,可以自动选择相应的sdk(软件开发包)或者profile(参数),实现sdk或者profile的自动适配,选择不同厂家sdk的过程对于物联网终端上的应用而言是不可见的,开发应用时不需要进行适配工作,便于应用的快速开发。

为解决上述技术问题,本发明的实施例提供如下方案:

一种软件开发包的接口加载方法,包括:

获取与物联网终端通信连接的目标网络的网络信息;

根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api。

其中,获取与物联网终端通信连接的目标网络的网络信息的步骤包括:

通过安装于所述物联网终端的sim卡或者usim卡,获取与所述物联网终端通信连接的目标网络的网络信息。

其中,通过安装于所述物联网终端的sim卡或者usim卡,获取与所述物联网终端通信连接的目标网络的网络信息的步骤包括:

获取安装于所述物联网终端的sim卡或者usim卡中存储的集成电路卡识别码iccid或者国际移动用户识别码imsi,获取与所述物联网终端通信连接的目标网络的网络信息。

其中,根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包,并加载所述sdk的应用程序编程接口api的步骤包括:

根据所述目标网络的网络信息,从多个网络对应的多套sdk中,自动选择与所述目标网络对应的sdk,并加载所述sdk的应用程序编程接口api。

其中,所述多套软件开发包具有相同的应用程序编程接口api,每个网络对应至少一套sdk。

其中,根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api的步骤包括:

根据所述目标网络的网络信息,从多个网络对应的一套sdk对应的多个参数中,自动选择与所述目标网络对应的所述sdk使用时对应的参数,并根据所述参数加载所述sdk的应用程序编程接口api。

其中,该套sdk具有一应用程序编程接口api,每个网络对应有一参数。

本发明的实施例一种软件开发包的接口加载装置,包括:

获取模块,用于获取与物联网终端通信连接的目标网络的网络信息;

选择模块,用于根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api。

其中,所述获取模块具体用于:通过安装于所述物联网终端的sim卡或者usim卡,获取与所述物联网终端通信连接的目标网络的网络信息。

其中,所述获取模块具体用于:获取安装于所述物联网终端的sim卡或者usim卡中存储的集成电路卡识别码iccid或者国际移动用户识别码imsi,获取与所述物联网终端通信连接的目标网络的网络信息。

其中,所述选择模块具体用于:根据所述目标网络的网络信息,从多个网络对应的多套sdk中,自动选择与所述目标网络对应的sdk,并加载所述sdk的应用程序编程接口api。

其中,所述多套软件开发包具有相同的应用程序编程接口api,每个网络对应至少一套sdk。

其中,所述选择模块具体用于:根据所述目标网络的网络信息,从多个网络对应的一套sdk对应的多个参数中,自动选择与所述目标网络对应的所述sdk使用时对应的参数,并根据所述参数加载所述sdk的应用程序编程接口api。

其中,该套sdk具有一应用程序编程接口api,每个网络对应有一参数。

本发明的实施例还提供一种软件开发包的接口加载设备,包括:

处理器,用于获取与物联网终端通信连接的目标网络的网络信息;并根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api。

本发明的实施例还提供一种物联网终端,包括如上所述的软件开发包的接口加载设备。

本发明的实施例还提供一种软件开发包的接口加载设备,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如上所述的方法。

本发明的实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机运行时,使得计算机执行如上所述的方法。

本发明的上述方案至少包括以下有益效果:

本发明的上述方案,通过获取与物联网终端通信连接的目标网络的网络信息;根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api;当开发模组使用不同运营商的网络时,可以自动选择相应的sdk(软件开发包)或者profile(参数),并加载所述sdk的应用程序编程接口api,实现sdk或者profile的自动适配,选择不同厂家sdk或者参数的过程对于物联网终端上的应用而言是不可见的,开发应用时不需要进行适配工作,便于应用的快速开发。

附图说明

图1为本发明的实施例软件开发包的接口加载方法的流程图。

图2为本发明的软件开发包的接口加载装置的模块框图。

图3为本发明的物联网终端的框架示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

如图1所示,本发明的实施例提供一种软件开发包的接口加载方法,包括:

步骤11,获取与物联网终端通信连接的目标网络的网络信息;

具体的,通过安装于所述物联网终端的sim卡或者usim卡,获取与所述物联网终端通信连接的目标网络的网络信息;

并进一步的,该步骤可以具体为:获取安装于所述物联网终端的sim卡或者usim卡中存储的集成电路卡识别码iccid或者国际移动用户识别码imsi,获取与所述物联网终端通信连接的目标网络的网络信息。

步骤12,根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api。

本发明的上述方案,通过获取与物联网终端通信连接的目标网络的网络信息;根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api;当开发模组使用不同运营商的网络时,可以自动选择并加载相应的sdk(软件开发包)或者profile(参数),实现sdk或者profile的自动适配,选择不同厂家sdk的过程对于物联网终端上的应用而言是不可见的,开发应用时不需要进行适配工作,便于应用的快速开发。

本发明的另一实施例中,在上述步骤11的基础上,步骤12可以具体包括:

根据所述目标网络的网络信息,从多个网络对应的多套sdk中,自动选择与所述目标网络对应的sdk,并加载所述sdk的应用程序编程接口api。

这里加载所述sdk的api具体可以是根据选择的目标网络对应的sdk,初始化该api。

其中,所述多套软件开发包具有相同的应用程序编程接口api,每个网络对应至少一套sdk。

该方案具体实现如下:

步骤1.各相关运营商厂家或者sdk提供商厂家定义一套统一的api(应用程序编程接口),比如可以称为iot_api;

步骤2.不同厂家分别提供一套sdk,每套sdk都实现了相同的api(具有相同api的sdk),即iot_api;每套sdk与sim(或usim)所属的运营商有对应关系;

步骤3.物联网终端插入某运营商的sim或者usim;

步骤4.物联网终端开机时自动根据sim或者usim上的信息加载对应的sdk;此后终端进入正常的工作状态。

具体举例如下:

定义一套iot_api,以c语言为例,详述如下,简洁起见,这里只列举了一个函数:

厂家a的sdk实现iot_api接口如下:

各厂家事先约定sim或者usim类型与不同厂家实现的对应关系,比如根据所属运营商对应如下:

模组开机时,对iot_api进行初始化,即加载接口的过程:

初始化完成后,应用程序直接使用iot_api即可,比如发送数据:

iot_api.send(my_data);

可以看出,上述选择不同厂家sdk的过程对于物联网终端上的应用程序而言是不可见的,因此,在开发该应用程序时,不需要针对不同厂家的sdk进行适配,减少了适配的工作,且不影响应用的正常使用。

本发明的另一具体实施例中,在上述步骤11的基础上,上述步骤12可以具体包括:

根据所述目标网络的网络信息,从多个网络对应的一套sdk对应的多个参数中,自动选择与所述目标网络对应的所述sdk使用时对应的参数,并根据所述参数加载所述sdk的应用程序编程接口api。

这里加载sdk的api具体可以是,根据该选择的目标网络应用的参数,对api进行初始化;其中,该套sdk具有一应用程序编程接口api,每个网络对应有一参数。

该方案具体实现如下:

步骤11.各相关厂家定义一套sdk,本发明的实施例中称为iot_sdk;该sdk实际使用时需要提供一套参数(profile),该参数包括但不限于各运营商网络的云端服务器地址;

步骤12.各运营商分别提供各自sdk实际使用时的profile(参数);

步骤13.物联网终端插入某运营商的sim或者usim;

步骤14.物联网终端开机时自动根据sim或者usim上的信息加载对应的profile;此后终端进入正常的工作状态。

具体举例:

定义一套参数集(即profile),以c语言为例,详述如下,简洁起见,这里只列举了一个参数:

厂家a定义的profile如下:

iot_profile_ta_iot_profile={a厂家ip};

厂家b定义的profile如下:

iot_profile_tb_iot_profile={b厂家ip};

定义一套iot_api,即各厂家对应一套sdk的api,以c语言为例,详述如下,简洁起见,这里只列举了一个函数,该函数接口用来将数据发送到云端服务器:

各厂家事先约定sim或者usim类型与不同厂家实现的对应关系,比如根据所属运营商对应如下:

模组开机时,对iot_api进行初始化,即接口加载的过程:

初始化完成后,应用程序直接使用iot_api即可,比如发送数据:

iot_send(my_data);

可以看出,上述选择不同厂家profile的过程,对于应用程序而言也是不可见的。因此,在开发该应用程序时,不需要针对不同厂家的sdk使用时的参数进行适配,因此,减少了适配的工作,且不影响应用的正常使用。

如图2所示,本发明的实施例一种软件开发包的接口加载装置21,包括:

获取模块211,用于获取与物联网终端通信连接的目标网络的网络信息;

选择模块212,用于根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api。

其中,所述获取模块211具体用于:通过安装于所述物联网终端的sim卡或者usim卡,获取与所述物联网终端通信连接的目标网络的网络信息。

其中,所述获取模块211具体用于:获取安装于所述物联网终端的sim卡或者usim卡中存储的集成电路卡识别码iccid或者国际移动用户识别码imsi,获取与所述物联网终端通信连接的目标网络的网络信息。

其中,所述选择模块212具体用于:根据所述目标网络的网络信息,从多个网络对应的多套sdk中,自动选择与所述目标网络对应的sdk,并加载所述sdk的应用程序编程接口api。

其中,所述多套软件开发包具有相同的应用程序编程接口api,每个网络对应至少一套sdk。

其中,所述选择模块212具体用于:根据所述目标网络的网络信息,从多个网络对应的一套sdk中,自动选择与所述目标网络对应的所述sdk使用时对应的参数,并根据所述参数加载所述sdk的应用程序编程接口api。

其中,该套sdk具有一应用程序编程接口api,每个网络对应有一参数。

需要说明的是,该装置是与上述方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。

本发明的实施例还提供一种软件开发包的接口加载设备,包括:

处理器,用于获取与物联网终端通信连接的目标网络的网络信息;并根据所述目标网络的网络信息,自动选择与所述目标网络对应的软件开发包的sdk,并加载所述sdk的应用程序编程接口api。

该处理器具体实现时,还可以实现上述方法中的任一步骤,该处理器可以由物联网终端中通信芯片中实现,也可以在物联网络终端的通信模组中实现,也可以是终端物联网终端的其它处理器中实现,对于sdk或者profile的选择可以有3种实现方式:

方式1.如果sdk在通信芯片中实现,则由通信芯片选择相应的sdk或者profile;

方式2.如果sdk在通信模组中实现,则由通信模组选择相应的sdk或者profile;

方式3.如果sdk在终端中其它处理器中实现,则由该处理器选择相应的sdk或者profile。

需要说明的是,无论采用哪种方式,对于sdk或者api的使用者即物联网应用而言,上述选择过程不需要应用干预,整个过程对于应用都是透明的。

本发明的上述实施例中的各种程序可以在芯片层面、模组层面、应用层面等不同层面实现,而不限于上述实施例中的所述的情况。

本发明的上述实施例实现了sdk或者profile根据sim/usim进行的自动选择,对于物联网应用而言,这个选择过程完全透明,既便于根据sim/usim进行sdk或者profile的定制化,也便于应用的快速开发。

如图3所示,本发明的实施例还提供一种物联网终端31,包括如上所述的软件开发包的接口加载设备或者如上所述的软件开发包的接口加载装置。

本发明的实施例还提供一种软件开发包的接口加载设备,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如上所述的方法。

本发明的实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机运行时,使得计算机执行如上所述的方法。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1