2010-07-07 101 views
1

如果用户在代理后面,他可以在android手机的“接入点选项”下设置代理设置有没有办法从android手机中读取代理设置?Android阅读手机代理设置

回答

1

您可以使用android.net。 Proxy类获取有关代理主机和端口的信息。

+0

不幸的是,这个班似乎不推荐使用。它说使用标准的Java虚拟机值... – dineth 2012-02-01 01:07:32

+0

但是,什么是Java虚拟机的属性? – virsir 2012-05-09 11:06:16

2

android.net.Proxy类只会给你主机和端口 - 我的代理也需要用户名和密码。

我能够挖掘Android源代码并找到其他代理值的存储位置。这在Android调试器中工作 - 我没有在实际设备上尝试过。

String proxy; 
int port = -1; 
String user; 
String password; 
Uri uri = Uri.parse("content://telephony/carriers/current"); 
Cursor cursor = managedQuery(uri, 
      new String[]{"proxy", "port", "user", "password"}, 
      null, null, null); 
if (cursor.moveToNext()) { 
    proxy = cursor.getString(0); 
    port = cursor.getInt(1); 
    user = cursor.getString(2); 
    password = cursor.getString(3); 
} 

(包含URI和列名的com.android.providers.telephony.TelephonyProvider Android的源。)

0

我开发,尝试抽象访问代理服务器设置为每一个Android版本的Android Proxy Library。您可以轻松获取用户当前选择的代理设置。