Spanish subtitles

← 05-09 Network_and_Battery_Drain

05-09 Network_and_Battery_Drain

Get Embed Code
13 Languages

Showing Revision 3 created 12/29/2015 by QA_SP_8_SP.

  1. Dediquemos un momento
    a algo muy evidente.
  2. En consumo de batería,
  3. las redes de contactos son los peores
    y más grandes culpables que hay.
  4. Recuerda que dentro de tu teléfono
    hay una pequeña pieza de hardware,
  5. una radio HAM,
    cuyo único objetivo
  6. es comunicarse con las torres de telefonía
  7. y transmitirles información
    a altos volúmenes.
  8. Pero la clave está en que este chip
    no siempre está activo.
  9. Al enviar un paquete de datos,
  10. el chip con radiofrecuencia
    estará activo durante un tiempo,
  11. en caso de que haya
    una respuesta del servidor.
  12. Si no hay actividad, el hardware
    se desactivará para ahorrar batería.
  13. Como hemos visto,
  14. hay muchísima batería la primera vez
    que se activa el chip,
  15. y mientras se mantenga activo
    esperando una respuesta
  16. la batería se irá consumiendo.
  17. Cabe señalar que hay dos formas básicas
  18. en las que la mayoría de aplicaciones
    interactúan con la radio.
  19. En primer lugar,
    hay hechos que deben ser inmediatos.
  20. Son el resultado de la acción del usuario,
  21. o surgen de la necesidad
    de actualizar la UI de tu aplicación.
  22. Imagina que un usuario pide cargar
    unos tuits para una "trending hashtag".
  23. Como es una acción
    iniciada por un usuario,
  24. tu aplicación debería
    responder al momento.
  25. Por otro lado,
    hay tareas de redes sociales
  26. que no tienen por qué ocurrir
    de una forma tan puntual, por ejemplo:
  27. subir datos de usuario,
    sincronizar información estadística
  28. o reajustar el tamaño de tus fotos.
  29. Mientras se producen las primeras tareas,
    que deben realizarse al momento
  30. para proporcionar feedback al usuario,
    las siguientes pueden dejarse para luego,
  31. para que se realicen
    de un modo más eficiente para la batería.
  32. Hay una gran posibilidad de que la mayoría
    de solicitudes de red en tu aplicación
  33. caigan a esta segunda categoría.
  34. Hacer más eficientes
    las tareas de redes sociales
  35. es un proceso de dos pasos.
  36. Echa un ojo a la línea "mobile_radio"
    de la herramienta "Battery Historian"
  37. de tu aplicación.
  38. Cada barra roja de aquí representa
    una radiotransmisión móvil activa.
  39. Los huecos entre las barras representan
    la inactividad de la radio.
  40. Ver muchas barras estrechas
    y huecos en tu gráfico
  41. apunta a problemas de rendimiento,
  42. porque representa que te mueves
    entre muchos ciclos activos e inactivos.
  43. Lo que te interesa es ver huecos grandes
    junto a grandes bloques de actividad.
  44. Así reduces gastos minimizando
    el número de solicitudes de red
  45. y, lo que es mejor,
    no utilizas del todo la radio.
  46. Puedes esperar
    a que el teléfono se conecte al WiFi
  47. y dejar que el hardware WiFi
    haga ese trabajo
  48. con mucha menos consumo de batería.
  49. Pero escribir el código para agrupar,
  50. almacenar y aplazar
    todas las solicitudes de red es difícil.
  51. Por eso hemos hecho el trabajo por ti.
  52. La API JobScheduler que se dio a conocer
    con el lanzamiento de Android
  53. proporciona una serie de APIs
  54. que hacen todo el trabajo
    de administración de solicitudes de red
  55. y más por ti.
  56. Pero en lugar de hablarte
    de esta maravillosa API,
  57. ¿por qué no la entrenas
    a base de práctica?