PDA

Ver la Versión Completa : [ CONSULTA ] Posible bug al cambiar entre Wifi y 3G


rdlejo
30/04/15, 20:39:46
Usuarios Lollipop...

Abro este tema por la siguiente consulta: A otros les ocurre el siguiente BUG?

Escenario:

- Xiaomi MI3 con cualquier ROM Lollipop (Ivan, CM, Xenon, Mokee, Moonlight, RR, etc.).

- Luego de, digamos, una hora o más de usar el Wifi, uno se desconecta de la red y no se activa automáticamente el 3G.

- El único modo (comodo) de desbloquear el 3G es encender y apagar el modo avión en dos clicks.

Desde que empecé a usar lollipop me ocurre esto. Creo que mi operador (Claro, en Argentina) hace algo mal con el modo fast dormancy (un método para poner la conexión 3G en suspensión) y ninguna de las lollipop del MI3 lo están gestionando bien (en KitKat no se da el bug).

Bueno, hago la consulta para verificar si a otros les pasa y, si es así, publicar el arreglo que hice para resolver el tema...

Saludos!

Nigthmare
30/04/15, 20:44:11
Si,a veces me pasa a mi también.otras veces le cuesta coger los datos.

BitratE
30/04/15, 20:54:00
Se está reportando el mismo bug en las 5.1 de los Nexus 4

Lollibug sería el nombre que mejor le quedaría.

rdlejo
30/04/15, 20:54:28
Digamos que lo que me pasa es que directamente no conecta a 3G... Hasta que uno no hace el Avion on/off directamente queda sin conectarse (con el icono de señal ok, pero sin indicador de datos).

Que ROM estas usando? Yo actualmente estoy con la de ivan del 24/4 aunque, como escribo en el post, me pasó siempre desde que pase de KitKat a Lollipop.

alexret
30/04/15, 20:54:57
Se está reportando el mismo bug en las 5.1 de los Nexus 4

Lollibug sería el nombre que mejor le quedaría.

Correcto, es un bug del propio Lollipop.
La solución rápida es ponerlo en modo avión y después quitarlo.

rdlejo
30/04/15, 20:56:01
Se está reportando el mismo bug en las 5.1 de los Nexus 4

Lollibug sería el nombre que mejor le quedaría.

Puede ser, sospecho que el tema está el la librería de Qualcomm QRIL ...

rdlejo
30/04/15, 21:36:29
Bueno, luego de dos meses de sufrirlo (es bastante molesto dado que uno tiene verificar que haya 3G cada vez que se aleja de una Wifi) desarrollé un arreglo.

Este arreglo debe considerarse como un "workaround" al problema dado que la solución definitiva está en los servicios de conectividad de Qualcomm.

Es un servicio sencillo (y muy ligero) que hace lo siguiente:

- Mientras esté no se esté usando la red 3g (el usuario está conectado en Wifi) se verifica la salud de la conexión cada cierto tiempo. Este tiempo es el que le concede el sistema por lo que no se realizan wakelocks adicionales.

- Si durante esas verificaciones detecta no se encuentra correctamente relacionado a la red o si ha pasado cierto tiempo (algo menos de una hora) hace un switch de 2 segundos al modo "2G Preferido" y luego regresa a "3G Preferido" siempre y cuando el usuario no esté en llamada.

- Este switch es transparente al usuario dado que, como escribia, solo se hacen los switchs siempre y cuando no se estén usando ni los datos ni el teléfono.

Este switch 2g / 3g es más conveniente al modo avion on/off: Reinicia el vinculo de datos entre el movil y el operador sin cortar otras cosas.

Si alguien desea instalarlo, esta es la apk del servicio (30 kb):

enpalermo.com/verificador3G.apk

Para el que se interese por las fuentes:

enpalermo.com/verificador3Gsrc.zip

REQUISITOS:
IMPORTANTE: Solo usarla en la de Ivan del 24/04. Parece que no funciona en las Cyanogen y variantes.


- Lollipop 5.1 o superior (no hice apk para 5.0).

- ROOT.

Instalación:

- Instalar la APK.
- Iniciar Verificador3G una vez para activar el ROOT (hay que conceder a Verificador3G derechos permanentes) y el servicio.

Al iniciar el programa se vé esta pantalla:

http://www.enpalermo.com/screen.png


Lo importante es que Root este en "true" y que API SetPreferedNetworkType muestre un número entero (93 en mi caso).

Luego, reiniciar el dispositivo y estará activo el servicio (no es necesario volver a iniciar la aplicación).

Cada vez que el servicio haga un switch 2g/3g loguerá una lína en

/sdcard/resetGSM.log

También se puede seguir su actividad usando logcat.

Por favor, el que lo instale me avisa que tal le va...

Saludos!

BitratE
30/04/15, 21:38:17
Bueno, luego de dos meses de sufrirlo (es bastante molesto dado que uno tiene verificar que haya 3G cada vez que se aleja de una Wifi) desarrollé un arreglo.

Este arreglo debe considerarse como un "workaround" al problema dado que la solución definitiva está en los servicios de conectividad de Qualcomm.

Es un servicio sencillo (y muy ligero) que hace lo siguiente:

- Mientras esté no se esté usando la red 3g (el usuario está conectado en Wifi) se verifica la salud de la conexión cada cierto tiempo. Este tiempo es el que le concede el sistema por lo que no se realizan wakelocks adicionales.

- Si durante esas verificaciones detecta no se encuentra correctamente relacionado a la red o si ha pasado cierto tiempo (algo menos de una hora) hace un switch de 2 segundos al modo "2G Preferido" y luego regresa a "3G Preferido" siempre y cuando el usuario no esté en llamada.

- Este switch es transparente al usuario dado que, como escribia, solo se hacen los switchs siempre y cuando no se estén usando ni los datos ni el teléfono.

Este switch 2g / 3g es más conveniente al modo avion on/off: Reinicia el vinculo de datos entre el movil y el operador sin cortar otras cosas.

Si alguien desea instalarlo, esta es la apk del servicio (30 kb):

enpalermo.com/verificador3G.apk

Para el que se interese por las fuentes:

enpalermo.com/verificador3Gsrc.zip

REQUISITOS:

- Lollipop 5.1 o superior (no hice apk para 5.0).
- ROOT.

Instalación:

- Instalar la APK.
- Iniciar Verificador3G una vez para activar el ROOT (hay que conceder a Verificador3G derechos permanentes) y el servicio.

Al iniciar el programa se vé esta pantalla:

http://www.enpalermo.com/screen.png


Lo importante es que Root este en "true" y que API SetPreferedNetworkType muestre un número entero (93 en mi caso).

Luego, reiniciar el dispositivo y estará activo el servicio (no es necesario volver a iniciar la aplicación).

Cada vez que el servicio haga un switch 2g/3g loguerá una lína en

/sdcard/resetGSM.log

También se puede seguir su actividad usando logcat.

Por favor, el que lo instale me avisa que tal le va...

Saludos!


¿Podrías ponerlo también en el subforo del Nexus 4?

rdlejo
30/04/15, 21:55:48
¿Podrías ponerlo también en el subforo del Nexus 4?

Antes de andar difundiendolo me gustaria que alguien que le ocurra lo mismo lo pruebe con un MI3. La compilación la hice pensando solo en mi teléfono por lo que no estoy totalmente seguro que vaya a funcionar en otra cosa que no sea Lolli 5.1 MI3.

Si algún otro lo usa y le va bien, haria una compilación más amplia (además tengo que traducirlo al ingles)...

rdlejo
30/04/15, 23:29:16
IMPORTANTE:

Me acaba de avisar un usuario con Xenon HD que no le detecta la API para cambio entre 2G y 3G. Como eso vuelve al programa inutil no instalar la aplicación en las variantes Cyanogen. Por ahora, solo se puede instalar en la AOSP de Ivan del 24/04.

rdlejo
01/05/15, 03:56:00
En este link, nueva versión de la APK:

http://www.enpalermo.com/Gsm3gCheck.apk

Sources:

http://www.enpalermo.com/Gsm3gCheckSrc.zip

A diferencia de la primer versión soporta todos los lollipop (5.0.x y 5.1.x), tanto en versión AOSP (Ivan, Xenon, etc.) como en Cyanogen (CM12, CM12.1, RR, Mokee, etc.).

superaj014
01/05/15, 16:24:45
He hecho la instalación del ultimo zip en mokee aunque no me sale el numero entero si que cambia rápido de wifi a 3g de hecho lo hace instantáneo seguiré verificando gracias por el buen trabajo, A, OJO lo tengo en MI4 :ok:

rdlejo
01/05/15, 17:00:12
He hecho la instalación del ultimo zip en mokee aunque no me sale el numero entero si que cambia rápido de wifi a 3g de hecho lo hace instantáneo seguiré verificando gracias por el buen trabajo, A, OJO lo tengo en MI4 :ok:

Me puedes enviar la pantalla de la aplicación?

Por ejemplo, así es es en mi equipo:

http://www.enpalermo.com/screen2.png

superaj014
01/05/15, 17:25:35
:risitas:

superaj014
01/05/15, 17:31:15
Aquí va.http://images.tapatalk-cdn.com/15/05/01/bb65f362abe030fa08551d90dfd96f2a.jpg

rdlejo
01/05/15, 18:13:22
Así tal como esta no va a andar...

Yo me estoy instalando el mokee del 01/05 para ver que pasa!

rdlejo
01/05/15, 20:39:48
Nueva versión (1.21). Probada en Mokee y Funcionando!


http://www.enpalermo.com/mokee.png

Debes actualizar la APK (mismo link que antes):

http://www.enpalermo.com/Gsm3gCheck.apk

Sources:

http://www.enpalermo.com/Gsm3gCheckSrc.zip

Esta nueva versión incluye, además de las correcciones para Cyanogen y variantes, un ítem de menú que te permite ver las últimas acciones del servicio.

Por favor, confirmame si te funciona ok.

superaj014
01/05/15, 20:54:29
Ahora si aparece como debe ser gracias por tu trabajo y dedicación.http://images.tapatalk-cdn.com/15/05/01/70f6eb4c5849c932f37348f5f5d2ab76.jpg[emoji122]

rdlejo
01/05/15, 21:19:12
Por fin!

Bueno, ahora verás que mientras el servicio está activo irá guardando una entrada en /sdcard/Gsm3gCheck.log cada vez que haga un switch entre 2g y 3g.

Como escribia en el primer mensaje, esto lo hara solo si detecta que la conexión 3g no esta sana (verifica cada poco más de 10 minutos) o cada unos 45 minutos en forma forzada siempre y cuando no se este usando el 3g (estas con wifi) o el teléfono.

Este switch cada 45 minutos es para asegurar el refresco del modo "fast dormancy" con la operadora dado que eso es, según creo, lo que hace que la conectividad quede bloqueada luego de cierto tiempo y haya que hacer el modo avión para reactivarla.

Si el servicio te funciona deberás conectar con el 3G sin inconveniente cada vez que te alejes del Wifi...

Opciones de Menú en la APP:

Refresh: Refresca la Info (pocas cosas por ahora).
Force Switch: Hace el swich forzado.
Last 20 log entries (descending): Muestra las últimas 20 entradas al logcat que envió el servicio.

La APP solo es necesario usarla para conceder ROOT y verificar que la API fue detectada correctamente. Luego de esto, ya no es necesario volverla a iniciar (el trabajo lo hace el servicio)...

Por favor, avisame si te es útil, supongo que para comprobarlo deberás usarla durante por lo menos un día en forma normal. Yo la vengo usando con la de Ivan desde hace 4 días y nunca volví a tener problemas de conexión a 3G pero cada equipo es un mundo...

Saludos!