ホームページ  >  記事  >  ウェブフロントエンド  >  このリンクにより、携帯電話で QQ がトリガーされます。正常にジャンプできない場合は、まず QQ をアップグレードしてください。

このリンクにより、携帯電話で QQ がトリガーされます。正常にジャンプできない場合は、まず QQ をアップグレードしてください。

王林
王林転載
2020-05-23 17:08:049018ブラウズ

このリンクにより、携帯電話で QQ がトリガーされます。正常にジャンプできない場合は、まず QQ をアップグレードしてください。

背景紹介

ブラウザから QQ を呼び出してチャットすることは、多くの企業や企業で使用されている顧客サービス方法です。一部のモバイル ブラウザーは、QQ への直接ジャンプをサポートしていないか、アプリに埋め込まれた Web ページから QQ ページへのジャンプをサポートしていません。

本文

QQ プロモーションの公式 Web サイトである QQ を呼び出すためにジャンプするには、ログインするために呼び出す必要がある QQ 番号をスキャンするだけです。以下に示すようなコードを生成できます。

<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="点击这里给我发消息" title="点击这里给我发消息"/></a>

ここでの数字「123456789」は、呼び出す必要がある QQ 番号です。

この方法を使用すると、ほとんどのブラウザで QQ クライアントをアクティブ化し、チャット ページを見つけることができます。ただし、この方法は次の状況では失敗します:

1. 付属の Safari ブラウザApple の携帯電話では、App Store のリンクを開くかどうかを尋ねられます。「はい」を選択すると、App Store に直接ジャンプし、その後 QQ にジャンプします。ただし、2 回ジャンプするとパラメータが失われ、結果として、開くことができなくなります。必要なリンクを開きます。チャット オブジェクト;

2. 1 と同様の状況はモバイル Google ブラウザーにも存在します;

3. Web ページは自社開発アプリに埋め込まれており、 QQ をアクティブにする必要があります 1 と同様の状況も発生します;

Safari ブラウザは Apple の携帯電話で頻繁に使用されているため、ビジネス ニーズに応じて別の方法を見つける必要があります。

理解するうちに、アプリ間のつながりは、Webサイトのトップページを経由せずにページネーションに直接リンクするディープリンクという技術で解決できることが分かりました。

ディープ リンクの 1 つの解決策は、新しい URL スキームを定義することです。この URL スキームは、特定の URI を通じて別の APP にパラメーターを渡すことができるため、アプリ間の独立した非通信の状況が変わります。

QQ を単独で呼び出す場合、または Safari ブラウザで QQ を呼び出すことができない問題を解決するには、次の URI を使用できます:

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

番号「123456789」は、必要な QQ でもあります。呼ばれることに。

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

多くのテストを行った後、モバイル ブラウザが QQ を呼び出すさまざまな状況を次のように整理しました (いいえはテストが失敗したことを意味し、ok はテストが成功したことを意味します):

このリンクにより、携帯電話で QQ がトリガーされます。正常にジャンプできない場合は、まず QQ をアップグレードしてください。

URL スキームは APP 間の分離状況を解決するために特別に設計されているため、QQ を呼び出すために URL スキームをさまざまなコンピューター ブラウザーに適用しても何の効果もないことをここで言及する必要があります。コンピュータアプリケーション向けですが、QQプロモーションが提供するソリューションはコンピュータ側でも使用できます。

アプリが QQ にジャンプする問題を解決する方法はわかっていますが、多くの場合、ほとんどのブラウザ (コンピューター ブラウザを含む) で 1 ステップだけで済むように、上記の状況を解決する一般的な方法があればと考えています。一連のコードで問題を解決できます。

私は個人的に、ブラウザの userAgent を判断することでモバイル ブラウザとコンピュータ ブラウザを区別し、それぞれに異なるソリューションを提供しています。

HTML コード

<a href="javascript:void(0)" data-qq=&#39;qq&#39;>111111111111</a>

JavaScript コード

window.onload = function () {
    var as = document.getElementsByTagName(&#39;a&#39;);
    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(&#39;data-qq&#39;)) {            
            as[i].onclick = (function (i) {                
                return function (e) {                    
                var kefu = e.target ? e.target.getAttribute(&#39;data-qq&#39;) : e.srcElement.getAttribute(&#39;data-qq&#39;);                    if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent) || /(Android)/i.test(navigator.userAgent)) {                        window.open(kefu102);
                    }
                    else {window.open(kefu101);
                    }
                }
            })(i);
        }
    }
};

このプランでは、モバイル端末は URL スキームを使用し、コンピューター端末は QQ プロモーション プランを使用します。

さらに関連するチュートリアルを知りたい場合は、php 中国語 Web サイトの js 入門チュートリアル 列を参照してください。

以上がこのリンクにより、携帯電話で QQ がトリガーされます。正常にジャンプできない場合は、まず QQ をアップグレードしてください。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。