WeatherApp - is a mobile application for Android OC. It's main purpose - obtain weather information. Functions that are currently done:
- Search and add cities in favorite list;
- Get weather by your GPS coordinates;
- Window with hourly weather forecast for the day;
- Storing weather data in sqlite db, to provide forcast even if user is offline.
Now working on:
- Weekly weather forecast;
It is planned to add the following features:
- Analysis of "extreme" weather conditions such as rain, fog, storm and other for the day. Warn user about them through main application window and/or a by the notification.
---
The Application was developed on Java with using the following means:
- Android Studio IDE and Gradle;
- To create a weather icons and other visual elements used Adobe Photoshop CS5;
- For conversion images to vector images Vector Magic was used;
- For weather data I used API of OpenWeatherMap.org;
- Retrofit and GSON for connection with server and parsing incoming data;
CityAdapter - creating a list with favorite cities in CitiesFragment;
DailyWeatherAdapter - creating a list with daily forecast in DayForecastFragment;
CitiesFragment - first window of application with favorite cities;
MainWindowFragmet - second window of application with current weather data;
DayForecastFragment - third window of application with daily forecast;
TabsPagerAdapter - work with this three fragments
ApiClient - creating retrofit object;
APIWeatherInterface - for retrofit's request methods;
OpenWeatherMapAPI - class for request data from OpenWeatherMap.org server;
CitySuggectionProvider - for getting cities search suggestion;
PreferencesAPI - saving favorite cities in preferences file;