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

> Découvrez comment installer, initialiser et utiliser Auth0.Android

# Auth0.Android

Auth0.Android est une bibliothèque côté client que vous pouvez utiliser dans votre application Android pour authentifier les utilisateurs et accéder aux [API Auth0](/fr-CA/docs/api).

Consultez le [dépôt Auth0.Android](https://github.com/auth0/Auth0.Android) sur GitHub.

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

Android API version 21 ou une version ultérieure est requise.

<div id="installation">
  ## Installation
</div>

Ajoutez le SDK à votre projet. La bibliothèque enverra des requêtes aux API Authentication et Management d’Auth0.

<div id="add-auth0-to-gradle">
  ### Ajouter Auth0 à Gradle
</div>

Dans la section des dépendances du fichier `build.gradle` de votre application, ajoutez ce qui suit :

```kotlin lines theme={null}
dependencies {
  // Ajouter le SDK Auth0 Android
  implementation 'com.auth0.android:auth0:2.+'
}
```

Si Android Studio signale une erreur sur le signe `+`, ou si vous voulez utiliser une version fixe, consultez la plus récente dans [Maven](https://central.sonatype.com/artifact/com.auth0.android/auth0).

<Card title="Synchroniser le projet avec Gradle">
  N’oubliez pas de synchroniser le projet à l’aide de l’invite d’Android Studio ou d’exécuter `./gradlew clean build` à partir de la ligne de commande.
</Card>

Dans la section `android`, ciblez le bytecode Java 8 pour les plugins Android et Kotlin, respectivement.

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

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

Ouvrez le fichier `AndroidManifest.xml` de votre application et ajoutez l’autorisation suivante.

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

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

Tout d’abord, accédez à [Auth0 Dashboard > Applications](https://manage.auth0.com/#/applications) et cliquez sur le nom de l’application que vous souhaitez modifier. Dans **Allowed Callback URLs**, assurez-vous que votre URL respecte le format suivant :
`https://YOUR_DOMAIN/android/{YOUR_APP_PACKAGE_NAME}/callback`

Ensuite, remplacez `{YOUR_APP_PACKAGE_NAME}` par le nom de package réel de votre application. Vous le trouverez dans votre fichier `app/build.gradle`, comme valeur de `applicationId`.

Puis, dans votre fichier `app/build.gradle`, ajoutez les [espaces réservés du manifeste](https://developer.android.com/build/manage-manifests) pour les propriétés Domaine Auth0 et Schéma Auth0, que la bibliothèque utilisera pour enregistrer un filtre d’intention qui intercepte l’URI de callback.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Si vous ne prévoyez pas utiliser la fonctionnalité Web Authentication et que vous ne déclarez pas les espaces réservés du manifeste, vous pouvez redéclarer manuellement l’activité dans le fichier manifeste de votre application Android afin de la retirer du fichier manifeste fusionné. Cela empêchera Gradle de signaler que les espaces réservés du manifeste sont manquants.

  Veuillez [consulter la FAQ](https://github.com/auth0/auth0.android/blob/main/FAQ.md) pour en savoir plus.
</Callout>

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

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

        //---> Ajouter la ligne suivante
        manifestPlaceholders = [auth0Domain: "@string/com_auth0_domain", auth0Scheme: "https"]
        //<---
    }
    //...
}
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Il est recommandé de définir des ressources réutilisables comme `@string/com_auth0_domain` au lieu de les coder en dur.
</Callout>

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

Créez un nouvel objet `Auth0` à l’aide de votre <Tooltip tip="ID client : valeur d’identification attribuée par Auth0 à votre ressource enregistrée." cta="Voir le glossaire" href="/fr-CA/docs/glossary?term=client+ID">ID client</Tooltip> Auth0 et de votre domaine. Cet objet sera ensuite utilisé pour interagir avec les points de terminaison d’Auth0.

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

Vous pouvez aussi initialiser cet objet à l’aide d’un objet Context d’Android, comme illustré dans [cet exemple d’utilisation](https://github.com/auth0/Auth0.Android/tree/master#usage).

<div id="next-steps">
  ## Prochaines étapes
</div>

[Permettez aux utilisateurs d’ouvrir et de fermer une session dans votre application](/fr-CA/docs/libraries/auth0-android/auth0-android-login-logout-and-user-profiles) à l’aide de la classe `WebAuthProvider`.

<div id="reset-user-password">
  ### Réinitialiser le mot de passe d’un utilisateur
</div>

Pour lancer une réinitialisation du mot de passe pour un utilisateur, appelez `resetPassword` en fournissant l’adresse courriel de l’utilisateur et le nom de la connexion de base de données comme paramètres.

Les demandes de réinitialisation du mot de passe échouent en cas d’erreurs liées au réseau, mais elles n’échouent pas si le courriel indiqué n’existe pas dans la base de données (pour des raisons de sécurité).

<div id="learn-more">
  ## En savoir plus
</div>

* [Auth0.Android : connexion, déconnexion et profils utilisateur](/fr-CA/docs/libraries/auth0-android/auth0-android-login-logout-and-user-profiles)
* [Options de configuration d’Auth0.Android](/fr-CA/docs/libraries/auth0-android/auth0-android-configuration)
* [Authentification par base de données avec Auth0.Android](/fr-CA/docs/libraries/auth0-android/auth0-android-database-authentication)
* [Authentification Passwordless avec Auth0.Android](/fr-CA/docs/libraries/auth0-android/auth0-android-passwordless)
* [Auth0.Android : gestion des utilisateurs](/fr-CA/docs/libraries/auth0-android/auth0-android-user-management)
