问题:要抓手机app的包,手机配置好代理后,能连接到Charles,但是手机无法上网
解决
1:手机端设置代理
在移动设备上截获网络请求,我们的移动设备必须和电脑在同一网段,在我们电脑的网络设置中查看IP地址,然后在移动设备上点击我们连接的电脑上的网络,在代理一栏中,选择手动,将我们刚才查看的ip地址填写在这里,并且设置一个端口号。
一般情况下,当用户手机配置完代理后电脑charles会弹出一个弹框,如果没有出现点击Proxy->Access control settings,添加你的手机IP。
(1) 将help -> Local IP Addresses 中的本地IP手动写入到:Proxy -> Access Control Settings中
第二种方法:
在 Proxy -> Access Control Settings中添加个:0.0.0.0/0。
在Charles中的Proxy setting中如下勾选并配置端口号
说明:
Access Control Settings 顾名思义—-访问控制设置。这里配置charles要访问的域名范围,如果写成0.0.0.0/0则Charles将会识别所有IP,这样的话如果电脑本地ip改变也不用再手动配置,可谓是一个一劳永逸的方法。
3.手机端安装证书
如果手机端设置了代理,但没安装证书,,charles能监测到https请求但这时手机端将无法接到回应(不[能上网](https://www.baidu.com/s?wd=%E8%83%BD%E4%B8%8A%E7%BD%91&tn=24004469_oem_dg&rsv_dl=gh_pl_sl_csd))。
IOS
1\. 浏览器输入chls.pro/ssl,安装证书到本地。
2、 在手机`设置 -> 通用 -> 关于本机 -> 证书信任设置` 中打开信任。(***这一步没做将造成不能上网***)