You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Androidx中为ProxyConfig配置代理用户名密码认证

Android WebView ProxyConfig 代理用户名密码配置方案(androidx.webkit:1.4.0)

androidx.webkit:1.4.0 版本的 ProxyConfig.Builder 没有内置代理身份凭证的配置API,代理用户名密码验证不需要修改原有代理配置的构建逻辑,而是通过 WebView 的 WebViewClient 回调单独实现:

1 原有代理配置逻辑保持不变

你现有setProxy方法里的ProxyConfig构建代码不需要调整,代理地址设置逻辑和原来一致即可。

2 新增WebView身份验证回调

给用到代理的WebView实例设置自定义WebViewClient,重写onReceivedHttpAuthRequest方法,识别代理认证请求后填入用户名密码:

webView.setWebViewClient(new WebViewClient() {
    @Override
    public void onReceivedHttpAuthRequest(WebView view, HttpAuthHandler handler, String host, String realm) {
        // 校验请求认证的host是否为你配置的代理地址,避免凭证泄露
        if (host.equals("123.123.123.123:8080")) {
            // 替换为实际的代理用户名、密码
            handler.proceed("proxy_username", "proxy_password");
            return;
        }
        // 非目标代理的认证请求走默认处理逻辑
        super.onReceivedHttpAuthRequest(view, handler, host, realm);
    }
});

3 注意事项

  • 代理用户名密码属于敏感信息,不要硬编码在业务代码中,建议使用系统加密存储方案保存
  • 必须对请求认证的host做校验,避免将代理凭证误提交给普通网站引发安全风险
  • 如果代理地址是动态配置的,要同步更新host校验的判断逻辑

内容的提问来源于stack exchange,提问作者Coco

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 16:57:01