Cuando una app realiza búsquedas de Wi-Fi en segundo plano, se activa la CPU, lo que provoca un agotamiento de la batería. Cuando se realizan demasiadas búsquedas, se puede reducir de forma notoria la duración de batería del dispositivo. Se considera que una app se ejecuta en segundo plano si tiene el estado PROCESS_STATE_BACKGROUND o PROCESS_STATE_CACHED.
En este documento, se proporcionan sugerencias para diagnosticar y corregir el problema de las búsquedas de Wi-Fi excesivas en segundo plano.
Cómo investigar las búsquedas de Wi-Fi
Algunas herramientas, como Battery Historian, pueden ayudarte a obtener estadísticas más detalladas sobre el comportamiento de búsqueda de Wi-Fi de tu app. Battery Historian proporciona una visualización del comportamiento de la búsqueda de Wi-Fi por app, lo que puede ayudarte a obtener una idea más clara de lo que sucede con ella. Para obtener más información sobre Battery Historian, consulta Cómo analizar el uso de energía con Battery Historian.
Para obtener información sobre cómo usar Battery Historian, consulta la Explicación de Batterystats y Battery Historian.
Cómo reducir las búsquedas
Si es posible, tu app debería realizar las búsquedas de Wi-Fi mientras se ejecuta en primer plano. Los servicios en primer plano presentan notificaciones automáticamente. Por lo tanto, cuando las búsquedas de Wi-Fi se realizan en primer plano, el usuario puede saber cuándo se llevan a cabo en su dispositivo y el motivo.
Si deseas obtener información para realizar búsquedas en primer plano, consulta la documentación de la clase WifiManager.
Si tu app no puede evitar realizar las búsquedas de Wi-Fi mientras se ejecuta en segundo plano, puedes aplicar una estrategia de inicialización diferida. Esta incluye tres técnicas que puedes usar para disminuir las búsquedas de Wi-Fi: reducir, diferir y fusionar. Si deseas obtener información sobre estas técnicas, consulta Cómo optimizar la duración de batería.
Recomendaciones para ti
- Nota: El texto del vínculo se muestra cuando JavaScript está desactivado
- Uso excesivo de la red móvil en segundo plano