Android微信内h5页面唤起浏览器打开页面的技术分析和实现

前言

晓杰之前做短网址防洪的时候就研究过本命题!很多链接在微信中会被拦截!我就想到了如何直接跳出微信浏览器打开!最近的支付宝红包推广链接也遇到此问题,今日就分享给大家!

实现原理

实现原理很简单:判断UA是安卓微信打开就直接走下载文件协议!安卓手机端会直接跳到浏览器,再次访问就直接跳转真实链接!
下面是实现代码:

$Mobile_DetectModel = new Mobile_DetectModel();
        $isWeChat =$Mobile_DetectModel->isWeChat();
        $isAndroidOS =$Mobile_DetectModel->isAndroidOS();
        if ($isWeChat && $isAndroidOS){
            header("Content-type:application/pdf");
            header("Content-Disposition:attachment;filename='downloaded.pdf'");
            exit();
        }
        //跳转真实链接

其中Mobile_DetectModel类使用了:https://github.com/serbanghita/Mobile-Detect

本文作者

Soujer

来源

https://segmentfault.com/a/1190000044832578