uni-app开发APP和H5时 如何获取 手机唯一标识 保证H5和APP该值唯一并且一致?

由于需要做H5和APP
需要一个唯一key 来绑定他们 判断出是同一个手机
查看了官方文档后 发现有一个方法 uni.getSystemInfo
但是真实测试中发现 在微信浏览器 手机自带浏览器 和 打包的测试APP中 deviceId 不一样

uni.getSystemInfo({

success: (res) => {

console.log(res);

console.log(res.deviceId);

console.log("res.deviceModel");

console.log(res.deviceModel);

//#ifdef H5

alert("deviceModel");

alert(res.deviceModel);

alert("deviceId");

alert(res.deviceId);

//#endif

},

});

请问还有什么办法能实现一个在多浏览器和APP中唯一值的办法吗?

如果没有办法获取唯一值 尝试使用IP+设备型号+设备名称来做一个减少重复概率 还能加其他什么东西减少重复吗


回答:

如果是 uni-app 的APP项目的话,可以使用 plus.device.getInfo 来获取设备唯一标识等信息。
uni.getSystemInfo 中的 deviceId ID是重新生成的:
uni-app开发APP和H5时 如何获取 手机唯一标识  保证H5和APP该值唯一并且一致?

如果是H5的话就没办法了,因为隐私问题,在浏览器端没办法获取到设备唯一标识等信息的。即使能够获取到浏览器指纹信息,切换了浏览器指纹信息也会变更的,并不会保证唯一不变的。

IP等信息也会变更的,比如说你手机断网保持30秒以上再次联网分配到到的IP就是一个全新的了。WiFi也是同理的,重新入网之后获取到的也是新的地址。

不知道你有什么样的业务需求,需要保证设备唯一。APP还能实现,网页必定没办法了。

以上是 uni-app开发APP和H5时 如何获取 手机唯一标识 保证H5和APP该值唯一并且一致? 的全部内容, 来源链接: utcz.com/p/934148.html

回到顶部