19 votos

Mediaserver usando excesivo tiempo de CPU y batería

Tengo un Nexus 4 con la versión 4.2.1 del sistema operativo que de repente ha empezado a agotar la batería muy rápidamente. Al mirar en el uso de la batería que veo "Mediaserver "comer 60% de la batería en el tiempo, con varios minutos de tiempo de la CPU registrada y varios. horas de tiempo de mantenimiento de la vigilia. Normalmente, la pantalla, el teléfono en reposo u otros servicios consumen la mayor parte de la batería.

Probé a cerrar todas las aplicaciones y a cargarlo, y efectivamente durante la noche seguía drenando una cantidad significativa de batería, de nuevo Mediaserver era el culpable como se indica en la tabla de uso de la batería; había mantenido el dispositivo despierto toda la noche y drenó el 10% de mi batería a pesar de no usarla. No he añadido un gran número de archivos y no estoy reproduciendo música/etc. por lo que Mediaserver no debería estar haciendo mucho en la unidad.

¿Cómo puedo evitar que Mediaserver se coma la vida de mi batería de esta manera?

7voto

Ben Brocka Puntos 1379

El problema no se solucionó con la eliminación de todas las aplicaciones que se estaban ejecutando, ni tampoco con la desactivación de la sincronización automática de elementos de la cuenta de Google, como los vídeos y las fotos (que me han sugerido para un problema similar de la batería).

Qué hizo trabajo era simplemente reiniciar el dispositivo manteniendo el botón de encendido y eligiendo apagar. Después de reiniciar Mediaserver ya no parece utilizar gran parte de mi batería en la tabla de uso y mi carga dura como siempre. Así que si tienes el mismo problema, simplemente reinicia.

1 votos

Es curioso eso era exactamente lo que quería recomendar. Es la única manera de deshacerse de los "wakelocks pegados" que conozco (esos casos ocurren cuando las aplicaciones solicitan un wakelock y se olvidan de liberarlo más tarde).

0 votos

@Izzy eso debió ser lo que pasó. No estoy seguro técnicamente de lo que ha pasado, pero quería compartir la solución por si es un problema común en la 4.2.1 o algo así.

0 votos

Eso es algo común a la mayoría/todas las versiones de Android (no especialmente con mediaserver, sino con muchos servicios). Además, las aplicaciones mal diseñadas se suman a esto. Para más detalles, podrías mirar en la pregunta ¿Cómo tratar los WakeLocks (huérfanos)? y sus respuestas.

7voto

user1190841 Puntos 51

El proceso de Mediaserver escanea tu dispositivo en busca de archivos multimedia para añadirlos a tu biblioteca. Sin embargo, la versión 2012/12/12 (quizás alguna más) de gapps está rota y se queda atascada en un bucle infinito en archivos desconocidos en tu teléfono. Esto se traduce directamente en el drenaje de la batería y es malo para la vida de su batería y otros componentes del teléfono. Cuando se ejecuta el teléfono por primera vez o cuando se inician las aplicaciones multimedia, se invoca el Mediaserver y comenzará el horror.

Cómo solucionarlo:

  • Reinicie el teléfono y no inicie una aplicación multimedia.
  • Poner un .nomedia en su tarjeta SD Root para evitar la búsqueda de la biblioteca, evitando así que Mediaserver se quede atascado. ¡Esto significa que no hay biblioteca de medios!
  • Esperen a que el glorioso Google arregle esta anomalía.
  • Actualiza tu firmware Android + gapps a una versión que no tenga este error.
  • Utilizar un iPhone/Windows Phone
  • Modificar la gapps (Mediaserver.apk) para que soporte todo tipo de archivos normalmente. (avanzado + que consume tiempo)

2 votos

Downvote por recomendar iPhone/Windows Phone. Por cierto, eso no es una solución, el error seguirá ahí.

0 votos

El archivo .nomedia en la carpeta Root no funciona. En un Nexus 7 con Android 4.3. No hay tarjeta SD física pero he puesto el archivo .nomedia en la carpeta SDCard Root, y no ha dejado de funcionar mediascanner. Supongo que se supone que se aplica de forma recursiva y no es necesario colocarlo en cada subcarpeta? ¿Debería colocar una aún más alta que SDCard, como en root del sistema tal vez?

2voto

The111 Puntos 111

Creo que he descubierto la causa y una solución improvisada para este fallo, al menos una que (por fin) me funciona, y que no he visto mencionada a menudo en otros sitios.

En mi tablet (Nexus 7 2nd gen), había visto el fallo del mediaservidor muy a menudo y prácticamente había desistido de intentar solucionarlo.

Sin embargo, en mi teléfono (I9505G aka SGS4 GPe), no había visto el error ni una sola vez. Ambos dispositivos funcionaban al 100% con Android 4.3. Entonces, un día me di cuenta de que el error estaba asomando su fea cabeza en mi teléfono también. No había copiado NINGÚN archivo nuevo en el dispositivo recientemente, así que eso echó por tierra cualquier teoría sobre "archivos multimedia corruptos". Me devané los sesos y me di cuenta de que lo único que había hecho de forma diferente en las últimas 24 horas era jugar a un juego (Rayman Jungle Run) en el teléfono, que normalmente sólo uso para llamadas, correos electrónicos y libros electrónicos. En mi tablet, sin embargo, juego a Rayman Jungle Run a menudo.

Así pues, acabo de realizar esta secuencia de pruebas tanto en mi teléfono como en mi tablet, con los mismos resultados.

  • Carga completa. Arranque fresco. Funcionamiento durante varias horas. RESULTADO: No hay drenaje del medidor.
  • Inicia Rayman, juega durante 1 minuto. Vuelve a la pantalla de inicio pero no fuerces el cierre de la aplicación. Espera un poco. RESULTADO: Comienza el drenaje del Mediaserver.
  • Cierra a la fuerza la aplicación de Rayman (yo usé un atajo de Elixir para hacer esto, pero usar el menú de aplicaciones debería funcionar bien). Espera un par de horas. RESULTADO: ¡El drenaje del Mediaserver se ha detenido!

Hice muchas búsquedas en la web y sólo encontré otra referencia a un fenómeno similar, y ese post hacía referencia al juego Rayman así como a otro juego llamado Super Hexagon o algo así. La lección aparente aquí es que ciertas aplicaciones tienen la capacidad de desencadenar el bug del mediaservidor. Al menos en mi caso, no tiene nada que ver con los archivos multimedia que tengo en el dispositivo, o con los servicios de Google que permito/evito ejecutar (ambas cosas las veo citadas frecuentemente como supuestas soluciones).

También me atrevería a decir que si tienes una aplicación que desencadena el drenaje del servidor de medios, y esta aplicación se ejecuta automáticamente al inicio o en cualquier intervalo de tiempo periódico, entonces la única solución segura en ese caso sería desinstalar la aplicación, por desgracia. Esto podría explicar por qué algunas personas no encuentran que reiniciar ayuda... si la aplicación ofensiva se ejecuta en el inicio, por supuesto, el drenaje comenzará de inmediato también.

0 votos

Esto mismo me ocurrió anoche. Rayman Fiesta Run, salí con el botón de inicio, perdí el 40% de la batería durante la noche en el servidor de medios. ¡Gracias por esto!

0 votos

@RossC Impresionante, me alegro de que te haya ayudado. Yo también acabo de instalar Fiesta Run y me ha decepcionado ver que todavía no han arreglado este fallo (no sé si es culpa del SO o de la app, pero sé que la app podría arreglarlo forzando su cierre o al menos incluyendo una opción). Se me sigue olvidando matar la app después de jugar una sesión y me acuerdo horas después cuando veo lo baja que está la batería.

1voto

dbb Puntos 778

Tuve el mismo problema con la tablet Android 4.1.2. Probado todo lo que se encuentra en varios foros, y el resultado fue - nada funcionó. Mediaserver seguía drenando mi batería. Intuitivamente, probé dos cosas: 1. Desmontar la tarjeta SD donde guardo todo tipo de archivos multimedia. 2. 2. Borrar las imágenes descargadas de la carpeta "download".

Resultado = problema resuelto.

Luego volví a montar la tarjeta SD - ¡la duración de la batería sigue siendo normal!

Conclusión: el maldito mediaserver sigue escaneando las imágenes descargadas y agota la batería.

La sencillez es siempre la respuesta.

0voto

vine'th Puntos 101

En mi caso, reiniciar el Nexus 4 varias veces no ha servido de nada. La primera vez que empecé a usar el móvil, inicié la sesión sin la cuenta de Google. Así que hice un restablecimiento de fábrica y me aseguré de iniciar sesión con la cuenta de Google. Esto parece haber solucionado el problema.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X