一种Android设备唯一标识的获取方法技术

技术编号:19480783 阅读:20 留言:0更新日期:2018-11-17 10:37
本发明专利技术公开一种Android设备唯一标识的获取方法,涉及计算机技术,获取设备唯一标识时,首先在app中获取Android系统的多个关键信息;然后根据关键信息构造设备唯一标识;将生成的设备唯一标识存储到多个位置;最后当获取设备唯一标识时首先从存储中获取,若无法获取到,则重新生成设备唯一标识。本发明专利技术以Android系统关键信息IMEI、Serial Number、AndroidId为基础生成设备标识,确保了设备标识的唯一性,且规避了暴露用户设备信息的风险;将设备唯一标识存储到多个位置,防止app被清除信息或卸载重装时唯一标识被彻底清除,保证了其稳定性。

【技术实现步骤摘要】
一种Android设备唯一标识的获取方法
本专利技术涉及计算机技术,具体的说是一种Android设备唯一标识的获取方法。
技术介绍
Androidapp开发中经常遇到需要用设备id来标识一台Android设备的场景,所以希望能够得到一个稳定可靠并且唯一的识别码。虽然Android系统中提供了这种设备识别码,由于目前流行的Android系统版本过多,设备也是来自不同厂商,且没有统一标准等原因,设备识别码的稳定性和唯一性并不理想。Android系统中并没有可以可靠获取所有厂商设备唯一id的方法。目前,在Android设备识别码开发中大多使用三种方法:1.在app中简单的随机生成一个全局唯一标识UUID,这样保证对在同一时空中的所有机器都是唯一。但是当这个唯一标识信息被清除后再次生成时,会生成一个全新的标识,这样就相当于同一台设备出现了两个唯一标识,无法保证唯一性。2.采用单一的Android系统关键信息作为标识,如IMEI、DEVICE_ID、ANDORID_ID、SerialNumber等其中一种。由于设备也是来自不同厂商,且没有统一标准等原因,有些标识有可能获取不到或获取到重复的标识,无法保证稳定性和唯一性。如果直接使用其作为设备标识,也会存在用户设备信息被泄漏的风险。3.采用多种Android系统关键信息生成设备统一标识,但不存储此标识,每次获取设备标识时依赖这些信息重新生成。当设备出现更换SM卡、系统升级等情况,这些关键信息可能会发生改变,会生成一个全新的唯一标识,无法保证其唯一性。
技术实现思路
本专利技术针对目前技术发展的需求和不足之处,提供一种Android设备唯一标识的获取方法。本专利技术所述一种Android设备唯一标识的获取方法,解决上述技术问题采用的技术方案如下:所述Android设备唯一标识的获取方法,其实现步骤包括:步骤一,在app中获取Android系统的多个关键信息;步骤二,根据关键信息构造设备唯一标识;步骤三,将生成的设备唯一标识存储到多个位置;步骤四,当获取设备唯一标识时首先从存储中获取,若无法获取到,则重新生成设备唯一标识。具体的,所述步骤一:在app中分别获取Android系统关键信息IMEI、SerialNumber、AndroidId三个标识码,以Android系统关键信息为基础通过运算生成设备唯一标识。具体的,所述步骤二:对Android系统关键信息进行特征提取,构造一个设备唯一标识。具体的,所述步骤三:将设备唯一标识存储在app缓存和设备的SD卡某个特定文件中。具体的,所述步骤三:将设备唯一标识存放于SD卡特定文件中时,对设备唯一标识进行加密处理。具体的,所述步骤四:当获取设备唯一标识时,首选读取app缓存,如果app缓存中不存在,再到设备的SD卡中特定文件中获取。具体的,所述步骤四:若app缓存中存在,则将设备唯一标识加密,并存放到SD卡特定文件中。具体的,所述步骤四:从SD卡中特定文件中获取设备唯一标识时,若SD卡中特定文件中存在,则将SD卡特定文件中获取到的内容进行解密处理。具体的,所述步骤四:若对SD卡特定文件中获取的内容解密成功,则表示设备唯一标识获取成功,同时将设备唯一标识存储到app缓存中。具体的,所述步骤四:若对SD卡特定文件中获取的内容解密失败,则获取Android系统关键信息IMEI、SerialNumber、AndroidId,重新生成设备唯一标识,并将设备唯一标识首先存储到app缓存中,然后进行加密存放到SD卡特定文件中。本专利技术所述一种Android设备唯一标识的获取方法,与现有技术相比具有的有益效果是:本专利技术Android系统设备唯一标识获取时,以Android系统关键信息IMEI、SerialNumber、AndroidId三个标识码为基础通过运算生成,确保了设备标识的唯一性,且规避了暴露用户设备信息的风险;将设备唯一标识存储到多个位置,相当于有了多重保险,防止app被清除信息或卸载重装时唯一标识被彻底清除,设备唯一标识不会轻易丢失,保证了其稳定性;在设备SD卡文件中存储时,必须将唯一标识进行加密后存储,防止被人为篡改,进一步提高了设备标识的唯一性和稳定性。附图说明为了更清楚的说明本专利技术实施例或现有技术中的
技术实现思路
,下面对本专利技术实施例或现有技术中所需要的附图做简单介绍。显而易见的,下面所描述附图仅仅是本专利技术的一部分实施例,对于本领域技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,但均在本专利技术的保护范围之内。附图1为所述Android设备唯一标识的获取方法的流程图。具体实施方式为使本专利技术的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本专利技术的技术方案进行清查、完整的描述,显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术的实施例,本领域技术人员在没有做出创造性劳动的前提下获得的所有实施例,都在本专利技术的保护范围之内。实施例:本实施例提出的一种Android设备唯一标识的获取方法,其实现步骤包括:步骤一,在app中获取Android系统的多个关键信息;步骤二,根据关键信息构造设备唯一标识;步骤三,将生成的设备唯一标识存储到多个位置;步骤四,当获取设备唯一标识时首先从存储中获取,若无法获取到,则重新生成设备唯一标识。本实施例Android设备唯一标识的获取方法,关于步骤一在app中获取Android系统的多个关键信息:在app中分别获取Android系统关键信息IMEI、SerialNumber、AndroidId三个标识码,并以此为基础通过运算生成设备唯一标识。由于Android系统版本、厂商定制系统中的Bug、手机中没有插入SM卡等限制,将可能导致上述三个标识并不能全部获取到或获取到的为重复值。而本实施例中设备唯一标识是基于这三个值的运算获得,则能成功的保证设备标识的唯一性,且规避了暴露用户设备信息的风险。这里,IMEI(InternationalMobileEquipmentIdentity)是国际移动设备识别码的缩写。俗称“手机串号”、“手机串码”、“手机序列号”,用于在GSM移动网络中识别每一部独立的手机,相当于手机的身份证号码。SerialNumber是产品序列号,Sim卡序列号,为了验证“产品的合法身份”而引入的一个概念,它是用来保障用户的正版权益,享受合法服务的;一套正版的产品只对应一组产品序列号。SerialNumber别称:机器码、认证码、注册申请码等。具体的,获取设备IMEI,提供的API(ApplicationProgrammingInterface,应用程序编程接口)定义如下:TelephonyManagertelephonyManager=(TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);Stringimei=""+telephonyManager.getDeviceId();获取设备SerialNumber,提供的API定义如下:TelephonyManagertelephonyManager=(TelephonyManager)context.本文档来自技高网
...

【技术保护点】
1.一种Android设备唯一标识的获取方法,其特征在于,其实现步骤包括:步骤一,在app中获取Android系统的多个关键信息;步骤二,根据关键信息构造设备唯一标识;步骤三,将生成的设备唯一标识存储到多个位置;步骤四,当获取设备唯一标识时首先从存储中获取,若无法获取到,则重新生成设备唯一标识。

【技术特征摘要】
1.一种Android设备唯一标识的获取方法,其特征在于,其实现步骤包括:步骤一,在app中获取Android系统的多个关键信息;步骤二,根据关键信息构造设备唯一标识;步骤三,将生成的设备唯一标识存储到多个位置;步骤四,当获取设备唯一标识时首先从存储中获取,若无法获取到,则重新生成设备唯一标识。2.根据权利要求1所述一种Android设备唯一标识的获取方法,其特征在于,所述步骤一:在app中分别获取Android系统关键信息IMEI、SerialNumber、AndroidId三个标识码,以Android系统关键信息为基础通过运算生成设备唯一标识。3.根据权利要求2所述一种Android设备唯一标识的获取方法,其特征在于,所述步骤二:对Android系统关键信息进行特征提取,构造一个设备唯一标识。4.根据权利要求3所述一种Android设备唯一标识的获取方法,其特征在于,所述步骤三:将设备唯一标识存储在app缓存和设备的SD卡某个特定文件中。5.根据权利要求4所述一种Android设备唯一标识的获取方法,其特征在于,所述步骤三:将设备唯一标识存放于SD卡特定文件中时,对设备唯一标识进行加密处理。6.根据权利要求5所述...

【专利技术属性】
技术研发人员:陈明超
申请(专利权)人:山东浪潮通软信息科技有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1