从Android应用程序更改代理

时间:2012-04-02 09:56:53

标签: android permissions proxy

我通过互联网搜索了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?也说我无法获得此许可。真的吗?来吧,我只是在改变代理设置!为什么我不允许这样做?至少,我可以将用户引导到他可以自己更改代理的地方,就像我们启用蓝牙一样吗?

1 个答案:

答案 0 :(得分:0)

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