Skip to content

Test case for ycloud.school - mobile smart weather app

Notifications You must be signed in to change notification settings

gkurbesov/SimpleSmartWeather

Repository files navigation

SimpleSmartWeather ☂

Test case for ycloud.school - mobile smart weather app

Описание приложения

Приложение для получения текущей погоды в населенном пункте и интерактивных подсказок. Функционал приложения позволяет:

  • Отобразить текущую погоду (по умолчанию г. Москва)
  • Изменить населенный пункт для отображения погоды
  • Предлагать подсказки в соответствии с текущей погодой

Используемые технологии

  • Android SDK + язык программирования Kotlin
  • Библиотека интерфейса Material Design
  • Retrofit 2

Приложение написано на языке программирования Kotlin и использует открытый API Sputnik maps для поиска населенных пунктов и определения их координат. Данные о погоде подтягиваются из сервиса OpenWeatherMap, так же используя One Call API, описанный на их сайте.

Формат отображения

У сервиса OpenWeatherMap через HTTP API запрашиваются данные о погоде по заданным координатам населенного пункта или по координатам местонахождения пользователя, полученные данные отображаются на главном экране приложения с указанием текущей температуры, ощущаемой температуры, скорости ветра и процентов облачности. В зависимости от текущих погодных условий пользователю показываются дополнительные интерактивные подсказки.

ezgif.com-video-to-gifbb39c6dc176a0852.gif

Как это работает

  1. При запуске приложение проверяет настройки пользователя
  2. Если разрешено определение координат - используются текущие координаты устройства
  3. Если используется название населенного пункта - определяются координаты населенного пункта с помощью запроса на Sputnik maps api
  4. Полученные координаты используются для запроса текущей погоды от OpenWeatherMap
  5. полученные данные в формате JSON десериализуются в POCO объект
  6. Данные объекта отображаются на главном экране приложения

Как запустить

  1. Клонируйте репозиторий
  2. Откройте проект в Android Studio (рекомендуется версия 3.6 или выше)
  3. Обновите необходимые зависимости Gradle app
  4. Подключите устройство или запустите эмулятор с версией Android 6.0 и выше
  5. В панели инструментов выберите устройсто/эмулятор из списка и нажмите кнопку Run run

About

Test case for ycloud.school - mobile smart weather app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages