要件分析
リンクはマイクロ手紙で開いプロンプトで、その結果、マイクロチャネルを傍受に対して脆弱であるとき私たちは、それがそうでダウンロードしてアプリをすることはできません「のページを訪問することを停止し、」マーケティングやプロモーションを行います。そして、あなたは、マイクロチャネル関数内で直接アプリをダウンロードする必要があり、この問題のために、私たちの会社の前に治療の選択肢を共有するために、この記事を閉じるので、多くのユーザーは、このような実装を知りません。まず、私たちはプロの技術チームを持っていない場合、我々はこの技術のチームのプロバイダーを探すことができ、我々は以前に使用してきたことは366APIプラットフォームインターフェースで、結果は非常に安定し、良好でした。私たちは私たち自身の技術チームを持っている場合その後、ジャンプが独自のプログラムを書くことができ、基準ケースは、以下を参照してください。
I.最初に、私たちは366APIプラットフォームの使用について話します:
1私たちが使用する必要があるプラットフォームをオープンするには、ブラウザを使用し366API
2.コピーして、APIツールボックスにリンクを貼り付けリンクをクリックし、ショートジャンプの二次元コードを生成します
図3に示すように、二次元コードとリンクするために開いたり、スキャンコードする短い接続レプリケーションマイクロチャネル。
第二に、第二に、我々は、マイクロチャネルを構築する方法について話をブラウザのソースコードをジャンプ:
1、IOSはオープンソースブラウザにマイクロチャネルマスキングプロンプトアクセスを終了します
<スタイルタイプ= " テキスト/ CSS " > .mask { 位置:絶対。トップ:0PX。フィルタ:アルファ(不透明度 = 60)。背景色:#777 ; Z -index:1002 。左:0PX。 不透明度:0.5 ; -moz-不透明度:0.5 。 } </スタイル>
<前のクラス= "HTML"名= "コード">ます。<script type = "text / javascriptの"> // 兼容火狐、IE8 // 显示遮罩层 機能showMask(){ $( "#mask")。CSS( "高さ" 、$(文書).height()); $( "#mask")、CSS( "幅" 、$(文書).width()); $( "#mask" ).SHOW(); } // 隐藏遮罩层 関数hideMask(){ $( "#mask" ).hide(); } </ SCRIPT>
<DIV ID = "マスク"クラス= "マスク"> </ div> <HREF = "javascriptの:;" onclickの= "showMaskは()">我显示遮罩层</a>の/> <br点
Webリンクのコードを開くために2、Androidのエンドマイクロチャネル自動ウェイクデフォルトのブラウザ
。$コード。 " ' " ); IF($インフォ[ ' コード' ] == '' ){ エコー' ジャンプ失敗' ; 終了(0 ); } IF($インフォ[ ' 状態' ] == ' 1 ' ){ IF($インフォ[ ' COUNT ' ]> = $インフォ[ ' NUM ' ]){ エコー' ジャンプは失敗' ; 終了(0 ); } $時間 =のstrtotime($情報[' 時間' ]); IF(時間()> $時間){ エコー' ジャンプは失敗' ; 出口; } } 他{ エコーは、' ジャンプ失敗' ; 出口; } IF($インフォ[ ' www_url ' ] == '' ){ エコー' ランディングページを設定してください' ; 出口; } 他{ $ w_url_code = $インフォ[ ' RLがありますか' ]; } ?>
<?PHPの 関数get_ticket($コード){ // 初期化 $ CH = curl_init(); ますcurl_setopt($ CH、CURLOPT_SSL_VERIFYPEER、FALSE); // HTTPS要求は、証明書を検証し、ホストない $ヘッダー= 配列(); $ヘッダー[] = ' User--エージェント:のMozilla / 5.0のAppleWebKit / 537.51.1(KHTML、ヤモリのような)モバイル/ 15B202 UCBrowser / 11.7.7.1031モバイルAliApp(TUnionSDK / 0.1(iPhone; ZH-CN; CPU iPhoneのMac OS X-11_1_2様OS) 0.20)' ; $ヘッダー[] = ' リファラー:https://m.mall.qq.com/release/?busid=mxd2&ADTAG=jcp.h5.index.dis ' ; $ヘッダー[] = 'コンテンツタイプ:アプリケーション/ x-www-form-urlencodedで。文字セット= UTF-8 " ; ますcurl_setopt($ chを、CURLOPT_HTTPHEADER、$ヘッダ)。 $コンテンツ = curl_exec($ chを); curl_close($ chを); // $編曲= json_decode($コンテンツ、1); // ($ ARR [ '成功'] == '1'){もし // $ shotCode = $ ARR [ 'shotCode']。 // }他{ // $ shotCode = ''; // } // するpreg_match( '/オープンリンク\ ":\"。?(*)\ "} /'、$コンテンツ、$結果); // $のURL = $結果[1]; するpreg_match(" / HREF = \ "(。*?)#1微信/ "、 = $結果[ 1 ]; 返す$ URLを。 } $時間 =時間() - $インフォ[ ' ticket_time ' ]; $分 =床($時間/ 60 ); query_update(" jump_logs "、" 1 +カウント=カウント"。" コード= ' " $コード。。" ' " ); もし($分> = 59 ){ // 超过1小时如果、更新チケット $のURL = get_ticket($のw_url_code)。 もし($ URL){ query_update(" jump_logs "、" ticket_time = ' " .time()。" '、チケット= ' " $ URL。。" 'どこコード=' " $コード。。" ' " ); $ ticket_url = $ URL。' #' ; もし(strpos($ _、SERVER [ ' HTTP_USER_AGENT ' ]、' baiduboxapp ')|| strpos($ _、SERVER [ ' HTTP_USER_AGENT ' ]、"// 安卓百度手机APP エコー" の<script> window.location.href =「bdbox:// utilsのアクション= sendIntent&Minverの= 7.4&のparams =%7bは%22intent%22%3aの%22?' $のURL。。' %23wechat_redirect% 23wechat_redirect%23Intent%3bend%22%「7D; </ SCRIPT> " ; } 他{ エコー' の<script> window.location.href = " ' $のticket_url。' "; </ SCRIPT> ' ; } } } 他{ $ ticket_url = $インフォ[ ' チケット' ]。「# " ; もし(strpos($ _、SERVER [ ' HTTP_USER_AGENT ' ]、' baiduboxapp ')|| strpos($ _、SERVER [ ' HTTP_USER_AGENT ' ]、' baiduboxapp ')){ // 安卓百度手机APP エコー" の<script> window.location.href = "bdbox://?utilsのアクション= sendIntent&Minverの= 7.4&のparams =%7bは%22intent%22%3A%の22 '$情報[ ' チケット' ]。' %は23wechat_redirect%23wechat_redirect%23Intent%3bend%22%7D"。 </ SCRIPT> " ; エコー' の<script> window.location.href = " ' $のticket_url。。' "; </ SCRIPT> ' ; } } } ?> <!详情可参考ます。http:// www.366api.cn - >