Create an application to display list (RecyclerView) of 3 categories from iTunesRss (AudioBooks, Movies, Podcasts). These 3 categories should be displayed using BottomNavigationView (Android native view) + 1 more tab with the list of stored/favourite items (if favorite items list is empty then show text placeholder). Every list of categories should contain top 25 items of its own category (e.g. https://rss.itunes.apple.com/api/v1/us/audiobooks/top-audiobooks/all/25/non-explicit.json, https://rss.itunes.apple.com/api/v1/us/movies/top-movies/all/25/non-explicit.json, https://rss.itunes.apple.com/api/v1/us/podcasts/top-podcasts/all/25/non-explicit.json). Categories opened by the user previously in online mode, should be accessible in offline mode too. When you tap on item of the currently selected category it should be opened on another page with some detail information (to get the detail information use the following link: http://itunes.apple.com/lookup?id={entry_id_attributes_im:id}). If you select another category by tapping on the BottomNavigationView, the state of the current view should be stored. E.g. If i open AudioBooks category, select an item, switch to Podcasts and press the back navigation button, the app should navigate back to the previously selected item from the AudioBooks category. You can find example of this kind of navigation in Instagram Android app. There should be an ability to add/remove items from the 3 available categories to/from the favorites (last 4th tab). This information should be stored in local DB. List of favorite items should be grouped by categories. Will be a plus:
- Kotlin
- usage of third party libraries (Retrofit, Glide/Picasso, Room, Architecture Components and Dagger are allowed);
- MVP/MVVM architecture
- Material Design, Cool animations