> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Aprenda a instalar, inicializar y usar Auth0.Android

# Auth0.Android

Auth0.Android es una biblioteca del lado del cliente que puede usar con su aplicación de Android para autenticar a los usuarios y acceder a las [API de Auth0](/es/docs/api).

Consulte el [repositorio de Auth0.Android](https://github.com/auth0/Auth0.Android) en GitHub.

<div id="requirements">
  ## Requisitos
</div>

Se requiere Android API versión 21 o una posterior.

<div id="installation">
  ## Instalación
</div>

Añade el SDK a tu proyecto. La biblioteca enviará solicitudes a las API Authentication y Management de Auth0.

<div id="add-auth0-to-gradle">
  ### Agrega Auth0 a Gradle
</div>

En la sección de dependencias de `build.gradle` de tu aplicación, agrega lo siguiente:

```kotlin lines theme={null}
dependencies {
  // Agrega el SDK de Auth0 para Android
  implementation 'com.auth0.android:auth0:2.+'
}
```

Si Android Studio marca el signo `+`, o si quiere usar una versión fija, consulte la más reciente en [Maven](https://central.sonatype.com/artifact/com.auth0.android/auth0).

<Card title="Sincronice el proyecto con Gradle">
  Recuerde sincronizarlo desde el aviso de Android Studio o ejecutar `./gradlew clean build` desde la línea de comandos.
</Card>

En la sección `android`, configure Java 8 como bytecode de destino para los plugins de Android y Kotlin, respectivamente.

```kotlin lines theme={null}
android {
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
  kotlinOptions {
    jvmTarget = '1.8'
  }
}
```

<div id="permissions">
  ### Permisos
</div>

Abra el archivo `AndroidManifest.xml` de su aplicación y añada el siguiente permiso.

```text lines theme={null}
<uses-permission android:name="android.permission.INTERNET" />
```

<div id="configure-for-universal-login">
  ## Configurar para Universal Login
</div>

Primero, vaya a [Dashboard > Applications](https://manage.auth0.com/#/applications) y haga clic en el nombre de la aplicación que quiera editar. En **Allowed Callback URLs**, asegúrese de que la URL siga este formato:
`https://YOUR_DOMAIN/android/{YOUR_APP_PACKAGE_NAME}/callback`

A continuación, reemplace `{YOUR_APP_PACKAGE_NAME}` por el nombre real del paquete de su aplicación. Puede encontrarlo en el archivo `app/build.gradle` como el valor de `applicationId`.

Luego, en el archivo `app/build.gradle`, agregue los [marcadores de posición del manifiesto](https://developer.android.com/build/manage-manifests) para las propiedades dominio de Auth0 y Auth0 Scheme, que la biblioteca usará para registrar un intent-filter que capture el URI de callback.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Si no planea usar la funcionalidad de autenticación web ni declarar los marcadores de posición del manifiesto, puede volver a declarar manualmente la actividad en el archivo de manifiesto de su aplicación Android para quitarla del manifiesto combinado. Esto evitará que Gradle se queje de que faltan los marcadores de posición del manifiesto.

  Consulte las [preguntas frecuentes](https://github.com/auth0/auth0.android/blob/main/FAQ.md) para obtener más información.
</Callout>

```kotlin lines theme={null}
apply plugin: 'com.android.application'

android {
    compileSdkVersion 30
    defaultConfig {
        applicationId "com.auth0.samples"
        minSdkVersion 21
        targetSdkVersion 30
        //...

        //---> Agrega la siguiente línea
        manifestPlaceholders = [auth0Domain: "@string/com_auth0_domain", auth0Scheme: "https"]
        //<---
    }
    //...
}
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Es una buena práctica definir recursos reutilizables como `@string/com_auth0_domain` en lugar de incluirlos directamente en el código.
</Callout>

<div id="initialize-auth0">
  ## Inicializar Auth0
</div>

Cree un nuevo objeto `Auth0` con su <Tooltip tip="ID de cliente: valor de identificación asignado por Auth0 a su recurso registrado." cta="Ver glosario" href="/es/docs/glossary?term=client+ID">ID de cliente</Tooltip> y el valor de dominio. Más adelante, los objetos lo usarán al interactuar con los endpoints de Auth0.

```kotlin lines theme={null}
val auth0 = Auth0("{yourClientId}", "YOUR_DOMAIN")
```

También puede inicializar este objeto con un Context de Android, como se muestra en [este ejemplo de uso](https://github.com/auth0/Auth0.Android/tree/master#usage).

<div id="next-steps">
  ## Próximos pasos
</div>

[Inicie y cierre la sesión de los usuarios en su aplicación](/es/docs/libraries/auth0-android/auth0-android-login-logout-and-user-profiles) usando la clase `WebAuthProvider`.

<div id="reset-user-password">
  ### Restablecer la contraseña de un usuario
</div>

Para iniciar el restablecimiento de la contraseña de un usuario, llama a `resetPassword` con el correo electrónico del usuario y el nombre de la conexión de base de datos como parámetros.

Las solicitudes de restablecimiento de contraseña fallarán si se producen errores de red, pero no fallarán si el correo electrónico indicado no existe en la base de datos (por motivos de seguridad).

<div id="learn-more">
  ## Más información
</div>

* [Inicio y cierre de sesión, y perfiles de usuario en Auth0.Android](/es/docs/libraries/auth0-android/auth0-android-login-logout-and-user-profiles)
* [Opciones de configuración de Auth0.Android](/es/docs/libraries/auth0-android/auth0-android-configuration)
* [Autenticación con base de datos en Auth0.Android](/es/docs/libraries/auth0-android/auth0-android-database-authentication)
* [Autenticación sin contraseña en Auth0.Android](/es/docs/libraries/auth0-android/auth0-android-passwordless)
* [Auth0.Android: Administración de usuarios](/es/docs/libraries/auth0-android/auth0-android-user-management)
