vue.js如何获取手机唯一识别码

JavaScript030

vue.js如何获取手机唯一识别码,第1张

获取唯一识别码:Device ID唯一的设备ID,如GSM网络的IMEI,CDMA网络的MEID / ESN,可能返回null(API文档的描述)只对手机设备有效,对于不在手机网络的设备,会返回null获取到的Device ID值,即使设备恢复出厂设置也不会改变需要READ_PHONE_STATE权限某些设备的Device ID实现有bug,会返回0或*TelephonyManagertm=(TelephonyManager)getSystemService(TELEPHONY_SERVICE)StringdeviceId=tm.getDeviceId()

WEB这东西,本来就是跨平台的东西,对于不同平台就有不同的浏览器,不同厂家的浏览器又不太一样。

尤其这种比较偏的底层接口。

2.就拿开发Android的WEB浏览器常用的WebView,就本身N个版本,接口改了又改。

你的网页还要跨平台,不管Android,还是WindowsPhone,适应于他们的变化有多复杂,自己要三思。

3.做那种混合型的App来让用户浏览自己的网站,内嵌WebView,通过JS和App交互,获取你需要的IMEI等等信息。

4.单纯Web页面是无法获取IMEI,除非W3C修订JavaScript标准,增加接口,并让浏览器厂商开始支持。

5.目前想获取IMEI,必须是app和Web页面相结合方式。

就如当前有个hbuilder开发工具,DCloud开发的。

6.可以调用手机系统API,原理类似于Java反射技术。

他们封装的比较好。可以直接通过js调用。

7.当然最后发布的不是真正的纯Web页面,是一个app安装包。

这里面的语法不是在任何浏览器都能运行的。

但发布的安装包,内部封装好的浏览器是可以支持相应的js方法。

8.web请求字段的UserAgent 段里只有操作系统版本,浏览器类型,浏览器内核版本这些信息,不会有其他信息。

9.至于ip,只要连接到web服务器,服务器就知道了,mac地址也是。

可以!

1、使用mobile-detect.js

2、html

<!DOCTYPEhtml>

<html>

<head>

<metahttp-equiv="Content-Type"content="text/htmlcharset=UTF-8"/>

<metaname="viewport"

content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">

<title>JS获取手机型号和系统</title>

</head>

<body>

</body>

<script src="jquery.js"></script>

<script src="mobile-adapt.js"></script>

<script>

//判断数组中是否包含某字符串

Array.prototype.contains=function(needle){

for(iinthis){

if(this[i].indexOf(needle)>0)

returni

}

return-1

}

vardevice_type=navigator.userAgent//获取userAgent信息

document.write(device_type)//打印到页面

varmd=newMobileDetect(device_type)//初始化mobile-detect

varos=md.os()//获取系统

varmodel=""

if(os=="iOS"){//ios系统的处理

os=md.os()+md.version("iPhone")

model=md.mobile()

}elseif(os=="AndroidOS"){//Android系统的处理

os=md.os()+md.version("Android")

varsss=device_type.split("")

vari=sss.contains("Build/")

if(i>-1){

model=sss[i].substring(0,sss[i].indexOf("Build/"))

}

//判断是否是oppoR9s

if(model="OPPOR9s"){

alert('您的手机是OPPOR9s')

}

if(model=="MI6"){

alert('您的手机是小米6')

}

}

alert('111'+model+'2222')//打印系统版本和手机型号

</script>

</html>