針對(duì)跳轉(zhuǎn)喚起QQ,QQ推廣的官方網(wǎng)站http://shang.qq.com/v3/index....,只需要掃描登錄需要被喚起的QQ號(hào),就可以生成一段代碼如下所示:
<a target="_blank" >
<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ì)失效:
由于Safari瀏覽器在蘋(píng)果手機(jī)端使用率很高,應(yīng)業(yè)務(wù)需求,就不得不為它找一種另外的方式。
單獨(dú)說(shuō)倒喚起QQ,或者解決Safari瀏覽器不能喚起QQ的問(wèn)題,可以使用如下的URI:
mqqwpa://im/chat?chat_type=wpa&uin=123456789&version=1&src_type=web&web_src=freshtime.cn
其中數(shù)字“123456789”同樣的是需要被喚起的QQ。
<a target="_blank" href="mqqwpa://im/chat?chat_type=wpa&uin=123456789&version=1&src_type=web&web_src=freshtime.cn">
123456789
</a>
通過(guò)多次測(cè)試,我整理出如下手機(jī)端瀏覽器喚起QQ的各種不同情況(其中no代表測(cè)試不成功,ok代表測(cè)試成功):
這里需要提到一點(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代碼
<a?href="javascript:void(0)"?data-qq='qq'>111111111111</a>
JavaScript代碼
window.onload = function () {
var as = document.getElementsByTagName('a');
var kefu101 = "http://wpa.qq.com/msgrd?v=3&uin=381232999&site=freshtime.cn&menu=yes";
var kefu102 = "mqqwpa://im/chat?chat_type=wpa&uin=381232999&version=1&src_type=web&web_src=freshtime.cn";
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推廣的方案。
版權(quán)聲明: 本站資源均來(lái)自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!
轉(zhuǎn)載請(qǐng)注明: 瀏覽器喚起qq進(jìn)行聊天的一些坑和解決方案