深入探索 Android 网络优化(三、网络优化篇)上

  • 2)、Map Local
  • 3)、弱网环境模拟

安装配置

1、下载 Charles
2、截获手机端的网络包。

需要配置手机与电脑连接同一 WIFI。

1)、电脑端设置 Charles — 打开 HTTP 代理并设置代理端口
  • Charles 菜单栏 => Proxy => Proxy Settings => 填代理端口 8888 并勾选 Enable transparent HTTP proxying。
2)、手机端设置 WIFI 代理及端口
  • 获取电脑 IP 地址
  • 点击 Charles 的 help => local address。
  • 设置 WIFI 代理及端口号
  • 手机设置 => WLAN => 查看当前连接的 WIFI 详情 => 最底部代理项设置为手动 => 配置 电脑 IP 地址与端口号8888。
3)、设置完成,运行任意联网程序,Charles 会弹出请求连接的确认框,点击 allow 即可。
3、截取 HTTPS

需要信任 Charles 的 CA 证书。

1)、打开 SSL 代理,并配置 Host 与 Port
  • 电脑端 Proxy => SSL Proxying Setting => 选中 Enable SSL Proxying 并点击 Add 配置 Host 与 Port 分半为 * 与 443。
2)、信任 Charles Proxy CA 机构
  • 电脑端 Help => SSL Proxying => Install Charles Root Certificate => 选中并双击 Charles Proxy CA 根证书颁发机构 => 点击信任 => 使用此证书时选择始终信任。
3)、手机端安装 Charles 颁发的 SSL 证书
  • 电脑端 Help => SSL Proxying => Install Charles Root Certificate on a Mobile Device,此时会弹出提示框让手机端访问 chls.pro/ssl 去下载证书。
4)、手机端安装证书
  • 从文件管理器中找到下载文件 => 如果是 .pem 结尾i,将后缀名改为 .crt 并点击该文件 => 输入锁屏密码 => 等待证书导入后配置证书名(我填的是 Charles)即可。

实践过程

选中目标网络请求

从 Overview 中可以看到很全面抓包信息 。

使用断点功能
1)、右键点击要断点的 URL,选中 BreakPoints 开启断点功能。
2)、点击顶部 Proxy => Breadkpoint Settings。
3)、双击 Breakpoints Settings 面板中的目标

URL,在弹出的 Edit Breakpoint 面板中进行编辑。

4)、这里默认选择断点 Request 与 Response,我们可以选择仅断点 Response 或 Request。点击确认即断点设置完成。
5)、然后,我们就可以点击主面板右侧的 Edit Response 编辑 Response,修改完成后点击最下方的 Execute 即可。
使用 Map Local
1)、自由模拟服务端的返回数据,以提前进行接口测试。
1)、右键点击要使用 Map Local 的 URL,选中Map Local 开启断点功能。
1)、然后,我们在 Edit Mapping 面板中选择 Map To 的 Local path,选择本地设定的 maplocal 本地数据(例如 JsonString)
弱网模拟功能
  • 1)、注意开启前需将 Map Local 关闭。

  • 2)、点击 Proxy => Throttle Setting => 选中 Enable Throttling

  • 3)、这里预设了很多模拟设置,我们只需将 网络包传输的速率 Throttle preset 设置为较低的速率(一般设为 256/512)。

碰到的问题

  • 1)、注意手机与笔记本电脑需要同一 WIFI 下,不能自己开热点或使用公司内网,否则无法在 电脑端 无法弹出手机连接 Charles 的提示确认框,并且也无法下载 Charles 提供的 SSL 证书。
  • 2)、手机端下载 Charles 提供的 SSL 证书时最好不使用系统浏览器访问。

3、Wireshark

强烈推荐 geektime-webprotocol

WireShark 主要可以用来对四种流进行跟踪,如下所示:

  • TCP
  • UDP
  • SSL
  • HTTP

1)、WireShark 基本使用

如何捕获报文
  • 1)、点击捕获->选项,打开捕获窗口
  • 网卡设备/流量/捕获过滤器,点击“开始”按钮开始抓包
  • 输出(指定缓存文件)/选项(显示、名称解析、自动停止抓包条件) 面板
  • 2)、点击捕获->停止,停止抓包
  • 24
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值