Aplicativo que disponibiliza previsões sobre o clima de determinado local.
Sobre • Screenshots • Bibliografia • Contribuição
Aplicativo de previsões climáticas feito com Android nativo. Possui uma tela de dashboard onde é possível pesquisar por um local e receber previsões climáticas sobre o clima atual e das próximas horas. Também possui uma tela de calendário, onde mostra a previsão climática dos próximos 7 dias e só é liberada depois que você faz a pesquisa. Além disso, você pode alterar, nas configurações, o sistema de unidade usado nas medidas, podendo escolher entre métrico (°C e m/s) e imperial (°F e mph).
-
Jetpack Compose: O Jetpack Compose é um kit de ferramentas moderno do Android para criar IUs nativas. Ele simplifica e acelera o desenvolvimento da IU no Android.
-
Ktor Client: O Ktor inclui um cliente HTTP assíncrono multiplataforma, que permite fazer solicitações e lidar com respostas, estender sua funcionalidade com plugins, como autenticação, serialização JSON e assim por diante.
-
kotlinx-serialization: O kotlinx-serialization consiste em um plug-in do compilador, que gera código para classes serializáveis, biblioteca de tempo de execução com API de serialização central e bibliotecas de suporte com vários formatos de serialização. No caso do aplicativo, foi usado apenas o kotlinx-serialization-json.
-
Jetpack DataStore: uma solução de armazenamento de dados que permite armazenar pares de chave-valor ou objetos tipados com buffers de protocolo. O DataStore usa corrotinas e fluxo do Kotlin para armazenar dados de forma assíncrona, consistente e transacional.
-
kotlinx-datetime: Uma biblioteca Kotlin multiplataforma para trabalhar com data e hora.
-
Hilt: O Hilt fornece uma maneira padrão de incorporar a injeção de dependência do Dagger em um aplicativo Android.
-
Material 3: A versão mais recente do Material Design inclui recursos de personalização e acessibilidade que colocam as pessoas no centro.
Nesta seção, você encontrará vários links e recursos que falam acerca das bibliotecas e extras utilizados no projeto.
Biblioteca | Link |
---|---|
Jetpack Compose | https://developer.android.com/jetpack |
Ktor Client | https://ktor.io/docs/create-client.html#configure-client |
kotlinx-serialization | https://github.com/Kotlin/kotlinx.serialization |
Jetpack DataStore | https://developer.android.com/topic/libraries/architecture/datastore?hl=pt-br |
kotlinx-datetime | https://github.com/Kotlin/kotlinx-datetime |
Hilt | https://developer.android.com/training/dependency-injection/hilt-android?hl=pt-br#inject-interfaces |
Material 3 | https://m3.material.io/ |
O app foi criado e testado em um dispositivo físico, Redmi Note 9s, e em dois emuladores, um com API 28 e o outro com API 31, mas é disponível para qualquer um que queira contribuir.
Caso tenha alguma ideia de como melhorar o app, realize os seguintes passos:
-
Para contribuir, basta fazer um fork. (https://github.com/arturbruno17/klima/fork)
-
Crie uma branch para sua modificação (
git checkout -b feature/fooBar
) -
Faça o commit (
git commit -am "Add some fooBar"
) -
Push (
git push origin feature/fooBar
) -
Crie um novo Pull Request