javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > uniapp获取手机设备号

uniapp使用uni-imei插件获取手机的设备号

作者:小杨不香菜

uniapp框架是一款开发跨平台应用的工具,它支持iOS、Android以及Web等多个平台,在这些平台中,uniapp可以访问某些设备的硬件信息,这篇文章主要给大家介绍了关于uniapp使用uni-imei插件获取手机设备号的相关资料,需要的朋友可以参考下

在uniapp中,可以使用uni-imei插件来获取设备号。使用步骤如下:

1. 安装uni-imei插件,可以在HBuilderX中直接搜索安装,或者在manifest.json文件中的“App原生插件配置”中添加以下配置:

"plugins": {    
      "uni-imei": {      
             "version": "1.1.0",      
             "provider": "uni-app.plus"    
        }
 }

2. 在需要获取设备号的页面中引入uni-imei插件:

import imei from '@/uni_modules/uni-imei/js_sdk/uni-imei.js';

3. 调用uni-imei插件的getImei方法获取设备号:

imei.getImei({    
       success: function (res) {           
                 console.log(res.imei); // 获取到的设备号
          }
  });

需要注意的是,获取设备号需要用户授权,因此在调用getImei方法之前需要先调用uni-imei插件的requestPermission方法请求授权。

补充知识:uniapp获取手机唯一标识IMEI、MAC、UUID

// #ifdef APP
// 导入Java类。Networklnterface类表示一个由名称和分配给此接口的IP地址列表组成的网络接口
const net = plus.android.importClass('java.net.NetworkInterface');
// 搜索具有指定名称的网络接口
const wlan0 = net.getByName('wlan0');
// 获得网卡的硬件地址
const macByte = wlan0.getHardwareAddress();
let mac = '';
//转换MAC地址的思路来自网上(https://blog.csdn.net/zhangzhen53377562/article/details/109183891)
macByte.forEach(item => {
	// .toString(16)数字以十六进制值显示
	let temp = '';
	if (item < 0) temp = (256 + item).toString(16);
	else temp = item.toString(16);
	if (temp.length == 1) temp = `0${temp}`;
	mac += temp;
});
mac = mac.toUpperCase();
let mac2 = mac;
for (let i = 2; i < mac2.length; i += 3) mac2 = mac2.slice(0, i) + ':' + mac2.slice(i);
console.log('MAC: ' + mac);
console.log('MAC2: ' + mac2);
console.log('IMEI: ' + plus.device.imei);
plus.device.getInfo({
	success: function(e) {
		console.log('getDeviceInfo success: ' + JSON.stringify(e));
	},
	fail: function(e) {
		console.log('getDeviceInfo failed: ' + JSON.stringify(e));
	}
});
// #endif

总结

到此这篇关于uniapp使用uni-imei插件获取手机的设备号的文章就介绍到这了,更多相关uniapp获取手机设备号内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文