TopUp Mama Solution.
- The app will desplay weather details of current city (Nairobi) and a list of other 20 cities. The data is fetched in real-time and the application uses internet to ensure the data displayed is correct and upto date.
I'm using Open Weather API for this application.
- api.openweathermap.org/data/2.5/weather?q=Nairobi&appid=[API Key]
- api.openweathermap.org/data/2.5/group?id=524901,703448,2643743&appid=[API Key]
Got the visual look and feel from this Adobe XD Weather App Demo Prototype.
- Kotlin.
- IDE: Android Studio.
- View Binding : Allows you to more easily write code that interacts with views
- Adapter : Bridge between an AdapterView and the underlying data for that view
- Android Singleton Pattern : Helps in setting up RequestQueue
MVVM(ModelView View Model architecture) Software architectural pattern that facilitates the separation of the development of the graphical user interface (the view) be it via a markup language or GUI code.
- Volley.
- Here we're testing code which doesn't call the Android API to verify our app's correctness, functional behavior, and usability before you release it publicly.
- Example Unit Test method from my code
@Test
fun convert_Kelvin_To_Celsius() {
val res = 27.75
assertEquals(String.format("%.1f", res), userDefined.convertKelvinToCelsius(300.9).toString())
}