¿Cómo usar la biblioteca de redes rápidas de Android en Android con un ejemplo?

En Android, conocemos múltiples bibliotecas de redes como Retrofit, Volley. Usamos estas bibliotecas específicamente para realizar requests de red, como realizar acciones en la API. Pero además de eso, hay otra biblioteca llamada Fast Networking Library que tiene algunas ventajas sobre otras bibliotecas. En este tutorial, nos centraremos específicamente en aprender sobre esta biblioteca. Estaremos haciendo lo siguiente.

  • Primeros pasos con la biblioteca de redes rápidas
  • Hacer una solicitud GET simple 

Implementación paso a paso

Paso 1: Crear un nuevo proyecto

Para crear un nuevo proyecto en Android Studio, consulte Cómo crear/iniciar un nuevo proyecto en Android Studio . Tenga en cuenta que seleccione Java como lenguaje de programación.

Paso 2: Agregar dependencias

Copie la siguiente dependencia y péguela en su archivo  build.gradle de nivel de aplicación.

implementación ‘com.amitshekhar.android:android-networking:1.0.2

Paso 3: Agregar permiso de Internet en el archivo de manifiesto

Asegúrese de agregar la siguiente línea de código en el archivo de manifiesto de Android. lo que le dará acceso al uso de Internet; de lo contrario, la aplicación se bloqueará.

<usos-permiso android:name=”android.permission.INTERNET” />

Paso 4: agregar TextView en activity_main.xml

Para probar el funcionamiento de nuestro código de biblioteca de redes rápidas, necesitaremos agregar un texto y cambiar su texto para asegurarnos de que obtuvimos una respuesta exitosa o si obtuvimos un error. Entonces, el código para el archivo activity_main.xml es el siguiente

XML

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
  
    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Testing"
        android:textSize="30sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
  
</androidx.constraintlayout.widget.ConstraintLayout>

Paso 5: inicialización de la clase de red de Android

Primero, tenemos que inicializar la clase de red de Android antes de poder usarla. Se puede hacer agregando una sola línea en MainActivity de la siguiente manera

AndroidNetworking.initialize(getApplicationContext());

Paso 6: Realizar una solicitud de obtención

Intentaremos obtener datos de una API REST . El enlace para la API que usaremos se proporciona a continuación.

https://meme-api.herokuapp.com/dame

Agregue el siguiente código en MainActivity que en realidad hará una solicitud GET en la API

AndroidNetworking.get("https://meme-api.herokuapp.com/gimme")
                .build()
                .getAsJSONObject(new JSONObjectRequestListener() {
                    @Override
                    public void onResponse(JSONObject response) {
                        textView.setText("Response Successful");
                    }

                    @Override
                    public void onError(ANError anError) {
                        textView.setText("Response Failure");
                    }
                });

Paso 7: trabajar con MainActivity.java

Después de realizar todos los pasos anteriores, nuestro código en MainActivity se verá como el código a continuación. También puede copiar directamente el siguiente código y pegarlo en su archivo MainActivity.

Java

package com.example.gfgfastnetworkinglib;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.androidnetworking.AndroidNetworking;
import com.androidnetworking.error.ANError;
import com.androidnetworking.interfaces.JSONObjectRequestListener;
import org.json.JSONObject;
  
public class MainActivity extends AppCompatActivity {
  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
  
        // Defining TextView which we made in XML
        TextView textView = findViewById(R.id.textView);
  
        // Initializing Android Networking
        AndroidNetworking.initialize(getApplicationContext());
          
        // Actually making the GET request
        AndroidNetworking.get("https://meme-api.herokuapp.com/gimme")
                .build()
                .getAsJSONObject(new JSONObjectRequestListener() {
                    @Override
                    public void onResponse(JSONObject response) {
                        // Text will show success if Response is success
                        textView.setText("Response Successful");
                    }
  
                    @Override
                    public void onError(ANError anError) {
                        // Text will show failure if Response is failure
                        textView.setText("Response Failure");
                    }
                });
    }
}

Explicación del código anterior:

Tenemos que pasar el enlace API dentro del método get() de AndroidNetworking como puede ver en el código anterior. A medida que avanzamos, tenemos dos métodos anulados onResponse y onError. Cualquiera de los dos métodos obtendrá de acuerdo con la respuesta que obtengamos de la API. 

Si la respuesta es exitosa, se llamará al método onResponse y, por lo tanto, el texto se establecerá en Respuesta exitosa. Si obtenemos una respuesta fallida de la API, se llamará al método onError, por lo que se ejecutará el código que contiene y el texto se establecerá en Respuesta fallida. Es posible que obtengamos una respuesta de falla debido a algún problema con Internet o algunos problemas de seguridad con la API.

Producción:

Como podemos ver claramente, la salida muestra Respuesta exitosa, lo que significa que nuestra solicitud GET usando Fast Networking es exitosa. Si se hubiera producido algún problema, en la salida veríamos un error de respuesta.

Publicación traducida automáticamente

Artículo escrito por shekharshinde9990 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *