mac电脑,charles,安卓手机如何配置代理,以及配置代理之后无法上网。已解决

时间:2024-04-12 11:24:00

设备:

电脑:mac book pro

手机:小米10

charles:4.5.6

方法一:

步骤:

首先确保电脑,手机在同一局域网,

  1. charles设置代理:proxy -> proxysettings;设置如下:(端口号可以自己设置,默认为8888)
    mac电脑,charles,安卓手机如何配置代理,以及配置代理之后无法上网。已解决

  2. 手机端设置代理:设置 -> wlan -> 点击你连接的wifi进入详情,找到代理 -> 将代理改为手动,输入你的主机名(就是连接的wifi的ip),输入你设置的端口号,点击保存,(查看IP和你设置的端口号可以在charles中查看,如何查看看第三步)

  3. 在charles中查看你的IP,端口号,与下载证书的网址:Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser 如下图:

mac电脑,charles,安卓手机如何配置代理,以及配置代理之后无法上网。已解决

  1. 当在手机端输入完IP和端口号之后就已经设置好了,可以看一下charles有没有弹出allow或deny的界面,如果没有看第五步

  2. 注意charles最下方,如果出现

mac电脑,charles,安卓手机如何配置代理,以及配置代理之后无法上网。已解决

这个提示,需要在 Proxy -> Access Control Setting,把手机ip添加进去,一般是红色框中的,或者在手机端查看(点击你手机所连接的wifi详情,可以看到手机端连接的IP地址),charles设置如下图:
mac电脑,charles,安卓手机如何配置代理,以及配置代理之后无法上网。已解决

  1. 设置好之后会在charles中出现弹窗点击allow就好,点击手机断开wifi,重连,重新设置一遍代理,就可以了这个时候就可以上网下载证书啥的。证书网址怎么查看在第三步,(chls.pro/ssl)下载证书,安装就可以了,

  2. 我用的是UC浏览器,直接访问网址就会直接出现下载提示,要是没有提示就刷新一下浏览器就好,下载好之后在你手机的文件管理中找到你下载的证书,(uc浏览器下载是有一个ucdownloads 这个文件夹下,找到证书,点击安装就好,安装过程中需要指纹解锁或者输入密码)。

方法二:

方法二我没有试过但是应该可以,方法二可以不用去charles网址去下载证书,可以直接在charles中把证书保存到电脑上,通过微信或其他传到手机上

步骤如下:

  1. 前面charles设置,手机端设置都是一样的,

  2. charles保存证书到电脑,Help -> SSL Proxying -> Save Charles Root Certificate… 保存证书到电脑桌面或者什么文件夹(你能找到就行)

  3. 将证书通过微信传到手机里,手机保存证书,(我的是小米手机)如果直接点击不能安装,可以在wlan -> 高级设置 -> 安装证书,或者在系统安全 -> 加密与凭据 -> 从存储设备安装

如果是用微信保存的证书,在手机的文件管理中,找到保存证书的文件夹,在保存的时候是有路径显示的,记不住可以截图,我的是在downloads文件夹下的weixin文件夹中。

2020,9,4更新

更新一下, 即使按照上面的操作也有可能会在安卓手机上出现有些app或者小程序还是无法抓取到包,这个是因为你的安卓版本太高了,安卓7.0之后的版本针对于证书做了限制,系统不会信任用户自己安装的第三方证书,只会信任系统证书,遇到这种情况,要么使用安卓7.0版本之下的安卓手机抓包,或者使用ios系统抓包,在或者按照网上说的手机root修改代码啥的,能力目前有限还有修改过代码

遇到的坑:

  1. 在手机端配置好代理之后一直没法上网,就没法上网下载证书,通过微信传证书到手机上安装之后也是不能上网,最后发现是没有把手机的IP保存在charles中,可以用第五步的方法,把手机的IP添加到charles中,而且下面的选项框一定要勾选,我第一次就是添加了ip没有勾选选项框所以没有成功。