> ## 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.

> Autenticación sin contraseña con Magic Link con Lock.Android

# Lock.Android: autenticación sin contraseña con Magic Link

Para evitar pedirle al usuario que introduzca la contraseña de un solo uso enviada para la autenticación <Tooltip tip="Sin contraseña: Forma de autenticación que no se basa en una contraseña como primer factor." cta="Ver glosario" href="/es/docs/glossary?term=passwordless">sin contraseña</Tooltip> en aplicaciones Android, incorporamos la posibilidad de enviar un enlace que el usuario puede tocar para iniciar sesión sin tener que introducir nada manualmente.

Estos enlaces incluyen el mismo **code** que se usaría en el flujo tradicional sin contraseña, pero, con la configuración correcta, se abrirán directamente en su aplicación.

<div id="auth0-dashboard-configuration">
  ## Configuración en Auth0 Dashboard
</div>

Ve a la [configuración de tu aplicación](https://manage.auth0.com/#/applications/\{yourClientId}/settings) y haz clic en **Show Advanced Settings** al final de la página. Luego, en la pestaña "Device Settings", deberás proporcionar tanto el nombre del paquete de la aplicación de Android como el hash de clave del certificado.

* **Nombre del paquete de la aplicación**: Este es el nombre del paquete, tal como se declara en el manifiesto de la aplicación. También está disponible en el archivo `app/build.gradle` como el atributo `applicationId`. Si ambos valores no coinciden, usa el de `applicationId`. Un ejemplo sería `com.example.android.myapp`
* **Hashes de clave**: Son las huellas digitales SHA256 de los certificados de firma de la aplicación Android. Puedes incluir varias separándolas con comas. Aquí puedes especificar tanto las huellas digitales del almacén de claves de producción como las del de depuración. En la siguiente sección se explica cómo obtenerlas. Un ejemplo sería `DE:1A:5B:75:27:AA:48:D5:A6:72:2F:76:43:95:9B:79:C6:86:1A:5B:75:27:AA:48:D5:A6:73:FE`.

Después de establecer los valores, asegúrate de hacer clic en **Save Changes**.

<div id="getting-your-signing-certificates-fingerprint">
  ### Cómo obtener la huella digital de sus certificados de firma
</div>

Use el siguiente comando para generar la huella digital con la CLI `keytool` de Java:

`keytool -list -v -keystore my-release-key.keystore`

o bien obtenga la clave de depuración predeterminada:

`keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android`

El valor que requiere el Dashboard es el que aparece como "SHA256". Puede obtener más información sobre los keystores en este [artículo oficial](https://developer.android.com/studio/publish/app-signing).

<div id="enable-the-email-connection">
  ### Habilita la conexión de correo electrónico
</div>

La autenticación sin contraseña con Magic Link solo funciona con la conexión sin contraseña de tipo "email". Ve a Dashboard > [Authentication](https://manage.auth0.com/#/applications/authentication) para las conexiones sin contraseña y haz clic en **Email**. Se abrirá una ventana emergente y la plantilla de correo electrónico HTML + Liquid quedará habilitada para su edición. Verifica que el cuerpo contenga una condición como esta:

```liquid lines theme={null}
{% if send == 'link' or send == 'link_ios' or send == 'link_android' %}
Your verification link is: {{ link }}
{% elsif send == 'code' %}
Your verification code is: {{ code }}
{% endif %}
```

<div id="configuring-the-sdk">
  ## Configuración del SDK
</div>

Ahora que la aplicación de Auth0 está configurada, siga las instrucciones para configurar PasswordlessLock con `Lock.Android`, como se muestra en la [documentación de Passwordless](/es/docs/libraries/lock-android/lock-android-passwordless).

<div id="sdk-usage">
  ### Uso del SDK
</div>

Lock Passwordless autentica a los usuarios enviándoles un correo electrónico con una contraseña de un solo uso que, en este caso, será un ENLACE en lugar de un code. Si has seguido la guía de Passwordless Classic, solo tienes que quitar la llamada a `useCode()` y reemplazarla por `useLink()`.

Por último, inicia el widget `PasswordlessLock` desde tu actividad.

```kotlin lines theme={null}
startActivity(lock.newIntent(this))
```

Después de solicitar el LINK, la siguiente pantalla indicará que, para iniciar sesión, el usuario debe tocarlo. En caso de que esto no sea posible, el usuario aún puede introducir el code que aparecerá después de hacer clic en el enlace del correo electrónico recibido.

<div id="optional-use-android-app-links">
  ## Opcional: usar Android App Links
</div>

La biblioteca Lock está lista para usarse con App Links. Esta función está disponible en Android 6.0 (nivel de API 23) y versiones posteriores, y permite que una aplicación se designe como el controlador predeterminado para un determinado tipo de enlace, sin mostrar el cuadro de diálogo de desambiguación que le pregunta al usuario si desea usar el navegador o la aplicación para abrir el enlace.

Esto funciona siempre que el usuario no haya elegido ya una aplicación predeterminada para gestionar ese patrón de URI en la configuración del dispositivo Android.

La gestión automática de enlaces requiere la cooperación entre su aplicación y el sitio web de Auth0. La aplicación debe declarar la asociación con el sitio web y solicitar que el sistema la verifique. A su vez, el sitio web debe proporcionar esa verificación publicando un archivo de [Digital Asset Links](https://developers.google.com/digital-asset-links/).

Auth0 generará automáticamente el archivo de [Digital Asset Links](https://developers.google.com/digital-asset-links/) cuando configure el nombre del paquete de la aplicación y el hash de la clave como se mostró anteriormente. Si ha seguido todos los pasos de este artículo, el archivo debería estar disponible y se verificará la próxima vez que se instale la aplicación de Android.

Puede encontrar más información sobre App Links en la [documentación de Android](https://developer.android.com/training/app-links/index.html).
