亚洲欧美日韩综合系列在线_91精品人妻一区二区_欧美大肥婆一级特大AA片_九色91视频免费观看_亚洲综合国产精品_av中文字幕在线不卡_久久精品色综合网_看黄色视频的软件_无卡无码高清中文字幕码2024_亚洲欧美日韩天堂网

該鏈接會(huì)喚起手機(jī)QQ,若無(wú)法正常跳轉(zhuǎn)請(qǐng)先升級(jí)QQ

來(lái)源:V 發(fā)布時(shí)間:2020-05-25 10:05:05 閱讀量:2376

、

背景介紹

從瀏覽器喚起QQ進(jìn)行聊天,是很多公司或者企業(yè)會(huì)用到的一種客服方式,然而很多時(shí)候,一些手機(jī)端瀏覽器并不支持直接跳轉(zhuǎn)到QQ,或者不支持從App內(nèi)嵌的網(wǎng)頁(yè)中跳轉(zhuǎn)到QQ頁(yè)面。

正文

針對(duì)跳轉(zhuǎn)喚起QQ,QQ推廣的官方網(wǎng)站,只需要掃描登錄需要被喚起的QQ號(hào),就可以生成一段代碼如下所示:

1

<a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=123456789&site=qq&menu=yes"><img border="0" src="http://wpa.qq.com/pa?p=2:123456789:52" alt="點(diǎn)擊這里給我發(fā)消息" title="點(diǎn)擊這里給我發(fā)消息"/></a>

這里的數(shù)字“123456789”就是需要被喚起的QQ號(hào)碼。

應(yīng)用這種方式,可以在大部分的瀏覽器中喚起QQ客戶端,并定位到聊天頁(yè)面,只是以下幾種情況中這種方式會(huì)失效:

1、蘋(píng)果手機(jī)自帶的 Safari 瀏覽器會(huì)提示是否在AppStore中打開(kāi)鏈接,如果選擇是就會(huì)直接跳轉(zhuǎn)到App Store 中,然后才能跳轉(zhuǎn)到QQ,但是兩次跳轉(zhuǎn)會(huì)丟失參數(shù),導(dǎo)致不能打開(kāi)需要聊天的對(duì)象;

2、在手機(jī)端Google瀏覽器中也會(huì)存在類(lèi)似于 1 中的情;

3、網(wǎng)頁(yè)內(nèi)嵌到自開(kāi)發(fā)的App中,需要喚起QQ時(shí)也會(huì)出現(xiàn)類(lèi)似與 1 的情況;

由于Safari瀏覽器在蘋(píng)果手機(jī)端使用率很高,應(yīng)業(yè)務(wù)需求,就不得不為它找一種另外的方式。

通過(guò)了解,發(fā)現(xiàn)app之間的聯(lián)系可以通過(guò)一種叫做深度鏈接的技術(shù)解決,所謂的深度鏈接就是繞過(guò)網(wǎng)站的首頁(yè)直接鏈接道分頁(yè)的一種鏈接技術(shù)。

深度鏈接中的一個(gè)解決方案就是定義一個(gè)新的URL Scheme ,這個(gè)URL Scheme可以通過(guò)特定的URI方式傳遞參數(shù)給另一個(gè)APP,從而改變App之間獨(dú)立不通信的局面。

單獨(dú)說(shuō)倒喚起QQ,或者解決Safari瀏覽器不能喚起QQ的問(wèn)題,可以使用如下的URI:

1

mqqwpa://im/chat?chat_type=wpa&uin=123456789&version=1&src_type=web&web_src=oicqzone.com

其中數(shù)字“123456789”同樣的是需要被喚起的QQ。

1

2

<a target="_blank" href="mqqwpa://im/chat?chat_type=wpa&uin=123456789&version=1&src_type=web&web_src=oicqzone.com">

 123456789</a>

通過(guò)多次測(cè)試,我整理出如下手機(jī)端瀏覽器喚起QQ的各種不同情況(其中no代表測(cè)試不成功,ok代表測(cè)試成功):

bd4a6de7ee3f4c188aab68632ae738b.png

這里需要提到一點(diǎn),將URL Scheme 的方案用于電腦的各種瀏覽器從而去喚起QQ是不起任何效果,因?yàn)閁RL Scheme是專(zhuān)門(mén)為解決APP之間孤立的情況而提出來(lái)的,并不適用于電腦應(yīng)用,但是在電腦端可以使用QQ推廣給出的的方案。

知道了如何解決App跳轉(zhuǎn)到QQ的方法,但是很多時(shí)候我們希望有一種通用的辦法可以解決上述幾種情況,保證在大多數(shù)瀏覽器(包括電腦瀏覽器)只需要一套代碼就可以解決問(wèn)題。

我個(gè)人通過(guò)判斷瀏覽器的userAgent區(qū)分手機(jī)端瀏覽器還是電腦端瀏覽器,然后為它們分別提供不同的方案:

HTML代碼

1

<a href="javascript:void(0)" data-qq='qq'>111111111111</a>

JavaScript代碼

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

window.onload = function () {

    var as = document.getElementsByTagName('a');

    var kefu101 = "http://wpa.qq.com/msgrd?v=3&uin=381232999&site=oicqzone.com&menu=yes";   

    var kefu102 = "mqqwpa://im/chat?chat_type=wpa&uin=381232999&version=1&src_type=web&web_src=oicqzone.com";   

    for (var i = 0, len = a.length; i < len; i++) {       

        if (as[i].hasAttribute('data-qq')) {           

            as[i].onclick = (function (i) {               

                return function (e) {                   

                var kefu = e.target ? e.target.getAttribute('data-qq') : e.srcElement.getAttribute('data-qq');                    if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent) || /(Android)/i.test(navigator.userAgent)) {                        window.open(kefu102);

                    }

                    else {window.open(kefu101);

                    }

                }

            })(i);

        }

    }

};

在這套方案中,手機(jī)端使用URL Scheme,電腦端使用QQ推廣的方案。


標(biāo)簽: PHP 環(huán)境搭建
分享:
評(píng)論:
你還沒(méi)有登錄,請(qǐng)先