android shouldOverrideUrlLoading 部分手机不执行解决方案!亲测有效

首先说一下本人遇到的事,我需要在android的WebView 里面打开html网页,网页里面是有链接的,当用户长按链接的时候我需要拦截链接 并阻止打开,然后根据拦截下来的链接里面有我需要的文字在app里面打开相应的操作界面。

PS:我遇到的WebView shouldOverrideUrlLoading不执行 原因是因为我在js里面设置了计时器实现可以判断用户长按的功能(功能js贴在我博客里,需要的可以去复制粘贴即可使用),当android遇到html 的 js代码里面执行有计时器如:setTimeout就不会执行android WebView 里面的 shouldOverrideUrlLoading 。

好了,原因弄出来那么接下来就是如何彻底解决一劳永逸,本人尝试百度无数方法,什么onPageCommitVisible(包括onPage….任何方法),然而都没什么卵用,最终用了一个剑走偏方的方法。

解决思路:利用android WebView WebChromeClient 方法,该方法里面的onReceivedTitle每次HTML head title有变化都会执行。(当然可以是其他的,我只是拿title来举例)

下面是Html的title:

<head>
    <title>这里每次变化都会执行上面的android  WebView WebCh
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值