2020-09-07 手机设备唯一标识

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020-09-07 手机设备唯一标识相关的知识,希望对你有一定的参考价值。

参考技术A IMEI:International Mobile Equipment Identity 国际移动设备身份码的缩写。
是由15位数字组成的“电子串号”,它与每台手机一一对应,每个IMEI在世界上都是唯一的。在主板上的,重装APP不会改变。对于android 6.0以后的系统,需要用户授权才能取到IMEI。

IDFA:Identifier For Advertising,ios独有的广告标识符。
1、在同一个设备上的所有App都会取到相同的值。
2、如果用户完全重置系统((设置程序 -> 通用 -> 还原 -> 还原位置与隐私) ,或者用户明确的还原广告(设置程序-> 通用 -> 关于本机 -> 广告 -> 还原广告标示符) ,那么广告标示符会重新生成。
在今年iOS10推出后,苹果推出了“限制广告追踪”功能,设置的路径和iOS9一致。
不过经过实际的测试,在iOS10之前,即使用户打开这个功能,商家一样可以获取IDFA,只不过与之前的不一样了,每次切换这个开关与点击“还原广告标识符”的效果一样。
而iOS10就不一样了,当用户打开这个功能后,商家只能获取到一连串无意义的0

UDID:
用来标示设备的唯一性 。iOS 6 之后被禁止获取系统原生的UDID,但可以通过uuid,写入到钥匙串中,从而获得自定义的UDID(非系统原生),即使用户重装APP,只要每次都取这个钥匙串返回,就是不变的。

Uuid
UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。比如在当前这一秒,全世界产生的UUID都是不一样的;当然同一台设备产生的UUID也是不一样的。
通常平台会提供生成的API。是一个32位的十六进制序列,使用小横线来连接:8-4-4-4-12 。
苹果公司建议使用UUID为应用生成唯一标识字符串。重装APP后会发生改变。

浏览器h5获取不到具体的手机型号和设备唯一标识符

前言

最近对接一个登录接口,要求获取手机型号,设备唯一标识码,然后去百度了一大通,最后得出一个结论。
js是获取不了手机的IMEI信息的,因为js是运行在浏览器上的语言,只能获取浏览器内核信息,获取不了手机本身的设备型号(IMEI,IDFA),手机型号(iphone12,国行A123)
在这里插入图片描述

什么是设备唯一标识符?

在这里插入图片描述

具体代码实现

mobile-detect插件官方文档传送门

npm install mobile-detect --save
import mobileDetect from "mobile-detect"; //具体哪个页面用到单独引用
mounted() {
    //判断数组中是否包含某字符串
    function contains(sss, needle) {
      for (i in sss) {
        if (sss[i].indexOf(needle) > 0) return i;
      }
      return -1;
    }

    var device_type = navigator.userAgent; //获取userAgent信息
    var md = new mobileDetect(navigator.userAgent); //初始化mobile-detect
    var os = md.os(); //获取系统
    var model = "";

    if (os == "iOS") {
      //ios系统的处理
      os = md.os() + md.version("iPhone");
      model = md.mobile();
    } else if (os == "AndroidOS") {
      //Android系统的处理
      os = md.os() + md.version("Android");
      var sss = device_type.split(";");
      var i = contains(sss, "Build/");
      if (i > -1) {
        model = sss[i].substring(0, sss[i].indexOf("Build/"));
      }
    }
    this.mobile_models = os + "_" + model; 
    console.log('您的手机是:'+ this.mobile_models); //打印系统版本和手机型号
  },

结果
在这里插入图片描述
另外记录下官方文档这部分的内容,截取我们需要的userAgent信息
在这里插入图片描述

以上是关于2020-09-07 手机设备唯一标识的主要内容,如果未能解决你的问题,请参考以下文章

如何获取Android唯一标识

如何获取Android唯一标识

前端JS获取设备IP地址和唯一标识

如何获取Android唯一标识

如何获取Android唯一标识

Android设备标识