This app is DEPRECATED please use this one instead
Planos y Centellas is a podcast about movies and series by Juan Hernandez y Manu Vacas. You can find more information about it in its Ivoox webpage.
The purpose of this application is to gather all the relevant information about this podcast in the same place.
The application contains 5 different sections for the user to explore:
- Home
- Episodes
- News
- Social Networks
- Patreon
Here general information about Planos y Centellas is presented to the user as a welcome screen.
A list with the episodes published by Planos y Centellas in Ivoox. TBD if the user will be able to listen to them in the app or in the Ivoox app
In this section, the user will see the upcoming episodes for the current week
Contains all the Planos y Centellas social networks, go ahead and subscribe to not miss anything!
In this section, the awards of being a patreon member and displayed. It also bring the posibility to the user to go to Patreon.com and become one!
In this section the tecnical details about the app are going to be discussed.
The application contains 1 activity and some fragments, following the single Activity pattern. For the app navigation the Navigation Component is used.
The architecture selected is Model-View-ViewModel (MVVM). There is a ViewModel (HomeViewModel) instance shared by all the Fragments. This ViewModel uses a Repository class (Repository) to obtain the data. Equally, the Repository class uses a Provider class in order to achieve the required data.
In addition to this, there is a second ViewModel (PlayerViewModel) that handles all the operations related to the media player in order to reproduce the episodes.
This is a clear implementation of the MVVM patter as it can be seeing here
The data is obtained when the user starts the application. Currently is not possible to update the data when the app is running, this may change in the future.
In order to obtain the data, web scrapping is performed in different webpages. For this purpose, some model classes have been created (see model package). Jsoup is the library used for the scrapping.
Please check here for more information about the testing strategy followed.
In addition to this, LeakCanary is used for checking posible memory leaks
- Navigation Component
- Sliding up panel
- Swipe Layout
- Exoplayer
- Jsoup
- Picasso
- TouchImageView
- LeakCanary
-
Spotify logo made by Pixel perfect in Flaticon
-
Patreon logo made by Pixel perfect in Flaticon
-
Twitter logo made by Pixel perfect in Flaticon
-
Facebook logo made by Pixel perfect in Flaticon
-
Gmail logo made by Pixel perfect in Flaticon
-
Microphone logo made by Pixel perfect in Flaticon
-
Social Network logo made by Vitaly Gorbachev in Flaticon
-
Itunes logo obatined from here