解決微信不能掃描下載的問題

  因爲微信掃描以後打開的內嵌瀏覽器對下載有限制,因此在掃描以後不能直接下載,解決辦法兩個:javascript

      1、將app放到騰訊應用寶上,這樣將應用寶上的連接生成一個二維碼,而後微信掃描以後即可以打開應用寶下載的一個頁面進行下載。java

      2、本身另寫一個頁面,若用若用微信掃描,則進入到這個頁面,當用戶點擊當即下載彈出一個提示信息‘在瀏覽器中打開’,不然如果使用其餘瀏覽器打開或者qq等進行掃描進入時自動下載app。linux

實現方法以下:android

一、掃描以後進入的頁面ios

<div class='download_div'>
    <a id='download_android' class='download_button'></a>
</div>
<div id='point' class='point'>
    <div class='point-info'>
    </div>
</div>

 

二、經過js判斷使用的是哪一個系統,而後連接去下載不一樣版本瀏覽器

<script type="text/javascript">
    $(function(){
        var version = checkVersion();

        if(!version.weixin){
            var url = createLink('index', 'download', 'os=android');
            location.href = url;
        }

        $('#download_android').on('click', function(event) {
            document.getElementById('point').style.display = 'block';
            event.preventDefault();
        });

        $('#point').on('click', function(event) {
            event.preventDefault();
            document.getElementById('point').style.display = 'none';
            });
    });

    function checkVersion(){
        var ua = window.navigator.userAgent.toLowerCase();

        var version = {
            "ios" : ua.indexOf("iphone") > -1,
            "android" : ua.indexOf("android") > -1 || ua.indexOf("linux") > -1,
            "safari" : ua.indexOf("iphone") > -1,
            "weixin" : (ua.match(/MicroMessenger/i) == 'micromessenger')
        };
        return version;
    }
</script>

注意:Android下載的頭信息和PC不一樣:微信

Android:app

header('Content-type: application/vnd.android.package-archive');

PC:iphone

header('Content-type: application/octet-stream');
相關文章
相關標籤/搜索