Você está aqui: Android Java ::: Plug-ins e Bibliotecas Adicionais ::: com.android.volley

Fazendo uma requisição HTTP GET simples usando a biblioteca Volley do Android - Obtendo a data e hora do servidor remoto

Quantidade de visualizações: 1425 vezes
Nesta dica mostrarei como é possível usar a classe StringRequest da biblioteca Volley do Android para fazer uma requisição HTTP GET simples à uma página PHP e retornar a data e hora do servidor remoto. Note que nossa requisição GET não vai enviar nenhum parâmetro nem valor pela URL. Em outras dicas dessa seção veremos como isso pode ser feito.

Crie um novo projeto no Android (com uma Activity vazia) e vamos adicionar a dependência do Volley no arquivo build.gradle (app):

implementation 'com.android.volley:volley:1.1.1'

O Android Studio vai pedir para você baixar as dependências. Finalizada essa parte, vamos dar a permissão de acesso à Internet para o nosso aplicativo. Vá até o arquivo AndroidManifest.xml e adicione o elemento abaixo:

<uses-permission android:name="android.permission.INTERNET">
</uses-permission>

Agora vá até o arquivo XML de layout layout\activity_main.xml e modifique-o para a versão abaixo:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:padding="16dp"
  android:orientation="vertical"
  tools:context="com.example.requisicaohttpsimples.MainActivity">

  <TextView
    android:id="@+id/txt_data_hora"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Data e hora do servidor remoto."/>

  <Button
    android:id="@+id/obter_data_hora"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="20dp"
    android:onClick="obterDataHora"
    android:text="@string/obter_data_hora" />
</LinearLayout>

Neste layout temos um elemento <TextView> que será usado para exibir a resposta da página PHP e um elemento <Button> com um evento obterDataHora para o seu atributo onClick.

Já temos tudo. Veja a seguir o código completo para a MainActivity.java:

package com.example.requisicaohttpsimples;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;

public class MainActivity extends AppCompatActivity {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
  }

  // método usado para efetuar uma chamada a uma página PHP
  // e obter a data e hora no servidor remtoo
  public void obterDataHora(View view) {
    // A data e a hora será exibida neste TextView
    final TextView textView = (TextView) findViewById(R.id.txt_data_hora);

    // Vamos criar uma instância da classe RequestQueue do Volley.
    RequestQueue fila = Volley.newRequestQueue(this);

    // endereço da página PHP
    String url = "https://www.arquivodecodigos.com.br/obter_data_hora.php";

    // Vamos fazer a requisição para a URL indicada
    StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
      new Response.Listener<String>() {
        @Override
        public void onResponse(String resposta) {
          // Obtemos o texto de resposta do servidor
          textView.setText("Resposta do servidor: "+ resposta);
        }
      }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError erro) {
          textView.setText("Parece que houve um erro na resposta.");
        }
      }
    );

    // Vamos adicionar esta requisição no RequestQueue
    fila.add(stringRequest);
  }
}


E finalmente o código para a página PHP, hospedada em nosso site:

<?
  header("Content-type: text/html; charset=iso-8859-1");
  $data_hora = "Hoje é " . date("d") . "/" . date("m") . "/" . 
    date("Y") . " - " . date("H") . ":" . date("i") . ":" . date("s");
  echo $data_hora;
?>

Experimente executar a aplicação Android, clique no botão "Obter Data e Hora" e veja o resultado.

Link para compartilhar na Internet ou com seus amigos:

Veja mais Dicas e truques de Android Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 59 usuários muito felizes estudando em nosso site.