Skip to content

Latest commit

 

History

History
30 lines (26 loc) · 1.67 KB

File metadata and controls

30 lines (26 loc) · 1.67 KB

WeatherApp

This is a Weather App based on and extended from philipplackner's version.

Features

Libraries, Technologies, and Design Patterns used

  • Kotlin
  • Jetpack Compose
  • Compose destinations
  • MVI with Clean Architecture
  • Hilt for dependency injection
  • FusedLocationProvider
  • GoogleMaps API
  • OneMap API
  • Retrofit2
  • Leak Canary

OneMap integration

I used OneMap reverse geocoding API to get better names for buildings/roads in Singapore. This API requires an access token that is supposed to expire in 3 days (It worked for at least 2 additional days for me before I changed it). It sometimes throws an HTTP 400 error, and I suspect that it is because the latitude and longitude values provided are not handled by OneMap since it is only focused on Singapore.

TODOs

  • Add refresh ability to update the weather data in WeatherScreen
  • Add additional datasources for weather data for aggregation and/or redundancy
  • Save map zoom state
  • Save previous location on leaving the app