FileDocCategorySizeDatePackage
Proxy.javaAPI DocAndroid 1.5 API3954Wed May 06 22:41:54 BST 2009android.net

Proxy

public final class Proxy extends Object
A convenience class for accessing the user and default proxy settings.

Fields Summary
public static final String
PROXY_CHANGE_ACTION
Constructors Summary
Methods Summary
public static final java.lang.StringgetDefaultHost()
Return the default proxy host specified by the carrier.

return
String containing the host name or null if there is no proxy for this carrier.

        String host = SystemProperties.get("net.gprs.http-proxy");
        if (host != null) {
            Uri u = Uri.parse(host);
            host = u.getHost();
            return host;
        } else {
            return null;
        }
    
public static final intgetDefaultPort()
Return the default proxy port specified by the carrier.

return
The port number to be used with the proxy host or -1 if there is no proxy for this carrier.

        String host = SystemProperties.get("net.gprs.http-proxy");
        if (host != null) {
            Uri u = Uri.parse(host);
            return u.getPort();
        } else {
            return -1;
        }
    
public static final java.lang.StringgetHost(android.content.Context ctx)
Return the proxy host set by the user.

param
ctx A Context used to get the settings for the proxy host.
return
String containing the host name. If the user did not set a host name it returns the default host. A null value means that no host is to be used.


                                                                             
          
        ContentResolver contentResolver = ctx.getContentResolver();
        Assert.assertNotNull(contentResolver);
        String host = Settings.Secure.getString(
                contentResolver,
                Settings.Secure.HTTP_PROXY);
        if (host != null) {
            int i = host.indexOf(':");
            if (i == -1) {
                if (android.util.Config.DEBUG) {
                    Assert.assertTrue(host.length() == 0);
                }
                return null;
            }
            return host.substring(0, i);
        }
        return getDefaultHost();
    
public static final intgetPort(android.content.Context ctx)
Return the proxy port set by the user.

param
ctx A Context used to get the settings for the proxy port.
return
The port number to use or -1 if no proxy is to be used.

        ContentResolver contentResolver = ctx.getContentResolver();
        Assert.assertNotNull(contentResolver);
        String host = Settings.Secure.getString(
                contentResolver,
                Settings.Secure.HTTP_PROXY);
        if (host != null) {
            int i = host.indexOf(':");
            if (i == -1) {
                if (android.util.Config.DEBUG) {
                    Assert.assertTrue(host.length() == 0);
                }
                return -1;
            }
            if (android.util.Config.DEBUG) {
                Assert.assertTrue(i < host.length());
            }
            return Integer.parseInt(host.substring(i+1));
        }
        return getDefaultPort();