一种获取移动终端标识的方法、服务器及系统与流程

文档序号:14993323发布日期:2018-07-20 22:56阅读:249来源:国知局

本发明涉及路由设备管理应用领域,尤指应用于路由设备管理应用的一种获取移动终端标识的方法、服务器及系统。



背景技术:

路由设备管理应用需要为每个客户端生成一个唯一的标识,方便服务器对客户端的数据统计和管理。

目前针对安卓手机,是根据安卓手机提供的androidid生成移动终端标识。在手机首次启动时,系统会随机生成一个64位的数字,把这个数字以16进制字符串的形式保存下来,就是androidid。

当前方案存在的问题是,不同的设备可能会产生相同的androidid,再加上一些生产厂家的bug,有的甚至全部为0,若此种手机装有路由设备管理应用,会产生一个移动终端标识对应多部移动终端的窘态。



技术实现要素:

本发明的目的是提供一种获取移动终端标识的方法、服务器及系统,可以让路由设备管理应用为每个客户端生成唯一的标识,方便服务器区分每个客户端,以及对客户端的数据统计和管理。

本发明提供的技术方案如下:

一种获取移动终端标识的方法,应用于服务器,所述服务器与移动终端通信连接,包括:步骤s100接收来自移动终端的报文请求;所述报文请求携带移动终端识别信息;步骤s200根据所述移动终端识别信息,获取移动终端标识;步骤s300将所述移动终端标识发送给所述移动终端。

在上述技术方案中,可以为每个客户端生成一个唯一的、安全的、可靠的移动终端标识,方便服务器对客户端进行数据统计和管理。

进一步,所述步骤s200包括:步骤s210根据所述移动终端识别信息,判断缓存区域中是否存在对应的移动终端标识;步骤s220当所述缓存区域存在对应的移动终端标识时,从所述缓存区域获取所述移动终端标识。

在上述技术方案中,针对已经有移动终端标识的客户端,当其再次打开时,可以从缓存区域快捷的获取移动终端标识。

进一步,所述步骤s210之后包括:步骤s230当所述缓存区域不存在对应的所述移动终端标识时,判断数据库中是否存在对应的移动终端标识;步骤s240当所述数据库中存在对应的移动终端标识时,从所述数据库中获取所述移动终端标识;步骤s250将所述移动终端识别信息及对应的所述移动终端标识写入所述缓存区域。

在上述技术方案中,针对已经有移动终端标识的客户端,当其再次打开时,如果从缓存区域未找到对应的移动终端标识,则可以从数据库中快速地获取移动终端标识。

进一步,所述步骤s230之后包括:步骤s260当所述数据库中不存在对应的所述移动终端标识时,根据预设的随机数算法生成随机盐参数;步骤s270根据所述移动终端识别信息和所述随机盐参数,利用预设的加密算法,计算所述移动终端标识;步骤s280将所述移动终端识别信息及对应的所述移动终端标识写入所述数据库和所述缓存区域。

在上述技术方案中,针对没有移动终端标识的客户端,利用加密算法生成移动终端标识,使移动终端标识更安全。

进一步,所述移动终端识别信息包括移动设备生产商、移动设备品牌、移动设备型号、移动设备cpu型号、设备识别码、国际移动设备身份码。

在上述技术方案中,移动终端识别信息为硬件设备相关的参数,根据移动终端识别信息和特定的算法,得到唯一的、可靠的、安全的移动终端标识。

本发明还提供一种服务器,包括:接收模块,用于接收来自移动终端的报文请求;所述报文请求携带移动终端识别信息;获取模块,与所述接收模块电连接,用于根据所述移动终端识别信息,获取移动终端标识;发送模块,与所述计算模块电连接,用于将所述移动终端标识发送给所述移动终端。

在上述技术方案中,可以为每个客户端生成一个唯一的、安全的、可靠的移动终端标识,方便路由设备管理应用按客户端进行数据统计和管理。

进一步,还包括:判断模块,与所述接收模块电连接,用于根据所述移动终端识别信息,判断缓存区域中是否存在对应的移动终端标识;所述获取模块,进一步用于当所述缓存区域存在对应的移动终端标识时,从所述缓存区域获取所述移动终端标识。

在上述技术方案中,针对已经有移动终端标识的客户端,当其再次打开时,可以从缓存区域快捷的获取移动终端标识。

进一步,所述判断模块,进一步用于当所述缓存区域不存在对应的所述移动终端标识时,判断数据库中是否存在对应的移动终端标识;所述获取模块,进一步用于当所述数据库中存在对应的移动终端标识时,从所述数据库中获取所述移动终端标识;以及,将所述移动终端识别信息及对应的所述移动终端标识写入所述缓存区域。

在上述技术方案中,针对已经有移动终端标识的客户端,当其再次打开时,如果从缓存区域未找到对应的移动终端标识,则可以从数据库中快速地获取移动终端标识。

进一步,所述获取模块,进一步用于当所述数据库不存在对应的所述设备标识时,根据预设的随机数算法生成随机盐参数;以及,根据所述移动终端识别信息和所述随机盐参数,利用预设的加密算法,计算所述移动终端标识;以及,将所述移动终端识别信息及对应的所述移动终端标识写入所述数据库和所述缓存区域。

在上述技术方案中,针对没有移动终端标识的客户端,利用加密算法生成移动终端标识,使移动终端标识更安全。

本发明还提供一种获取移动终端标识的系统,包括:前述的服务器;还包括:移动终端;所述移动终端,与所述服务器通信连接;所述移动终端包括:移动终端发送模块,用于当移动终端的目标应用软件开启时,向所述服务器发送报文请求;所述报文请求携带移动终端识别信息;移动终端接收模块,与所述移动终端发送模块电连接,用于接收来自所述服务器的所述移动终端标识。

在上述技术方案中,提供了一种获取移动终端标识的系统。

通过本发明提供的一种获取移动终端标识的方法、服务器及系统,能够带来以下至少一种有益效果:

1、本发明可以为每个客户端生成一个唯一的、安全的、可靠的移动终端标识,方便路由设备管理应用按客户端进行数据统计和管理。

2、本发明针对已经有移动终端标识的客户端,当其再次打开时,提供了一种快捷的方式获取移动终端标识。

附图说明

下面将以明确易懂的方式,结合附图说明优选实施方式,对一种获取移动终端标识的方法、服务器及系统的上述特性、技术特征、优点及其实现方式予以进一步说明。

图1是本发明的一种获取移动终端标识的方法的一个实施例的流程图;

图2是本发明的一种获取移动终端标识的方法的另一个实施例的流程图;

图3是本发明的一种服务器的一个实施例的结构示意图;

图4是本发明的一种服务器的另一个实施例的结构示意图;

图5是本发明的一种获取移动终端标识的系统的一个实施例的结构示意图。

附图标号说明:

100.服务器,200.移动终端,110.接收模块,120.获取模块,130.发送模块,140.判断模块,210.移动终端发送模块,220.移动终端接收模块。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。

为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。

在本发明的一个实施例中,如图1所示,一种获取移动终端标识的方法,应用于服务器,所述服务器与移动终端通信连接,包括:

步骤s100接收来自移动终端的报文请求;所述报文请求携带移动终端识别信息;

步骤s200根据所述移动终端识别信息,获取移动终端标识;

步骤s300将所述移动终端标识发送给所述移动终端。

具体的,当移动终端上的路由设备管理应用(简称路由app)被开启时,移动终端向服务器发送报文请求;所述报文请求是http(hypertexttransferprotocol,超文本传输协议)请求。该http请求携带了移动终端识别信息,所述移动终端识别信息是由若干反映移动终端的设备属性参数组成,比如该移动终端的生产商、品牌、型号、所用的cpu型号、移动终端提供的设备识别码、国际移动设备身份码(internationalmobileequipmentidentity,简称imei)等,可以包含其中一部分,也可以包含全部。

服务器根据该报文请求中携带的移动终端识别信息,得到移动终端标识,并将该移动终端标识发送给对应的移动终端。

为了保证移动终端标识的唯一性、安全性,可以采用若干个设备属性参数组成的移动终端识别信息,经过某种加密算法,得到移动终端标识。

在本发明的另一个实施例中,如图2所示,一种获取移动终端标识的方法,应用于服务器,所述服务器与移动终端通信连接,包括:

步骤s100接收来自移动终端的报文请求;所述报文请求携带移动终端识别信息;

步骤s210根据所述移动终端识别信息,判断缓存区域中是否存在对应的移动终端标识;

步骤s220当所述缓存区域存在对应的移动终端标识时,从所述缓存区域获取所述移动终端标识,并跳转到步骤s300;

步骤s230当所述缓存区域不存在对应的所述移动终端标识时,判断数据库中是否存在对应的移动终端标识;

步骤s240当所述数据库中存在对应的移动终端标识时,从所述数据库中获取所述移动终端标识;

步骤s250当所述数据库中存在对应的移动终端标识时,将所述移动终端识别信息及对应的所述移动终端标识写入所述缓存区域,并跳转到步骤s300;

步骤s260当所述数据库中不存在对应的所述移动终端标识时,根据预设的随机数算法生成随机盐参数;

步骤s270根据所述移动终端识别信息和所述随机盐参数,利用预设的加密算法,计算所述移动终端标识;

步骤s280将所述移动终端识别信息及对应的所述移动终端标识写入所述数据库和所述缓存区域;

步骤s300将所述移动终端标识发送给所述移动终端;

所述移动终端识别信息包括移动设备生产商、移动设备品牌、移动设备型号、移动设备cpu型号、设备识别码、国际移动设备身份码。

具体的,相对前一个实施例,本实施例用步骤s210-步骤s280替代了步骤s200。

首先根据所述移动终端识别信息,到缓存区域中去查找是否存在对应的移动终端标识,比如采用redis(remotedictionaryserver,远程数据服务)缓存来设计缓存区域;如果该移动终端曾经开启过路由管理服务应用,有过访问的记录,则移动终端标识很可能已生成,到缓存区域就能快速地找到。缓存区域通常用于短时间之内不会发生变化,而且易被频繁访问的数据备份,通常保存在内存中;使用缓存区域可以减轻数据库的负载,降低数据库的读写次数,而且从内存中读数据的速度比去数据库查询要快。如果从缓存区域找到所述移动终端标识,则将该移动终端标识发送给对应的移动终端。

由于缓存区域保留的数据有一定的时效性,比如,数据保留7天,到第8天,7天前存的数据很可能因容量等原因被删除;当缓存区域中未找到对应的移动终端标识时,则到数据库中去查找;如果该移动终端曾经开启过路由管理服务应用,有过访问的记录,则移动终端标识很可能已生成,在数据库中一般能找到。如果从数据库找到所述移动终端标识,则将该移动终端标识保存到缓存区域,在缓存区域建立起所述移动终端识别信息与该移动终端标识的对应关系,方便后续查找,并将该移动终端标识发送给对应的移动终端。

如果该移动终端是第一次开启路由管理服务应用,则服务器需要为该移动终端生成一个移动终端标识。移动终端识别信息包括移动设备生产商manufacturer、移动设备品牌brand、移动设备型号model、移动设备cpu型号cpumodel、设备识别码(比如,安卓手机采用androidid,苹果手机采用advid(广告id))、国际移动设备身份码imei。先根据预设的随机数算法,比如base64算法,生成6位随机盐参数randomsalt,作为中间字段,与移动终端识别信息组合在一起,如格式:manufacturer+brand+model+randomsalt+cpumodel+androidid+imei,拼接成一个string类型的key,再按预设的加密算法计算,比如md5算法,生成32位的移动终端标识,将该移动终端标识存储至数据库,并在数据库建立起所述移动终端识别信息与该移动终端标识的对应关系;将该移动终端标识存储至所述缓存区域,并在所述缓存区域建立起所述移动终端识别信息与该移动终端标识的对应关系。将该移动终端标识发送给对应的移动终端。

在本发明的另一个实施例中,如图3所示,一种服务器100包括:

接收模块110,用于接收来自移动终端的报文请求;所述报文请求携带移动终端识别信息;

获取模块120,用于根据所述移动终端识别信息,获取移动终端标识;

发送模块130,用于将所述移动终端标识发送给所述移动终端。

具体的,当移动终端上的路由设备管理应用(简称路由app)被开启时,移动终端向服务器发送报文请求;所述报文请求是http(hypertexttransferprotocol,超文本传输协议)请求。该http请求携带了移动终端识别信息,所述移动终端识别信息是由若干反映移动终端的设备属性参数组成,比如该移动终端的生产商、品牌、型号、所用的cpu型号、移动终端提供的设备识别码、国际移动设备身份码(internationalmobileequipmentidentity,简称imei)等,可以包含其中一部分,也可以包含全部。

服务器根据该报文请求中携带的移动终端识别信息,得到移动终端标识,并将该移动终端标识发送给对应的移动终端。

为了保证移动终端标识的唯一性、安全性,可以采用若干个设备属性参数组成的移动终端识别信息,经过某种加密算法,得到移动终端标识。

在本发明的另一个实施例中,如图4所示,一种服务器100包括:

接收模块110,用于接收来自移动终端的报文请求;所述报文请求携带移动终端识别信息;

判断模块140,与所述接收模块110电连接,用于当所述缓存区域不存在对应的所述移动终端标识时,根据所述移动终端识别信息,判断缓存区域中是否存在对应的移动终端标识;

获取模块120,与所述判断模块140电连接,用于当所述缓存区域存在对应的移动终端标识时,从所述缓存区域获取所述移动终端标识。

所述判断模块140,进一步用于当所述缓存区域不存在对应的所述移动终端标识时,判断数据库中是否存在对应的移动终端标识;

所述获取模块120,进一步用于当所述数据库中存在对应的移动终端标识时,从所述数据库中获取所述移动终端标识;以及,将所述移动终端识别信息及对应的所述移动终端标识写入所述缓存区域;

所述获取模块120,进一步用于当所述数据库不存在对应的所述设备标识时,根据预设的随机数算法生成随机盐参数;以及,根据所述移动终端识别信息和所述随机盐参数,利用预设的加密算法,计算所述移动终端标识;以及,将所述移动终端识别信息及对应的所述移动终端标识写入所述数据库和所述缓存区域;

发送模块130,与所述获取模块120电连接,用于将所述移动终端标识发送给所述移动终端。

具体的,相对前一个实施例,本实施例增加了判断模块,并对获取模做了功能增强。

当所述报文请求未携带移动终端标识时,首先根据所述移动终端识别信息,到缓存区域中去查找是否存在对应的移动终端标识,比如采用redis(remotedictionaryserver,远程数据服务)缓存来设计缓存区域;如果该移动终端曾经开启过路由管理服务应用,有过访问的记录,则移动终端标识很可能已生成,到缓存区域就能快速地找到。缓存区域通常用于短时间之内不会发生变化,而且易被频繁访问的数据备份,通常保存在内存中;使用缓存区域可以减轻数据库的负载,降低数据库的读写次数,而且从内存中读数据的速度比去数据库查询要快。如果从缓存区域找到所述移动终端标识,则将该移动终端标识发送给对应的移动终端。

由于缓存区域保留的数据有一定的时效性,比如,数据保留7天,到第8天,7天前存的数据很可能因容量等原因被删除;当缓存区域中未找到对应的移动终端标识时,则到数据库中去查找;如果该移动终端曾经开启过路由管理服务应用,有过访问的记录,则移动终端标识很可能已生成,在数据库中一般能找到。如果从数据库找到所述移动终端标识,则将该移动终端标识保存到缓存区域,在缓存区域建立起所述移动终端识别信息与该移动终端标识的对应关系,方便后续查找,并将该移动终端标识发送给对应的移动终端。

如果该移动终端是第一次开启路由管理服务应用,则服务器需要为该移动终端生成一个移动终端标识。移动终端识别信息包括移动设备生产商manufacturer、移动设备品牌brand、移动设备型号model、移动设备cpu型号cpumodel、设备识别码(比如,安卓手机采用androidid,苹果手机采用advid(广告id))、国际移动设备身份码imei。先根据预设的随机数算法,比如base64算法,生成6位随机盐参数randomsalt,作为中间字段,与移动终端识别信息组合在一起,如格式:manufacturer+brand+model+randomsalt+cpumodel+androidid+imei,拼接成一个string类型的key,再按预设的加密算法计算,比如md5算法,生成32位的移动终端标识,将该移动终端标识存储至数据库,并在数据库建立起所述移动终端识别信息与该移动终端标识的对应关系;将该移动终端标识存储至所述缓存区域,并在所述缓存区域建立起所述移动终端识别信息与该移动终端标识的对应关系。将该移动终端标识发送给对应的移动终端。

在本发明的另一个实施例中,如图5所示,一种获取移动终端标识的系统,包括:上述任一实施例中所述的服务器100;还包括:移动终端200;所述移动终端200,与所述服务器100通信连接;

所述移动终端200包括:

移动终端发送模块210,用于当移动终端的目标应用软件开启时,向所述服务器发送报文请求;所述报文请求携带移动终端识别信息;

移动终端接收模块220,与所述移动终端发送模块210电连接,用于接收来自所述服务器的所述移动终端标识。

具体的,相对前一个实施例,本实施例增加了移动终端,与前述服务器构成了一种获取移动终端标识的系统。

移动终端的目标应用软件是指移动终端上的路由管理服务应用。当移动终端的路由管理服务应用开启时,向服务器发送报文请求,该报文请求携带了移动终端识别信息。服务器根据移动终端识别信息,获取移动终端标识,并发送给对应的移动终端。

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

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