JS 手机浏览器唤醒手机QQ

 function awakenQQ(){
        var type = undefined;
        var param = "";
        var sid = 2;
        var rawuin = 0000000;//写qq号
            var qsig = "undefined";
            var QQApi = {
                openURL: function(url){
                var i = document.createElement('iframe');
                i.style.display = 'none';
                i.onload = function() { i.parentNode.removeChild(i); };
                i.src = url;
                document.body.appendChild(i);

                var returnValue = QQApi.__RETURN_VALUE;
                QQApi.__RETURN_VALUE = undefined;
                return returnValue;
            },
                isAppInstalled: function(scheme) {
                var parameters = {'scheme':scheme};
                var r = QQApi.openURL('jsbridge://app/isInstalled_?p=' + encodeURIComponent(JSON.stringify(parameters)));
                return r ? r.result : null;
            },
                isQQWebView: function(){
                return QQApi.isAppInstalled('mqq') == true;
            },
                __RETURN_VALUE: undefined
            };
            var usa=navigator.userAgent;
            var p;
            var mobile_q_jump = {
                android:"https://play.google.com/store/apps/details?id=com.tencent.mobileqq",
                ios:"itms-apps://itunes.apple.com/cn/app/qq-2011/id444934666?mt=8",
                winphone:"http://www.windowsphone.com/zh-cn/store/app/qq/b45f0a5f-13d8-422b-9be5-c750af531762",
                pc:"http://mobile.qq.com/index.html"
            };
            var isMQ = 0;
            if(typeof type == "undefined") type = 1;
            if(usa.indexOf("Android")>-1){
                p = "android";
            }
            else if(usa.indexOf("iPhone")>-1 || usa.indexOf("iPad")>-1 || usa.indexOf("iPod")>-1){
                p = "ios";
            }
            else if(usa.indexOf("Windows Phone") > -1 || usa.indexOf("WPDesktop") > -1){
                p = "winphone";
            }
            else {
                p = "pc";
            }
            if(p == "ios"){
                //防止循环
                if(history.pushState)
                history.pushState({},"t","#");
                isMQ = QQApi.isQQWebView();
                if (!isMQ){
                var sc = document.createElement("script");
                sc.src = "http://__.qq.com/api/qqapi.js";
                sc.onload = function(){
                if(window['iOSQQApi']){
                isMQ =iOSQQApi.device.isMobileQQ();
            }
            };
                document.body.appendChild(sc);
            }
            }
            else if(p == "pc" && qsig != "undefined"){
                window.open(qsig,"_self");
            }
            if(type == 1){//手Q
                var isSuccess = true;
                var f = document.createElement("iframe");
                f.style.display = "none";
                document.body.appendChild(f);
                f.onload = function(){
                isSuccess = false;
            };
                if(p == "ios" && sid == 1){
                f.src = "mqqapi://card/show_pslcard?src_type=internal&version=1&uin="+ rawuin +"&card_type=person&source=qrcode";
            }
                if(p == "ios" && sid == 2){//ios并且为群名片
                f.src = "mqqapi://card/show_pslcard?src_type=internal&version=1&uin="+ rawuin +"&card_type=person&source=qrcode";
            }
                else if(p != "pc"){
                var url = window.location.href.split("&");
                f.src = "mqqopensdkapi://bizAgent/qm/qr?url=" + encodeURIComponent(url[0]);
            }
                if(p == "android" && sid == 1){
                f.src = "mqqapi://card/show_pslcard?src_type=internal&version=1&uin="+ rawuin +"&card_type=person&source=qrcode";
            }
                if(p == "android" && sid == 2){//ios并且为群名片
                f.src = "mqqapi://card/show_pslcard?src_type=internal&version=1&uin="+ rawuin +"&card_type=person&source=qrcode";
            }
                var now = Date.now();
                setTimeout( function(){
                if((p == "ios" && !isMQ && Date.now() - now < 2000) || (p == "android" && !isSuccess) || ((p == "winphone" && Date.now() - now < 2000))){
                var jumpUrl = mobile_q_jump[p];
                if(jumpUrl) window.open(jumpUrl,"_self");
            }
            } , 1500);

            }
            }

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值