【问题标题】:Change proxy from android app从 android 应用程序更改代理
【发布时间】:2025-11-30 03:30:02
【问题描述】:

我在互联网上搜索并找到了this link。我跟着它,但它没有用。所以我查看了 logcat,它告诉我:

Setting http_proxy has moved from android.provider.Settings.System to android.provider.Settings.Secure, value is unchanged.

所以我加了

<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />

到清单和我的代码中,我改为

Settings.System.putString(getContentResolver(), Settings.Secure.HTTP_PROXY, "127.0.0.1:8080");//enable proxy

Settings.System.putString(getContentResolver(), Settings.Secure.HTTP_PROXY, "");//disable proxy

但我仍然得到相同的setting moved 错误。我错过了什么?

我看到问题How can I get the dreaded WRITE_SECURE_SETTINGS permission for my android app? 也说我无法获得此权限。真的吗?来吧,我只是在更改代理设置!为什么我不允许这样做?至少,我可以将用户引导到他可以自己更改代理的地方,就像我们启用蓝牙一样?

【问题讨论】:

标签: android permissions proxy


【解决方案1】:

您正在调用 Settings.System.putString() 而不是 Settings.Secure.putString()。在这两种情况下,传入的String名称通常都是“http_proxy”,不同的是你要保存到Secure类的数据库中。

【讨论】:

    最近更新 更多