Skip to content

Latest commit

 

History

History
130 lines (95 loc) · 5.42 KB

File metadata and controls

130 lines (95 loc) · 5.42 KB

Onde Estacionei Logo

Onde Estacionei?

Nunca mais perca seu carro. Salve, visualize e navegue até seu veículo com um único toque.

Kotlin Android Jetpack Compose Material 3 Room DataStore Retrofit OkHttp Google Maps OpenRouteService WorkManager Glance


📖 Sobre o Projeto

Quem nunca passou minutos preciosos procurando o carro em um estacionamento de shopping, em uma rua desconhecida ou no meio da multidão de um grande evento? Esse momento de incerteza pode ser frustrante e consumir um tempo valioso.

Onde Estacionei? é um assistente de estacionamento minimalista e confiável. Com apenas um toque, o usuário salva a localização exata do veículo. Ao retornar, o aplicativo exibe a posição do carro e a localização atual do usuário em um mapa interativo, traçando a melhor rota para o reencontro.

Público-alvo: motoristas que frequentam grandes centros urbanos, shoppings, aeroportos e eventos — onde encontrar o carro pode se tornar um desafio real.


✨ Funcionalidades

  • Salvar localização com um toque — Registra a posição GPS atual diretamente pela tela principal
  • Mapa interativo — Exibe a localização do carro e do usuário via Google Maps
  • Navegação a pé / de carro — Traça a rota em tempo real entre o usuário e o veículo
  • Geocodificação reversa — Converte coordenadas GPS em endereços legíveis
  • Notas e detalhes — Permite salvar informações extras como andar e número da vaga
  • Histórico de locais — Listagem e exclusão de registros salvos localmente
  • Tema escuro / claro — Interface adaptável com Material 3
  • App Widget — Salve sua localização diretamente pela tela inicial, sem abrir o app

🖼️ Screenshots

As imagens abaixo ilustram as principais telas da aplicação.

Tela Principal - Light Model Tela Principal - Dark Model
Home Map
Tela de Rota - Light Model Tela de Rota - Dark Model
Home Map
Tela de Histórico Adicionar nota
Home Map

🏗️ Arquitetura

O projeto segue a arquitetura MVVM (Model-View-ViewModel) e é construído com o ecossistema moderno do Android.

Camada Tecnologia
Linguagem Kotlin 2.0.21
UI Jetpack Compose + Material 3
Banco de dados Room
Preferências DataStore
Rede Retrofit + OkHttp
Mapas Google Maps Compose
Localização Play Services Location (Fused Location Provider)
Rotas OpenRouteService API
Permissões Accompanist Permissions
Navegação Navigation Compose
Background WorkManager
Widget Glance
Splash Core Splashscreen

🚀 Como Executar

Pré-requisitos

  • Android Studio instalado
  • Chaves de API do Google Maps e OpenRouteService

1. Clone o repositório

git clone git@github.com:profBruno-UFC-Qx/classroom-mobile-final-onde-estacionei.git

2. Acesse o diretório do projeto

cd classroom-mobile-final-onde-estacionei/ondeestacionei/

3. Abra no Android Studio

studio .

4. Configure as chaves de API

Por segurança, as chaves de API não estão incluídas no repositório — provedores como Google e OpenRouteService revogam chaves detectadas em repositórios públicos automaticamente.

Após obter suas chaves, localize o arquivo local.properties na raiz do projeto e adicione ao final:

MAPS_API_KEY=SUA_CHAVE_AQUI
ORS_API_KEY=SUA_CHAVE_AQUI

5. Execute o app

Conecte um dispositivo ou inicie um emulador e pressione Run no Android Studio.


📄 Licença

Este projeto foi desenvolvido para fins acadêmicos.