| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 移动开发 -> 记一次WebView加载带定位网址导致的闪烁bug -> 正文阅读 |
|
|
[移动开发]记一次WebView加载带定位网址导致的闪烁bug |
描述项目中封装好的 WebView 页面,在传入一个饿了么链接后(其他链接正常展示,如:https://www.baidu.com),无法正常展示并且开始疯狂闪烁,在
排查首先排除 手机Wifi代理 ,如果手机设置了 wifi 代理,一些网站有自己的证书验证机制,就会导致各种问题。时间宝贵,首先不要浪费时间在错误的方向上 其他链接正常,是有该链接展示有问题,那么先从这个链接开始看:
并且添加位置权限(注意 6.0 动态权限申请):
增加了上述定位代码,然而还是失败,不是原来的配方,但还是原来的问题。 这次排查的重点放在 解决问题走到死胡同,苦思无果,然后逛了逛网上开源项目,测试了下 AgentWebView 后发现,这个库又可以正常展示,下载其源码并且调试,最终确定问题是 webView 配置的 WebViewClient 的 首先看官方的 API 定义:
再回头看项目中封装的这部分代码:
可以看到,无论是什么链接,都由我们自己处理了,如果是 HTTP 链接,则手动再调用 WebView 来加载,这就是问题 url 死循环重定向的关键。 解决:
修改代码逻辑:如果是 HTTP 链接,则直接返回 false,由系统自己处理重定向,问题终于解决了。
总结bug 的排查需要细心,并且要从多个角度分析问题,精准定位才能解决的更快。 深入知其然更要知其所以然,疯狂分析背后原理中… |
|
|
| 移动开发 最新文章 |
| Vue3装载axios和element-ui |
| android adb cmd |
| 【xcode】Xcode常用快捷键与技巧 |
| Android开发中的线程池使用 |
| Java 和 Android 的 Base64 |
| Android 测试文字编码格式 |
| 微信小程序支付 |
| 安卓权限记录 |
| 知乎之自动养号 |
| 【Android Jetpack】DataStore |
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/29 1:56:49- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |