
28/02/13, 13:19:51
|
 |
Usuario muy activo
Mensajes: 2,262
|
|
Fecha de registro: may 2009
Mensajes: 2,262
Modelo de smartphone: NEXUS 4 16 Gb rev 1.0
Versión de ROM: Stock: 4.2.1
Tu operador: Yoigo
Mencionado: 4 comentarios
Tagged: 0 hilos
|
|
Cita:
Originalmente Escrito por malkair
Como ya se ha dicho, el problema se puede producir tanto en 3G como en Wifi.
La explicación que ya se ha comentado por aquí y que parte de un hilo en XDA es la siguiente:
El teléfono está continuamente mandando "señales" al servidor push (con el se comunica por el puerto 4223) cada 15 minutos (wifi) o 28 minutos (3G). Este tiempo ha sido siempre el mismo en anteriores versiones de Android, así que este no es el problema.
El problema está en que, por razones hasta ahora no conocidas, el teléfono deja de mandar esa "señal" de forma aparentemente aleatoria: Unas veces la envía, otras veces no. Parece que en deepsleep hay más posibilidades de que deje de enviarla. Debe haber algún servicio oculto de sistema que, por la razón que sea, "muere" y no funciona como debe. Esto no le ocurre a todo el mundo, ni al mismo tiempo, ni en las mismas circunstancias.
Al ocurrir esto, entra el juego la otra parte: Tras x minutos de inactividad, el router/operador bloquea la conexión por el puerto 4223; al ocurrir esto, el servidor no recibe las "señales" del teléfono, por lo que cree que el teléfono está "inactivo" y no le "contesta" con notificaciones. Cuando la conexión se reinicia (algo que sucede siempre cuando salimos de deepsleep y también sucede a veces de forma espontánea y aleatoria incluso cuando seguimos en deepsleep), servidor se entera de que volvemos a estar "activos" y ¡zas! nos manda de golpe todas las notificaciones pendientes.
Como workaround, se ha propuesto lo siguiente: En algunos routers se puede configurar un parámetro que alarga el tiempo de inactividad para el bloqueo de la conexión, pero en 3G ese tiempo lo fija el operador y, por lo que parece, es variable según cada operador e incluso según cada zona (¿antena? ¿router local?). Lógicamente, esa solución no es la definitiva ni acaba con el problema.
La solución habrá que buscarla en por qué el teléfono a veces deja de enviar las "señales" al servidor push. Está claro que más tarde o más temprano esas señales vuelven a enviarse incluso sin que el usuario encienda la pantalla, pero ¿por qué?
Eso es lo que se comenta en XDA.
|
Buena explicación. Deberíamos mardársela a Google todos porque parece que es el único que no se entera y es quien lo puede arreglar, dado que es quien lo ha estropeado.
Digo yo que otra parte de la solución es el fix del que se habla ¿no?
|