Este projeto envolve a criação de uma tela de login com o Firebase, integração de uma API REST e a exibição de dados em um aplicativo Android. Siga as instruções abaixo para configurar e implementar as funcionalidades solicitadas.
- IDE: Android Studio
- Bibliotecas: Firebase Authentication, Firebase Storage, Retrofit (para requisições REST), Google Maps (opcional)
Implemente uma tela de login que use um dos provedores de autenticação do Firebase (recomenda-se usar autenticação por telefone ou Google).
-
Autenticação por telefone:
- Configure o Firebase para aceitar o número de telefone:
+55 11 91234-5678
. - Defina o código de verificação para login de teste como
101010
.
- Configure o Firebase para aceitar o número de telefone:
-
Autenticação com Google (caso escolha esta opção):
- Habilite a autenticação com Google nas configurações do Firebase Console.
- Implemente a lógica de autenticação no aplicativo, usando o provedor de login do Google.
Adicione uma opção de logout ao aplicativo, permitindo que o usuário saia da conta autenticada. Essa opção deve estar disponível em uma área visível, como o menu principal ou um botão específico na interface.
Implemente a integração com uma API REST disponível no [Link] (https://github.com/vagnnermartins/FTPR-Car-Api-Node-Express) para exibir e salvar informações de carros no aplicativo.
-
Estrutura JSON Esperada:
{ "imageUrl": "https://image", "year": "2020/2020", "name": "Gaspar", "licence": "ABC-1234", "place": { "lat": 0, "long": 0 } }
-
Requisitos Específicos:
- O campo
imageUrl
deve apontar para uma imagem armazenada no Firebase Storage. - Exiba a imagem e as informações de cada carro no aplicativo.
- Utilize Retrofit para realizar as requisições à API.
- O campo
Para um desafio adicional, utilize a API do Google Maps para exibir o local (place
) associado ao carro. Essa localização é especificada pelos campos lat
e long
no JSON da API.
- Firebase: Configure o projeto com Firebase Authentication e Firebase Storage. Adicione o
google-services.json
ao projeto para integração. - Google Maps (opcional): Habilite a API do Google Maps e adicione uma chave de API ao projeto.
- Dependências Gradle:
- Firebase:
Firebase Authentication
eFirebase Storage
- Retrofit para a comunicação com a API REST
- Glide ou outra biblioteca para carregamento de imagens
- Google Maps SDK (caso implemente a parte opcional)
- Firebase:
Aqui está a seção detalhada sobre a entrega do projeto com as instruções para fazer um fork:
Para enviar o projeto finalizado, siga os passos abaixo:
-
Faça um Fork do Projeto:
- No GitHub, vá até a página do repositório original.
- Clique em "Fork" no canto superior direito da página para criar uma cópia do repositório em seu GitHub pessoal.
-
Clone o Repositório Forkado:
- No seu perfil do GitHub, acesse o repositório forkado.
- Copie o link de clonagem (HTTPS ou SSH).
- No terminal, clone o repositório em sua máquina local:
git clone <link-do-repositorio-forkado>
-
Implemente as Funcionalidades:
- Siga as instruções do exercício para implementar as funcionalidades.
- Após concluir, adicione, faça commit e push das alterações para o repositório forkado.
-
Publicação:
- Opção 1: Envie o projeto final no seu repositório forkado. Compartilhe o link do repositório com o instrutor para avaliação.
- Opção 2: Faça um Pull Request para o repositório original. Para isso:
- Acesse o repositório original no GitHub.
- Clique em "Compare & pull request" para iniciar o processo de Pull Request.
- Descreva as alterações feitas e confirme o envio.
Nota: Certifique-se de que o código está organizado e que todas as funcionalidades foram devidamente testadas antes de enviar o projeto.
Boa entrega e sucesso no desenvolvimento!