Ficha 02 · Navegação, APIs e armazenamento
- Navegar entre ecrãs
- Consumir APIs
- Armazenar localmente
- Conhecer publicação
Parte I · Navegação
Exercício 1 · Push/pop (15 pts)
a) Escreve o código para ir de HomeScreen para DetalheScreen.
b) E para voltar.
c) Como passar um produtoId para o DetalheScreen?
Exercício 2 · Rotas nomeadas (10 pts)
Configura uma MaterialApp com 3 rotas nomeadas e mostra como navegar para uma delas.
Parte II · APIs
Exercício 3 · Consumir API (20 pts)
Escreve uma função async que faz GET a https://api.aulify.pt/produtos, devolve a lista (JSON) ou lança excepção em erro.
Exercício 4 · FutureBuilder (20 pts)
Usa um FutureBuilder para mostrar: - Um spinner enquanto carrega. - A lista de produtos quando chega. - Mensagem de erro se falhar.
Exercício 5 · Modelo de dados (10 pts)
Cria uma classe Produto com fromJson para converter o JSON da API em objecto.
Parte III · Armazenamento
Exercício 6 · Escolher solução (10 pts)
Para cada dado, indica onde guardar:
a) Preferência "dark mode on/off". ___
b) Token de autenticação. ___
c) Cache de 500 produtos para uso offline. ___
d) Última pesquisa do utilizador. ___
Exercício 7 · shared_preferences (15 pts)
Escreve funções para guardar e ler a preferência "dark mode" (booleano), com valor por defeito false.
Parte IV · Publicação
Exercício 8 · Antes de publicar (10 pts)
Lista 5 coisas a preparar antes de submeter uma app às lojas.