Configure manualmente un nombre de host para la dirección IP (es decir, /etc/hosts equiv.?)

Soy desarrollador web y estoy desarrollando nuestro sitio web en mi máquina de escritorio local. Tengo un teléfono Android (htc wish con Android 2.2). Quiero probar cómo se ve nuestra aplicación web en Android. Puedo conectarme a la misma red wifi que mi máquina de escritorio, sin embargo, utilizamos varios nombres de dominio falsos codificados en nuestra aplicación web. En mi máquina de escritorio Ubuntu Linu7x, utilizo /etc/hostspara configurar estos nombres de dominio en direcciones IP locales.

¿Hay alguna forma de hacer esto en Android? Quiero que "foo.xyz" (nuestro nombre de dominio de prueba) apunte a 172.31.1.67 (mi máquina de escritorio interna). ¿Hay alguna manera de hacer esto sin rootear el teléfono (ya que mi teléfono Android no está rooteado ahora)

¿Cómo resuelven sus otras máquinas esa IP para el nombre de dominio de prueba? Si lo está haciendo correctamente y usa DNS internamente en su red, y actualiza la IP/nombre en DNS para apuntar uno al otro, entonces cuando su teléfono se conecte a su Wifi interno, debería recoger su configuración DNS interna y simplemente funcionar. .
@GAThrawn También hago desarrollo web (aunque no específicamente para dispositivos móviles). En mi entorno, es normal tener una cantidad de sitios de desarrollo local configurados en diferentes hosts virtuales y conectarse a ellos a través de /etc/hosts (o el equivalente de Windows). Dado que el OP ejecuta Linux, debería ser bastante simple configurar un servidor DNS de desarrollo. Sin embargo, nos estamos desviando un poco del tema de este sitio :)
@Matt estaba tratando de sugerir una mejor manera de hacerlo que cambiar la configuración del teléfono. Soy administrador de sistemas y preferiría tenerlo todo centralizado en DNS. Cientos de archivos HOSTS por todas partes, todos apuntando diferentes nombres a diferentes direcciones son una pesadilla de administración para realizar un seguimiento, y un gran dolor de cabeza y pesadilla cuando cualquier persona, excepto el creador original, tiene que solucionar cualquier problema.
@GAThrawn +1 para el 'gran dolor de cabeza'; ciertamente lo es :) El DNS es, por supuesto, una opción más simple: agregué información a mi respuesta sobre la especificación de un servidor DNS no estándar en caso de que sea útil para el OP. Mi "hago desarrollo web" quería decir "... así que siento tu dolor" en lugar de un "... así que sé de lo que estoy hablando". -dah :)
Tenía una solución para esto para una máquina con Windows, que puede generar una solución de Ubuntu, desafortunadamente perdí mi publicación de blog paso a paso. Al usar SimpleDNS, pude alojar mi propio DNS de red, por lo que necesitaba acceder a cualquier dominio y tenía una aplicación que consumía dominios, por lo que era necesario que simplemente lo agregara y SimpleDNS reenviaría la dirección IP al cuadro de desarrollo en la red. Luego, en un dispositivo Android o iOS, simplemente cambie su DNS Wifi a la dirección IP de la caja que ejecuta su DNS y ¡listo!
Sí, el DNS podría ser una opción para mí ahora que lo analizo (ya que tenemos un servidor DNS (más o menos)). Pero, ¿no hay forma de hacer esto sin un servidor DNS?

Respuestas (1)

Firefox Mobile admite proxies HTTP, por lo que, si bien es un motor de renderizado diferente, al menos debería poder tener una idea de cómo funciona su interfaz de usuario en una pequeña pantalla táctil. Aquí se explica cómo llegar a la sección de configuración secreta: http://support.mozilla.com/en-US/questions/758279

El navegador predeterminado incluye compatibilidad con proxy en Gingerbread (aunque eso no lo ayuda ni a usted ni a su Desire no rooteado en este momento, HTC debería ofrecer una actualización OTA para Gingerbread pronto , o puede alentarlo a rootear y volver a flashear su teléfono).

(Para ambos, necesitaría configurar un proxy en su red para que pueda servir su dominio foo.xyz)

Por último, siempre puedes usar el emulador del SDK de Android . El rendimiento será dolorosamente lento, pero al menos estará ejecutando el mismo motor de renderizado.

Editar: como menciona GAThrawn en los comentarios anteriores, también podría lograr lo que desea utilizando las entradas de DNS en el servidor DNS predeterminado de su red o en un servidor DNS de desarrollo. Su teléfono seleccionará el servidor DNS predeterminado de su red wifi, o puede cambiarlo a algo específico a través de Configuración> Conexiones inalámbricas y redes> Configuración de Wi-Fi> Tecla programable Menú> Avanzado.