关于微信内WebView跳转到App Store

遇上了这个问题的时候,发现腾讯已经把直接跳转给禁止了。我很赞成,保护用户的安全。

解决方案有两个:

第一:使用微信的应用宝的微下载。强烈推荐这条方案,除非你是腾讯的竞争对手,否则就乖乖注册腾讯开放平台,然后注册你的app到应用宝吧

第二:在h5页面中提示,让用户点右上角的按钮,然后点击跳转到Safari,然后在Safari中打开


第二种方案要考虑到是safari还是微信的环境。以下是我的javascript代码

<script>
function showMessage(){
    if(isWeiXin()){

        document.getElementById('redirection').style.display="block";
        var h = document.getElementById('redirection').offsetHeight;
        document.getElementById('mainContent').style.top=h+'px';
    }else{
        <!-- 这里填下载地址 -->
        window.location.href="http://itunes.apple.com/us/app/id399608199";
    }
}


function isWeiXin(){
    var ua = window.navigator.userAgent.toLowerCase();
    if(ua.match(/MicroMessenger/i) == 'micromessenger'){
        return true;
    }else{
        return false;
    }
}
</script>

redirection这个id下的元素是一开始display=none的提示文字

当下载的按钮被点击,就会判断是否在微信环境中,如果在微信中,就显示出redirection的div。然后根据这块div的高度,把整体内容(mainContent)的起始位置下移

redirection div的高度因为是自适应,所以要用offsetHeight来动态计算。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值