前言
在Android开发调试过程中,经常需要配置设备代理以便分析网络流量。虽然大部分Android设备可以通过WiFi设置界面配置代理,但在某些特殊情况下(如企业定制ROM、无GUI界面设备或系统限制),需要使用ADB命令来完成代理配置。本文将详细介绍通过ADB命令设置、验证和取消全局代理的完整流程。
代理设置方法
1. 设置全局HTTP/HTTPS代理
保持USB连接,执行以下命令(请将IP地址和端口号替换为你的代理服务器实际配置):
adb shell settings put global http_proxy 127.0.0.1:8888
adb shell settings put global https_proxy 127.0.0.1:8888
2. 取消代理设置
方法一(推荐,兼容性更好):
adb shell settings put global http_proxy :0
adb shell settings put global https_proxy :0
方法二(彻底删除代理设置):
adb shell settings delete global http_proxy
adb shell settings delete global https_proxy
代理配置验证
1. 验证代理是否设置成功
执行以下命令检查代理状态:
adb shell settings get global http_proxy
返回结果说明:
-
返回
IP:端口
(如127.0.0.1:8888
):代理设置成功 -
返回
:0
:当前无代理 -
返回
null
:从未设置过代理或已被删除
2. 实际流量验证
建议通过以下方式确认代理是否真正生效:
-
在代理服务器(如Charles)上观察是否有设备流量进入
-
在设备上访问网页,检查代理服务器是否能捕获请求
高级配置:代理排除列表
某些情况下,我们需要让特定地址绕过代理直接连接:
adb shell settings put global global_http_proxy_exclusion_list "localhost,127.0.0.1,example.com,192.168.1.100,10.0.0.0/8"
配置说明:
-
多个排除项用英文逗号分隔
-
整个列表用英文双引号括起来
-
支持格式:
-
单个IP(如
192.168.1.1
) -
域名(如
example.com
) -
IP段(如
192.168.0.0/24
)
-
验证排除列表:
adb shell settings get global global_http_proxy_exclusion_list