Estoy ejecutando xserver xsdl. Luego trató de ejecutar xterm en él después de export DISPLAY=:0
. Si lo hago export DISPLAY=10.94.XXX.XXX:1
, xterm funciona bien. Intenté depurarlo usando strace
. Esta es la línea que parece causar el problema sin_addr=inet_addr("127.0.0.1")}, 16) = -1 ECONNREFUSED (Connection refused)
.
¿Puede alguien ayudarme a resolver este problema?
Nota: He estado discutiendo este problema en Xserver/xsdl . Me han dicho que puede ser un problema de permisos de Android. Así que estoy buscando ayuda aquí.
Respuesta
¿Demasiados anuncios?Parece que hay algún tipo de firewall, que está bloqueando la conexión. No pude resolver este problema. Pero encontré una solución.
1. Entró en un terminal con root
privilegio.
(Ej.: comando utilizado su
en un emulador de terminal)
2. Creó una segunda red de bucle de retorno mediante ifconfig
(Ej: ifconfig lo:0 127.0.0.2 netmask 255.0.0.0 up
)
3. Afortunadamente, "XSERVER XSDL" reconoció esta nueva red sin ninguna queja (nunca pensé que pudiera detectar una red tan extraña).
4. Por último, configure mi pantalla en el nuevo servidor de mi entorno chroot como se muestra en la pantalla de bienvenida de XSERVER.
export DISPLAY=127.0.0.2:1 startfluxbox
( o cualquier programa xclient, ahora todo funciona bien)
Nota 1: Cada vez que mi teléfono se reinicia, tengo que crear de nuevo la red de bucle invertido. Puede que haya algunos archivos .rc para añadir scripts de inicio en Android también. Pero nunca me he molestado en cambiarlos (porque no reinicio mi teléfono a menudo).
Nota 2: Realmente agradecería una solución verdadera aunque (mejor si funciona sin Root) porque mi método no se puede aplicar en un teléfono no rooteado. Así que la gente con este problema, pero sin un teléfono rooteado no puede utilizar xserver hasta que alguien encuentra otra solución.