关于Android WebView不支持location.href打开的解决方法 小米部分机型

遇到这个问题也纯属无奈,对于Android 【WebView】H5网页支付,的兼容性实在头疼,其实大部分机型都能正常使用,包括跳转至应用实现支付,可以偏偏有些机型就是特殊(毕竟Android开源,家家定制,家家不同),上线运行了一段时间,收到很多用户的反馈,我的机型不行,其中不乏主流的手机商的机型,比如小米mix2,小米5等等

问题:

API 26

小米 5 plus

原先的写法:

location.href = url; 

可是在应用内死活不跳转,后面没法子了,让应用打开外置默认浏览器进行网页支付,来缓解这个问题,但毕竟这样操作繁琐,严重降低了支付率。

那为什么不行呢?

研究了半天,对比了很多代码就是不行,今天看到有文章提到会对“location.href”限制,我突然想到这个问题,后面调试了下,竟然完美解决这个问题,实在惊喜!!!!

代码:

//强制转换,限制跳转方式
            function data_href(url) {
                $("#href_true").attr("href",url);//传入参数
                document.getElementById("href_true").click();//模拟点击
            }

(在H5支付页面的JS代码里加入这个方面)

<a id="href_true" style="display: none;"></a>

然后在<body>里面加入这个隐藏的跳转链接,用于模拟点击跳转

data_href(url);

这样操作之后就可以在应用里面测试了,完美拉起,哈哈哈

欢迎交流

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值