Home Apptempo
Post
Cancel

Apptempo

Estou buscando seguir para o lado dev da força, comecei a estudar react(native e reactjs) para desenvolver interface mesmo que não fosse meu foco principal, portanto inicialmente resolvi desenvolver esse app como um teste de conhecimento básico react native, observe que o aplicativo é bem rudimentar, além do código não possuir os padrões de mercado, foi divertido desenvolvê-lo, mas não aconselho a utilização desse código em um produto final, mas deixo como uma fonte de inspiração.

O objetivo desse app é ao usuário clicar no “Qual a temperatura” o aplicativo devolver a localização e a temperatura.

O app vai obter a localização apenas usando a rede do smartfone, não sendo necessário o GPS.

Tela Inicial Tela Inicial

Tela Resultado

Tela Inicial

Desenvolvimento

O propósito desse estudo foi desenvolver um aplicativo para consumir algumas APIs Rest de maneira encadeada, obtendo assim a informação e devolvendo o resultado para o usuário. Utilizei react-native com o expo, para facilitar os testes, ganhando em tempo para a depuração e gerando deploy do aplicativo. As apis que utilizei:

  1. Consultar o IP do usuário. -> httpbin
  2. Utilizando o IP ele obterá a localização. -> geoplugin
  3. Com a localização ela obterá o clima atual.

Essa última api utilizei o serviço do Accuweather, no modo gratuito essa api disponibiliza um número limitado de consultas diárias, que para meus propósitos serviu muito bem.

Clique Aqui para acessar a página do github com o código.

Caso queira testar, primeiro você precisará de um token que pode ser obtido se cadastrando na Accuweather. Baixe o projeto:

git clone https://github.com/geekwx/apptempo-react.git

Depois na pasta raiz você precisará criar um arquivo chamado token.json possuindo uma estrutura semelhante a essa:

1
2
3
4
{
    "key": "seu token cadastrado do site Accuweather"
}

Depois dentro da pasta raiz instalar as dependências:

NPM

npm install

YARN

yarn

Iniciar aplicação NPM

npm start

YARN

yarn start

Pela API da Accuweather eu poderia já obter a localização e o clima com o IP do usuário, mas preferi deixar dessa maneira para aumentar o número de api de serviços diferentes consumindo. Futuramente pretendo melhorar esse código, e quando sobrar um tempo quero fazer alguns post explicando a lógica de desenvolvimento que segui.

Muito obrigado caso tenha lido, um abração e até. 🤖

This post is licensed under CC BY 4.0 by the author.
Contents