que - proxys para android
aplicaciones con proxy que no funcionan en el emulador aunque Internet funciona (3)
He habilitado la configuración de proxy en la versión 2.2 y 2.3 de Android en el emulador y el Internet comenzó a funcionar, pero tengo una aplicación instalada (que funciona solo con proxy) que todavía no funciona. Cuando hice lo mismo con el emulador de la versión 4.0, estaba funcionando allí. ¿Alguien puede decir, por qué no está trabajando en la versión 2.2 y 2.3 aunque Internet está funcionando?
Deberías probar esto (para Android 2.3):
1. > adb shell
2. # sqlite3 /data/data/com.android.providers.settings/databases/settings.db
3. sqlite> INSERT INTO system VALUES(99,’http_proxy'', ''proxy:port'');
4. sqlite>.exit
Además, podría intentar definir el proxy explícitamente al iniciar el emulador mediante el argumento http-proxy
emulator -avd yourAVD -http-proxy http://yourproxy:port
La configuración de su proxy en el emulador le permite a la aplicación del navegador usarlo, pero cualquier otra aplicación debe ser un proxy HTTP capaz de acceder a Internet.
Suponiendo que utiliza la clase DefaultHttpClient para conectarse a Internet, deberá agregar el siguiente código a su aplicación de Android antes de realizar la conexión:
DefaultHttpClient client = new DefaultHttpClient();
HttpHost proxy = new HttpHost("yourproxy.domain.com", 3128);
// Enter your proxy domain and port
client.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
Si está utilizando un proxy autenticado, también necesitará estas líneas:
client.getCredentialsProvider().setCredentials(
new AuthScope("yourproxy.domain.com", 3128),
new UsernamePasswordCredentials("proxyusername", "password"));
Dado que desea que el mismo código funcione tanto en el emulador como en un teléfono real, debe agregar una configuración a la aplicación que le permita al usuario activar o desactivar el uso del proxy, e ingresar el servidor proxy / puerto / credenciales. en lugar de codificarlos en la aplicación.
También configuré un proxy para el emulador en el entorno de Eclipse. Se agregó correctamente la dirección proxy al comando de inicio del emulador.
Sin embargo, todavía luché con él trabajando solo en algunas aplicaciones (como el navegador) y no en otras (como Maps) hasta que ingresé a la configuración WiFi en el emulador e ingresé la dirección proxy.
Tenga en cuenta que no puede usar http://
antes del nombre DNS en esta configuración como lo puede hacer en la línea de inicio del emulador. (Eso tomó una hora para averiguarlo.)