研發手Q推廣遇到的一系列問題

第一次作和手Q對接的項目,雖然只是作一個靜態頁面,可是遇到的問題無數,分享出來,作個記錄。
項目需求,作一個靜態頁面,爲APP導流,要求記錄QQ號,爲後續分析準備,頁面訪問量使用MTA統計,頁面要可以分享。前端

一:手Q裏面的H5頁面不支持正則

考慮到只要收集QQ號碼,QQ號碼存在cookie裏面,用js直接獲取,而後異步上報回服務端,基本就搞定。
找到手Q團隊WEB端的研發諮詢怎麼獲取QQ號,給我了一段解析的代碼。
代碼以下:瀏覽器

uin = uin ? String(uin).replace('o0', '') : '';
uin = uin ? String(uin).replace(/o+/g, '') : '';

看來連正則都不用本身寫了,直接拿去用。緩存

編碼完成後,上傳服務器,在本地瀏覽器中測試一切正常,可是放到手Q中,怎麼也獲取不到QQ號碼,太奇怪了,抓包後分析,js只執行了替換'o0',並無執行下面的正則替換。服務器

沒有辦法只能從新修改,換成服務器解析,總算搞定,其實還有一個問題,後續再說。微信

二:每一個APP的分享都有一套本身的API

一開始就使用了手Q裏面的分享。cookie

<meta itemprop="name" content="標題">
<meta itemprop="description" content="描述">
<meta itemprop="image" content="圖片">

從手Q裏面分享出去,沒有任何問題可是若是是二次分享,好比,手Q分享到微信,再從微信分享到微信,這個時候就須要使用微信的分享API。異步

三:微信分享到QQ的API網上幾乎沒有

微信分享的API是咱們前端給的,裏面有發給好友,朋友圈,微博,惟獨沒有分享到QQ。用Google查了半天,一直沒有找到,只能根據前面的結構,猜想分享到QQ怎麼寫,運氣還不錯,幾回以後居然對了。測試

// 發送到QQ
WJ.on('menu:share:qq', function () {
    WJ.invoke('shareQQ', config_share, function (res) {
    });
});

四:8位如下的QQ號獲取不到

使用問題一里面的正則,可以正常捕獲,9位以上的QQ號,內側的時候分析數據,發現8位如下的QQ都出現了前面有0的狀況。
查詢文檔後發現,騰訊的QQ號規則是o+10位,不滿10位的自動補0,因此前面的正則捕獲不到,8位如下的。ui

五:手機的分享API,在iOS系統下獲取不到標題

試運行階段,發現iOS下分享老是獲取不到標題,可是安卓下倒是正常的,抓包後發現,iOS下分享的時候自動抓取<title>裏面的內容,並不會去讀取name的內容,解決辦法,保持name和title的內容一致。編碼

六:在QQ上發送連接,抓取的圖文描述一直不正確

正常狀況是這樣的
圖片描述

可是咱們發出去後抓取的是這樣的
圖片描述

QQ上抓取網頁,第一次抓取後會一直緩存一段時間,咱們有一個預發佈環境,網址是和正式環境同樣,可是隻能內網訪問,因此在QQ上傳播以後,QQ抓取的是外網的,天然出現了錯誤。找到手Q的團隊幫忙清理了下緩存,再次在QQ上發送連接一切正常。

七:手Q和PC的QQ不是一個部門

原覺得這樣就結束了,咱們以前一直在手機上調試,一切正常,可是一次偶然的機會把連接發送都PC版的QQ上,發現連接依舊是錯的,諮詢手Q的團隊,才知道PC版的QQ是另一個團隊。

八:連接的大小寫

咱們給出的連接格式是AbbCC的樣子,正常配置的是沒有問題的,可是有的時候手Q會幫咱們推廣,連接的樣子會變成Abbcc或者abbcc,經過MTA分析出來,還好我提早作了處理,這個問題算是躲過了。

問題九:網頁內部的APP下載連接可能會被攔截

在運行了一段時間以後,忽然某天發現APP的下載連接不能下載了,抓包以後,發現被攔截了,諮詢手Q團隊,手Q的推廣連接有幾種模式,修改運營配置後,正常下載。

相關文章
相關標籤/搜索