通过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

代理远程地址

  • 和本地地址一个样子, 只不过是这是在Tools -> Map Remote里进行设置

总结

有了这三样, 调试真机上的所有, 不是问题.

总结调试webview的方式(安卓)的更多相关文章

  1. Chrome调试WebView时Inspect出现空白的解决方法(使用离线包不Fan墙)

    起因 使用HTML5开发Android应用时,少不了调试WebView.做前端的还是习惯Chrome的开发者工具,以前都是输入Chrome://inspect就可以调试WebView了,太方便了. 最 ...

  2. Android-WebView与本地HTML (Java调用--->HTML的方法)-(new WebView(this)方式)

    之前的博客,Android-WebView与本地HTML (Java调用--->HTML的方法),是在 findViewById(R.id.webview);,来得到WebView, 此博客使用 ...

  3. Android-WebView加载网页(new WebView(this)方式)

    之前的博客,都是 findViewById(R.id.webview);,来得到WebView, 此博客使用 new WebView(this)方式; AndroidManifest.xml中配置网络 ...

  4. 谷歌浏览器chrome://inspect/#devices调试webview的页面和控制台布局错乱问题

    谷歌浏览器chrome://inspect/#devices调试webview的页面和控制台布局错乱问题 : 谷歌浏览器的版本过高,选择60版本即可: 版本 60.0.3080.5(正式版本)

  5. iOS开发Safari调试WebView页面

    App混合开发现已是常态,不过作为app端开发人员,对H5页面的使用,可不能简单的局限于使用,一些简单的调试方法还是有必要了解的. 关于如何在使用webview过程中,如何对web内对内容进行调试,这 ...

  6. Android通过Chrome Inspect调试WebView出现404页面的解决方法

    无论是调试Web页面还是调试Hybrid混合应用,只要是调试Android的webview,都需要使用Chrome://inspect进行调试.但是国内开发者会出现404 Not Found错误: 解 ...

  7. 混合开发使用Chrome Inspect调试WebView预览手机界面和定位元素

    使用Chrome Inspect调试混合应用可以帮助我们排查问题.例如定位元素,快速修改CSS样式并实时查看效果.其实微信开发也是一种混合开发模式,微信可以看做一个原生的Android App搭配了一 ...

  8. Android通过Chrome Inspect调试WebView的H5 App出现空白页面的解决方法(不需要FQ)

    本文系博主原创,未经许可不得转载.如未经本人同意,私自转载或盗取资源提供下载,本人保留追究其法律责任的权利. 调试基于WebView的Hybrid App最舒服的工具当然是Chrome自带的开发者工具 ...

  9. 调试Python的方式

    调试Python有如下几种方式: 1 使用print语句 2 使用IDE的debuggers 3 使用命令行调试器pdb,这是Python的一个标准库,类似gdb 4 使用-i命令行选项.在使用命令行 ...

随机推荐

  1. hdu 1506 最大子矩阵面积

    //写动态规划的题目 要把主要问题提炼出来 这里的问题就是求area=(j-k+1)*a[i]  如果找到j k是解决这个题目的关键 这里暴力求肯定是要超时的 这里用dp来优化 #include< ...

  2. LCD1602 液晶

    它是一种专门用来显示字母.数字.符号的点阵型液晶模块 它是由若干个5x7或者5x10的点阵字符位组成 引脚 时序 操作步骤 初始化 写命令(RS=L)设置显示坐标 写数据(RS=H) 指令 清屏: 指 ...

  3. Qt 中配置 c99的问题

    Qt 5.3 版本 报错原因是c99标准问题的话,可以尝试下面方法 打开项目中xxx.pro工程文件 加入如下语句: QMAKE_CFLAGS += -std=c99

  4. 第二章、前端之css

    目录 第二章.前端之css 一.css介绍 二.css语法 三.css几种引入方式 四.css选择器 五.css属性相关 六.css盒子模型 第二章.前端之css 一.css介绍 css(Cascad ...

  5. Linux基础篇之CentOS的网络配置(DHCP,静态)

    1.启动系统,使用用户名.密码登录系统:  2. 配置网卡(DHCP获取IP地址.静态手动配置IP地址): 网卡的默认信息  DHCP模式修改为(下图): 静态IP地址修改为(下图): 无论哪种配置, ...

  6. 从0到1写rtos:事件的控制块与通知

    任务的状态: 未创建:只定义了任务代码,未调用tTaskInit()初始化 就绪:任务已经创建完毕,且等待机会占用CPU运行 运行:任务正在占用CPU运行代码 延时:任务调用tTaskDelay()延 ...

  7. Djang简介

    一:MVC简介 MVC的全拼为Model-View-Controller,最早由TrygveReenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语 ...

  8. 01_Redis简述

    一:关系型数据库和非关系型数据库的区别: 1:关系型数据库(SQL):数据和数据之间,表和字段之间,表和表之间是存在关系的: 优点:数据之间有关系,进行数据的增删改查时非常方便的:关系型数据库有事务操 ...

  9. List去重比较

    import java.util.ArrayList; import java.util.HashSet; import java.util.LinkedHashSet; import java.ut ...

  10. Linux的.a、.so和.o文件及链接时的命名

    在说明Linux的.a..so和.o文件关系之前,先来看看windows下obj,lib,dll,exe的关系 windows下obj,lib,dll,exe的关系 lib是和dll对应的.lib是静 ...