总结调试webview的方式(安卓)
通过chrome直接进行调试
chrome调试_准备工作
- 请保证已经kexue上网
- 确定数据线为传输线, 不是充电线.
- 确保手机处于开发者模式, 链接电脑.
- 手机打开USB调试
- 确认手机已开启USB调试模式
- 打开Chrome, 地址栏输入
chrome://inspect
- 在Devices选项, 打开发现USB设备选择
- 看到自己的手机出现在设备列表中
- 手机上打开chrome浏览器
- 输入任意网址, 可在设备列表看到
- 点击
inspect
按钮, 即可进行调试 - 可以通过
window.location.href = "http://xxx.com"
遇到的问题
- 所有的问题全部来自于kexue上网
- 首先在PC端, 显示空白, 后显404页面, 未能再次复现
- 使用小米手机, 打开浏览器, 看到了这种情况, 必现, 未解决
- 小米手机进webview也不能调试
- 找到原因: kexue上网
- 有些老手机, 进行调试的时候, 遇到的问题
- 无法看到请求
- 不能在console栏中直接输入代码
- 找到原因: kexue上网
- 在控制台不能输入代码
- 找到原因: kexue上网
问题原因
注意:使用 Chrome Inspect 查看页面时,Chrome 需要从 https://chrome-devtools-frontend.appspot.com 加载资源,如果你得到的调试界面是一片空白,那你可能需要kexue上网。
安卓抓包
安卓抓包_准备工作
- 配置Charles代理端口号
- 安卓手机处于同一个wifi下
- 进入WiFi设置, 设置代理, 代理地址到pc
- 设置前面配置的端口号
- pc弹出提示框, 是否同意进行代理, 同意
此时遇到问题, 手机所有的链接变成不可信任(已关闭翻墙软件)
- 进入charles, 选择
Proxy -> SSL Proxiyng Settings ->勾选 “Enable SSL Proxying”
- 下面是之前安装的, 这次没有验证
- 安装证书到电脑,选择 Help->SSL Proxying->Install Charles Root Certificate 按提示安装即可
在“加密套接字协议层(SSL)”一栏选择始终信任
- 安装证书到手机上: Install Charles Root Certificate on a Mobile Device or Remote Browser
- 显示安装成功, 并给出地址
- 手机浏览器打开后, 输入
chls.pro/ssl
, 下载 - 点击后, 进行安装, 并输入名称即可
链接后无法上网问题
- 全部无法上网
- 网页报错, 链接并不可靠
- app无法正常发送请求
- 猜测需要使用代理解决
- 已打开的app, 再去代理, 可以上网
- 已经打开的app, 代理后, 不关闭, 可以正常上网
- 打开浏览器后, 网页不能用
- 再次重启app后, 不可上网
- 排除代理问题
- 访问使用http的网站正常
- 网站地址:
http://mayang.wicp.vip/
- 确认使用https
- 网站中的http图片均可以使用
- https的图片不可以使用
使用Charles进行代理
代理本地地址
- 首先进入
Tools -> Map Local
打开本地代理 - 选择
Add
添加代理地址 - 关掉翻墙, 软件, 并打开Charles的代理开关
- 测试成功
如何使用charles代理https
- 选中想要代理的链接
- 改变成本地地址
- 不明白为什么这种情况下, https可以使用?
- How to enable Map Local over https with Charles Proxy?
代理远程地址
- 和本地地址一个样子, 只不过是这是在
Tools -> Map Remote
里进行设置
总结
有了这三样, 调试真机上的所有, 不是问题.
总结调试webview的方式(安卓)的更多相关文章
- Chrome调试WebView时Inspect出现空白的解决方法(使用离线包不Fan墙)
起因 使用HTML5开发Android应用时,少不了调试WebView.做前端的还是习惯Chrome的开发者工具,以前都是输入Chrome://inspect就可以调试WebView了,太方便了. 最 ...
- Android-WebView与本地HTML (Java调用--->HTML的方法)-(new WebView(this)方式)
之前的博客,Android-WebView与本地HTML (Java调用--->HTML的方法),是在 findViewById(R.id.webview);,来得到WebView, 此博客使用 ...
- Android-WebView加载网页(new WebView(this)方式)
之前的博客,都是 findViewById(R.id.webview);,来得到WebView, 此博客使用 new WebView(this)方式; AndroidManifest.xml中配置网络 ...
- 谷歌浏览器chrome://inspect/#devices调试webview的页面和控制台布局错乱问题
谷歌浏览器chrome://inspect/#devices调试webview的页面和控制台布局错乱问题 : 谷歌浏览器的版本过高,选择60版本即可: 版本 60.0.3080.5(正式版本)
- iOS开发Safari调试WebView页面
App混合开发现已是常态,不过作为app端开发人员,对H5页面的使用,可不能简单的局限于使用,一些简单的调试方法还是有必要了解的. 关于如何在使用webview过程中,如何对web内对内容进行调试,这 ...
- Android通过Chrome Inspect调试WebView出现404页面的解决方法
无论是调试Web页面还是调试Hybrid混合应用,只要是调试Android的webview,都需要使用Chrome://inspect进行调试.但是国内开发者会出现404 Not Found错误: 解 ...
- 混合开发使用Chrome Inspect调试WebView预览手机界面和定位元素
使用Chrome Inspect调试混合应用可以帮助我们排查问题.例如定位元素,快速修改CSS样式并实时查看效果.其实微信开发也是一种混合开发模式,微信可以看做一个原生的Android App搭配了一 ...
- Android通过Chrome Inspect调试WebView的H5 App出现空白页面的解决方法(不需要FQ)
本文系博主原创,未经许可不得转载.如未经本人同意,私自转载或盗取资源提供下载,本人保留追究其法律责任的权利. 调试基于WebView的Hybrid App最舒服的工具当然是Chrome自带的开发者工具 ...
- 调试Python的方式
调试Python有如下几种方式: 1 使用print语句 2 使用IDE的debuggers 3 使用命令行调试器pdb,这是Python的一个标准库,类似gdb 4 使用-i命令行选项.在使用命令行 ...
随机推荐
- MySQL SELECT语法(三)JOIN语法详解
源自MySQL 5.7 官方手册:13.2.9.2 JOIN Syntax SELECT select_expr From table_references JOIN... WHERE... 如上所示 ...
- OSG3.4内置Examples解析【目录】
opengl渲染管线 从整体上解读OpenGL的渲染流程 一 从整体上解读OpenGL的渲染流程 二 osg与animate相关示例解析 OSG3.4内置Examples(osganimate)解析 ...
- base64转换成文件图片
最近搞小程序分享画布遇到的坑 canvas drawImage 传入的第一个参数是 imageResource 图片资源路径,这个参数通常由从相册选择图片 wx.chooseImage 或 wx.ge ...
- 13.SpringMVC核心技术-异常处理
常用的SpringMVC异常处理方式主要是三种: 1.使用系统定义好的异常处理器 SimpleMappingExceptionResolver 2.使用自定义异常处理器 3.使用异常处理注解 Si ...
- 2.2 使用 JAXP 对XML文档进行SAX解析
使用JAXP 对 XML文档进行 SAX解析: public class Demo1 { /** * 使用JAXP对XML文档进行SAX解析 * @throws Exception * @throws ...
- 8.JSP与JavaBean
1.<jsp:useBean> <html> <head> <title>jsp:useBean 标签的使用</title> </he ...
- JComboBox实现时间控件
1.认识JComboBox控件 最近学习使用了JComboBox组件: 在学习使用了JList以及Jtree组件之后,对于使用JComboBox还是很轻松的. JcomboBox的其实也是由一个Mod ...
- Kinect视频中运用全身运动和人体测量统计学的人物识别技术
摘要: 对于人物识别技术来说,动作和人体测量统计学对于光学差异并不敏感,甚至对于眼镜,头发,帽子的描述相当粗糙,现在的以步态为基础的识别技术都是基于对细节的精确描述和对步态周期的精确测量.这种方法需要 ...
- HandlerMethodArgumentResolver完美解决 springmvc注入参数多传报错
作为一个后端开发,能友好兼容前端参数传入错误等问题,在前端发布不小心多传一个参数导致系统错误的问题,一个广告系统是零容忍的,所以为了不犯错误,后端接收参数必须摒弃spring 的自动注入@Reques ...
- 关于join() 是否会释放锁的一些思考
# 首先从一个很有意思的问题开始: - 问 : Thread 的join() 方法是否会释放锁? - 答: 会! # 如果一切到这里就结束了,那可能也就没有这篇小记了,但是我的脑子却冒出了一些奇怪的想 ...