An android application which uses NewsAPI for listing news
NewsApp
An android application which uses NewsAPI for listing news.
Prerequisites
1. Check the App
If the app cannot list news, check the API key on build.gradle.kts(:app).
buildConfigField("String", "NEWS_API_KEY", "\"860eaf0ada084fea80bc2ea8480dc0af\"")
2. Ready to run.
Features
- News Listing Feature
- Caching Results (Offline Capability)
- Pull to Refresh
- Unit Tests
Tech Stack
- Kotlin – Officially supported programming language for Android development by Google
- Kotlin DSL – Alternative syntax to the Groovy DSL
- Coroutines – Perform asynchronous operations
- Flow – Handle the stream of data asynchronously
- Android Architecture Components
- LiveData – Notify views about data changes
- Room – Persistence library
- ViewModel – UI related data holder
- ViewBinding – Allows to more easily write code that interacts with views
- Hilt – Dependency Injection framework
- Retrofit – Networking library
- Moshi – A modern JSON library for Kotlin and Java
Local Unit Tests
- The project uses MockWebServer (scriptable web server) to test API interactions.