h5判断用户是否安装某个app,来调起app活下载app

h5在浏览器中无法判断出用户是否安装某个app,只是如果用户安装了这个APP调起app的时候,会使页面失去焦点

在微信里无法调起app,所以在微信里添加一个提示让用户在浏览器里打开。

    $(".goBuy").click(function () {//判断微信打开给出提示弹窗,浏览器打开的话,已安装app打开app,没有安装跳转到下载地址

        checkOutApp();

    })

    function checkOutApp() {

        var isBlur = false;

        // 通过URL scheme来调起APP        

        if(ua.match(/MicroMessenger/i)=="micromessenger") {  //是否微信打开

            $(".commonMask").show();

            $(".openInBrower").show();//微信打开出浮层,微信暂不支持Scheme打开非企鹅应用

            return false;

        }else{

            location.href = 'xinweifashion://';//app的 url scheme

            setTimeout(function () {

                if (!isBlur) {

                    location.href = 'https://android.myapp.com/myapp/detail.htm?apkName=tv.xinwei.xinweifashion';//app的下载地址

                }

            }, 1000);

        }

        // window 每次失去焦點

        window.onblur = function () {

            console.log('失去焦點');

            isBlur = true;

        };

        var hiddenProperty = 'hidden' in document ? 'hidden' :

            'webkitHidden' in document ? 'webkitHidden' :

                'mozHidden' in document ? 'mozHidden' :

                    null;

        var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange');

        var onVisibilityChange = function () {

            if (document[hiddenProperty]) {

                console.log('失去焦點');

                isBlur = true;

            }

        }

        document.addEventListener(visibilityChangeEvent, onVisibilityChange);

    }

猜你喜欢

转载自blog.csdn.net/u012011360/article/details/104824443