要想实现 一个二维码解决苹果和安卓手机的应用安装,
二维码内需要包含一个网页的链接地址,
在网页中区分当前设备是安卓还是苹果设备,
从而根据不同设备跳转到不同商店下载安装包!
国内安卓手机有多个品牌厂商,
需要针对安卓设备的品牌进入到对应品牌商店下载安装APP
1.在html源码中新增script
标签,并在其中新增判断设备类型的方法
<script>
// 是否ios终端
function isIOS() {
return !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
}
// android终端
function isAndroid() {
return navigator.userAgent.indexOf('Android') > -1 || navigator.userAgent.indexOf('Adr') > -1;
}
</script>
2.在script
标签,并在其中新增判断设备品牌的方法
function judgeBrand(sUserAgent) {
const isHuawei = sUserAgent.match(/huawei/i) == "huawei";
const isHarmony = sUserAgent.match(/harmonyos/i) == "harmonyos";
const isHonor = sUserAgent.match(/honor/i) == "honor";
const isOppo = sUserAgent.match(/oppo/i) == "oppo";
const isOppoR15 = sUserAgent.match(/pacm00/i) == "pacm00";
const isVivo = sUserAgent.match(/vivo/i) == "vivo";
const isXiaomi = sUserAgent.match(/mi\s/i) == "mi ";
const isXiaomiNew = sUserAgent.match(/xiaomi/i) == "xiaomi";
const isXiaomi2s = sUserAgent.match(/mix\s/i) == "mix ";
const isRedmi = sUserAgent.match(/redmi/i) == "redmi";
if (isHuawei || isHarmony) {
return 'huawei';
} else if (isHonor) {
return 'honor';
} else if (isOppo || isOppoR15) {
return 'oppo';
} else if (isVivo) {
return 'vivo';
} else if (isXiaomi || isRedmi || isXiaomi2s || isXiaomiNew) {
return 'xiaomi';
} else {
return 'default';
}
}
3. 针对自己特定需求,编写部分界面元素的显隐逻辑
4. 谨记:需使用设备默认的浏览器, 其他浏览器大多无法正确获取userAgent中的相关信息
5. 将html文件部署到可以访问的服务器上,获得访问地址
6. 将获得的访问地址,通过草料二维码转换成二维码,则大功告成!
附上html源码
网友评论