Servidor de medios que utiliza un tiempo de CPU y una batería excesivos

Tengo un Nexus 4 con la versión 4.2.1 del sistema operativo que de repente comenzó a gastarse la batería muy rápido. Cuando observo el uso de la batería, veo que "Mediaserver" consume el 60 % de la batería con el tiempo, con varios minutos de tiempo de CPU registrados y varias horas de tiempo de Keep Awake. Por lo general, la pantalla, el teléfono inactivo u otros servicios consumen la mayor parte de la vida útil de la batería.

Intenté cerrar todas las aplicaciones y cargarlas y, efectivamente, de la noche a la mañana todavía se agotó una cantidad significativa de batería, nuevamente Mediaserver fue el culpable, como se informa en el gráfico de uso de la batería; mantuvo el dispositivo despierto toda la noche y agotó el 10 % de mi batería a pesar de no haberlo usado. No he agregado una gran cantidad de archivos y no estoy reproduciendo música, etc., por lo que Mediaserver no debería estar haciendo mucho en el disco.

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

Respuestas (6)

Matar todas las aplicaciones en ejecución no resolvió el problema, ni deshabilitar la sincronización automática para elementos de la cuenta de Google como videos/fotos (que escuché sugerido por un problema similar de batería).

Lo que funcionó fue simplemente reiniciar el dispositivo manteniendo presionado el botón de encendido y seleccionando apagar. Después de reiniciar Mediaserver, ya no parece usar gran parte de mi batería en la tabla de uso y mi carga dura como siempre. Entonces, si tiene el mismo problema, simplemente reinicie.

Divertido, eso era exactamente lo que quería recomendar. Es la única forma de deshacerse de los "bloqueos de activación" que conozco (esos casos ocurren cuando las aplicaciones solicitan un bloqueo de activación y se olvidan de liberarlo más tarde).
@Izzy eso debe haber sido lo que sucedió. Técnicamente no estoy seguro de lo que sucedió, pero quería compartir la solución en caso de que sea un problema común en 4.2.1 o algo así.
Eso es algo común a la mayoría/todas las versiones de Android (no especialmente con mediaserver, pero sí con muchos servicios). Además, las aplicaciones mal diseñadas se suman a esto. Para obtener más información, puede consultar la pregunta ¿Cómo lidiar con WakeLocks (huérfanos)? y sus respuestas.
Reiniciar, reiniciar, reiniciar. ¿Hay una forma menos molesta de resolver esto? Odio reiniciar. ¿No puedo matar ese servidor de medios?

El proceso Mediaserver escanea su dispositivo en busca de archivos multimedia para agregar a su biblioteca. Sin embargo, la versión gapps del 12/12/2012 (quizás un poco más) está rota y se atasca en un bucle infinito en archivos desconocidos en su teléfono. Esto se traduce directamente en el agotamiento de la batería y es malo para la vida útil de la batería y otros componentes del teléfono. Cuando ejecuta su teléfono por primera vez o cuando inicia aplicaciones de medios, se invoca Mediaserver y comenzará el horror.

Como arreglar:

  • Reinicie el teléfono y no inicie una aplicación multimedia.
  • Coloque un .nomediaarchivo en la raíz de su tarjeta SD para evitar la búsqueda en la biblioteca, evitando así que Mediaserver se atasque. ¡Esto significa que no hay biblioteca de medios!
  • Espera a que el glorioso Google solucione esta anomalía.
  • Rebaje su firmware de Android + gapps a una versión que carezca de este error.
  • Usar un teléfono iPhone/Windows
  • Modifique los gapps (Mediaserver.apk) para admitir todo tipo de archivos normalmente. (avanzado + lento)
Voto negativo por recomendar iPhone/Windows Phone. Por cierto, eso no es una solución, el error seguirá ahí.
El archivo .nomedia en la carpeta raíz no funciona. En un Nexus 7 con Android 4.3. No hay una tarjeta SD física, pero puse el archivo .nomedia en la raíz de la carpeta SDCard, y no ha detenido la ejecución del escáner de medios. Supongo que se supone que debe aplicarse de forma recursiva y no es necesario colocarlo en cada subcarpeta. ¿Debo colocar uno incluso más alto que la tarjeta SD, como en la raíz del sistema, tal vez?

Creo que puedo haber descubierto la causa y una solución improvisada para este error, al menos una que (finalmente) funciona para mí, y que no he visto mencionada a menudo en otros lugares.

En mi tableta (Nexus 7 2nd gen), había visto el error del servidor de medios muy a menudo y prácticamente desistí de intentar resolverlo.

Sin embargo, en mi teléfono (I9505G, también conocido como SGS4 GPe), no había visto el error ni una sola vez. Ambos dispositivos estaban ejecutando 100% Android 4.3. Entonces, un día, también noté que el error asomaba su fea cabeza en mi teléfono. No había copiado NINGÚN archivo nuevo en el dispositivo recientemente, por lo que arrojó por la ventana cualquier teoría sobre "archivos multimedia corruptos". Me devané los sesos y me di cuenta de que lo único que había hecho diferente en las últimas 24 horas era jugar un juego (Rayman Jungle Run) en el teléfono, que normalmente solo uso para llamadas, correos electrónicos y libros electrónicos. En mi tableta, sin embargo, juego Rayman Jungle Run a menudo.

Entonces, acabo de ejecutar esta secuencia de pruebas tanto en mi teléfono como en mi tableta, con los mismos resultados.

  • Carga completa. Bota nueva. Ejecutar durante varias horas. RESULTADO: No hay drenaje del servidor de medios.
  • Inicia Rayman, juega durante 1 minuto. Regrese a la pantalla de inicio pero no fuerce el cierre de la aplicación. Espera un poco. RESULTADO: Comienza el drenaje del servidor multimedia.
  • Fuerce el cierre de la aplicación Rayman (usé un atajo de Elixir para hacer esto, pero usar el menú de aplicaciones debería funcionar bien). Espera un par de horas. RESULTADO: ¡Se ha detenido el drenaje del servidor de medios!

Hice muchas búsquedas en la web y solo encontré otra referencia a un fenómeno similar, y esa publicación 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 activar el error del servidor de medios. En mi caso, al menos, no tiene nada que ver con los archivos multimedia que tengo en el dispositivo o los servicios de Google que permito/evito que se ejecuten (estas son cosas que veo citadas con frecuencia como supuestas soluciones).

También sugiero que si tiene una aplicación que activa 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, desafortunadamente. Esto podría explicar por qué algunas personas no encuentran que reiniciar ayude... si la aplicación infractora se ejecuta al inicio, por supuesto, el drenaje también comenzará de inmediato.

Esto mismo me pasó anoche. Rayman Fiesta Run, salió con el botón de inicio, perdió el 40% de la batería durante la noche al servidor de medios. ¡Gracias por esto!
@RossC Impresionante, me alegro de que te haya ayudado. También acabo de instalar Fiesta Run y ​​me decepcionó ver que todavía no han solucionado este error (no estoy seguro de si el sistema operativo o la aplicación tienen la culpa, pero sé que la aplicación podría solucionarlo obligándose a cerrarse o al menos incluyendo un opción). Sigo olvidándome de cerrar la aplicación después de jugar una sesión y recordando horas más tarde cuando veo lo baja que está mi batería.

Simplemente elimine el proceso del servidor de medios. Creé un atajo que ejecuta una línea de comando y la mata

kill pidof /system/bin/mediaserver

o en otros dispositivos,

kill mediaserver 

Tuve el mismo problema con Android 4.1.2. tableta. Intenté todo lo que encontré en varios foros, y el resultado fue: nada funcionó. Mediaserver siguió agotando mi batería. Intuitivamente, probé dos cosas: 1. Tarjeta SD desmontada donde guardo todo tipo de archivos multimedia. 2. Se eliminaron las IMÁGENES descargadas de la carpeta "descargar".

Resultado = problema SOLUCIONADO.

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

Conclusión: el servidor de medios sangriento sigue escaneando las imágenes descargadas y agota la batería.

¡La simplicidad es siempre la respuesta!

Para mí, reiniciar el Nexus 4 varias veces no ayudó. La primera vez que comencé a usar el teléfono móvil, inicié sesión sin la cuenta de Google. Entonces, restablecí la configuración de fábrica y me aseguré de iniciar sesión con la cuenta de Google. Esto parece haber solucionado el problema.