判断网页是否在微信中打开的一个坑
本文由 小茗同学 发表于 2024-05-20 浏览(307)
最后修改 2024-06-20 标签:

仅仅是通过判断userAgent中是否存在weixin或者wechat还不够,今天突然发现ios的微信这2个都没有,正确的判断方法是判断是否有MicroMessenger,为了稳妥起见3个都一起判断:

/**
 * 获取当前APP名称
 */
getCurrentAppName() {
	const ua = navigator.userAgent.toLowerCase();
	if (ua.indexOf('alipayclient') >= 0) {
		return 'alipay';
	}
	if (ua.indexOf('micromessenger') >= 0 || ua.indexOf('wechat') >= 0 || ua.indexOf('weixin') >= 0) {
		return 'wechat';
	}
	if (ua.indexOf('alisupplier') >= 0) {
		return 'alisupplier';
	}
	return 'browser';
},

某个ios微信的ua:

某个安卓手机ua: