cocos creator开发微信小游戏时引入Fingerprintjs2

fingerprintjs2使用参考:https://blog.csdn.net/qq_29169813/article/details/86672205
按照上面资料在pc上运行没有问题,但是打包成微信小游戏后就会crash.试了3部安卓和2部iphone都是100%出现。
经过测试发现,需要把cocos creator开发微信小游戏时引入Fingerprintjs2_第1张图片
componets中的webgl和webglVendorAndRenderer两项注释掉就可以了,不知道是不是微信不支持webgl?
修正一下:
不应该直接注释掉fingerprintjs2.js的components,应该调用以下代码时,在options的 excludes{}中添加
webgl和webglVendorAndRenderer两项为true,即可排除该两项。
而且requestIdleCallback在手机上是不会执行的,一定会走setTimeout。

	if (window.requestIdleCallback) {
			requestIdleCallback(function () {
			//必须在v2.0语法提供options参数
			Fingerprint2.getV18(options, function (result, components) {
  			console.log(result);//结果是哈希指纹
  			console.log(components);//组件是{key:'foo'的数组,值:'组件值'}
			})
    	})
	} else {
   		 setTimeout(function () {
   		 	Fingerprint2.getV18(options, function (result, components) {
  			console.log(result);//结果是哈希指纹
  			console.log(components);//组件是{key:'foo'的数组,值:'组件值'}
			}) }, 500)
	}

你可能感兴趣的:(cocos,creator,Fingerprintjs2,设备指纹)