En Platzi nos preocupamos por los estudiantes, por lo que queríamos ofrecer una mejor experiencia descargando los cursos o clases. Esto condujo a estos tres casos de uso de descarga principales:
Desde la perspectiva del producto, teníamos muchas preguntas iniciales sobre cómo debería comportarse la función en la app nativa: ¿Cuánta configuración deberíamos ofrecer a los usuarios? ¿Qué estados mostrarle al usuario?
Elegimos una línea de tiempo agresiva para la función, ya que queríamos ofrecer la experiencia a nuestros estudiantes lo antes posible. Nuestro objetivo era crear una gran experiencia con la cantidad justa de alcance para nuestros estudiantes.
Inicialmente vimos el DownloadManager de Android como el mecanismo para transferir archivos y datos al cliente. Este componente era fácil de usar y manejaba algunas de las funciones que queríamos. Sin embargo, en última instancia, no nos permitió crear la experiencia de usuario que necesitábamos.
Creamos una clase DownloadManager en Platzi por los siguientes motivos:
Diagrama de funcionamiento de descargas.
Encontramos dos problemas principales con JobScheduler. El primero fue cómo proporcionar las actualizaciones que necesitábamos de JobScheduler en dispositivos pre-Lollipop. Para estos dispositivos, escribimos una capa de abstracción sobre la parte superior del componente de programación de trabajos, y en los dispositivos anteriores a Lollipop usamos el receptor de conectividad de red del sistema y el servicio AlarmManager para programar tareas en segundo plano manualmente en horarios establecidos.
El segundo problema principal que encontramos con JobScheduler fue su problema de bloqueo en ciertas circunstancias. Si bien no pudimos solucionar directamente este bloqueo, pudimos determinar una solución alternativa por la cual evitamos llamar a JobService.onJobFinished () por completo en ciertos casos. El trabajo finalmente se agota por sí solo, por lo que el costo de operar de esta manera parecía mejor que permitir que la aplicación se bloquee.
La principal sugerencia que recibimos para Android fue sobre la falta de soporte de la tarjeta SD, que abordamos rápidamente. Ahora hemos establecido una experiencia de referencia para las descargas, Entre ellas están:
Existen varios métodos para reproducir videos en Android, que varían en su complejidad y nivel de control:
Además, la reproducción de contenido fuera de línea (sin transmisión) no es compatible con el reproductor DASH del sistema Android. No era la única opción, pero sentimos que las descargas eran una buena oportunidad para probar el nuevo Android ExoPlayer de Google . Las características que nos gustaron fueron:
El equipo mobile se alineó a lanzar esta función bajo una ambiciosa línea de tiempo. Nos produjo satisfacción brindarles alegría a nuestros estudiantes y darles la posibilidad de llevar sus cursos favoritos con ellos mientras viajan o están sin Internet.
Si te gusta ver más blogs de este estilo o tienes dudas cuéntanos en los comentarios. NUNCA PARES DE APRENDER
Excelentes funcionalidades. Mil gracias.
Gracias @teamplatzi por pensar en nosotros y ser leales a su misión “Nunca parar de aprender” para ofrecernos mejores herramientas cada día.
Me han servido mucho sus mejoras y por esto reto a toda la comunidad Platzi para que probemos las nuevas funcionalidades y califiquemos la APP para que mejoremos su puntaje en la Play Store:
.
I installed applinked on my android devices to watch movies and shows. you need new applinked codes for that.
Que bueno que la app sigue mejorando, no la he utilizado, pero voy a probarla y justamente con el taller de design thinking
Excelente, muchas gracias por todo el trabajo que hacen para que la app este mejor.
Genial, por ahora estamos probando
Excelente trabajo.
Lo gracioso es que yo había escrito al equipo feedback con muchos puntos que cambiaron y al otro día actualizó. Pareció magia 😃
no me deja descargar los podcast 😦
Excelente!
Increíble que el mismo Team Platzi se dé la tarea de platicarnos cómo es su experiencia en el desarrollo de los productos que utilizamos los estudiantes. Sirve de mucho para una perspectiva fuera de nuestros equipos de trabajo. Ojalá puedan lanzar pronto una versión nativa para iOS. Lo esperaré. Ojalá también se puedan gestionar las suscripciones desde las apps móviles y no sólo desde el navegador.
Gracias por el post, @DevPaulo! 😃
A probar las nuevas funcionalidades
¡buena tigres!
Bello espíritu de compartir! ❤️