Мобильное приложение для прогноза погоды на Android.
- Поиск погоды по городу
- Карта с маркерами
- Прогноз на 5 дней
- Кэширование данных (Room + SQLite)
- Темы оформления (светлая/тёмная) в соответствии Material Design
- Интеграция с OpenWeatherMap API
- Сохранение истории поиска
- Автоматическое обновление данных
- Kotlin — основной язык
- Jetpack Compose — UI
- Room — локальная база данных для кэша
- Retrofit — сетевые запросы к OpenWeatherMap
- Gson — сериализация/десериализация JSON
- OkHttp — HTTP-клиент
- OSM (OpenStreetMap) — карта с кастомными маркерами
- Кэширование погоды и прогноза с TTL (10 минут для текущей, 60 минут для прогноза)
- Уникальные ключи кэша для каждого города и системы единиц
- Структурированные модели данных для погоды и прогноза
- Очистка кэша и файловых данных через отдельную функцию
- Поддержка русского языка в запросах
- Лунный календарь
- Империческая система измерений
- Тёмная тема
- Диаграммы погоды
- История поиска
- Клонируйте репозиторий:
git clone https://github.com/VladimirKhmelev/Mobile-Weather-App.git
- Откройте проект в Android Studio.
- Запустите сборку через Gradle:
./gradlew build
app/— исходный код приложенияgradle/— настройки Gradlebuild.gradle.kts,settings.gradle.kts— конфигурация сборкиREADME.md— описание проектаLICENSE— лицензия MIT
Используется OpenWeatherMap API. Ключ хранится в коде для тестовых целей.
MIT (см. LICENSE)