Desarrollado por Oliver Fernández García (@oliver-upm) para la asigantura de Front End para Móviles del Máster en Ingeniería Web de la UPM.
Partiendo del proyecto de FirebaseUI-Android como ejemplo, se han desarrollado las siguientes funcionalidades acorde a lo requerido en la práctica:
Utilizando el servicio Firebase Authentication se proporciona la posibilidad de registrar nuevos usuarios y autenticarlos mediante email y contraseña. Asismismo, existe las posibilidad de ingresar como invitado.
La API elegida es la de CoinCap: CoinCap API 2.0. Proporciona datos transparentes y precisos sobre precios y actividad de mercado en tiempo real para más de 1000 criptomonedas.
Para el ejemplo no se utiliza autenticación ya que esta API proporciona de forma gratis hasta un límite de 200 peticiones por minuto y 11 años de datos históricos.
Esta funcionalidad permite hacer peticiones asíncronas a la API utilizando Retrofit para, mediante el nombre de la criptomoneda, obtener información sobre su precio, market cap, porcentaje de cambio en las últimas 24 horas, etc. Además, cada búsqueda se almacena en la base de datos Cloud Firestore para poder acceder a ellas en la siguiente funcionalidad.
Utilizando los datos almacenados en la base de datos Cloud Firestore, se muestra el historial de las últimas 20 búsquedas realizadas ordenadas por fecha de búsqueda (de más reciente a más antigua). Así el usuario puede comparar los datos de las criptomonedas en diferentes momentos.