> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-docs-event-stream-action-templates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Auth0.Android

> Apprendre comment installer, initialiser et utiliser Auth0.Android

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

Consultez le [référentiel Auth0.Android](https://github.com/auth0/Auth0.Android) sur GitHub.

## Exigences

L’API Android version 21 ou plus récente est requise.

## Installation

Ajoutez la trousse SDK à votre projet. La bibliothèque adressera des demandes aux Authentication et <Tooltip href="/docs/fr-ca/glossary?term=management-api" tip="Management API
Un produit permettant aux clients d’effectuer des tâches administratives." cta="Voir le glossaire">Management API</Tooltip> d’Auth0.

### Ajouter Auth0 à Gradle

In your app’s `build.gradle` dependencies section, add the following:

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

Si Android Studio signale une erreur sur le signe `+`, ou si vous souhaitez utiliser une version fixe, vérifiez la dernière version sur [Maven](http://search.maven.org/#search%7Cga%7C1%7Ca%3A%22auth0%22%20g%3A%22com.auth0.android%22) ou [JCenter](https://bintray.com/auth0/android/auth0).

<Card title="Synchroniser le projet avec Gradle">
  Souvenez-vous de synchroniser en utilisant l’invite d’Android Studio ou en exécutant `./gradlew clean build` à partir de la ligne de commande. Pour en savoir plus à propos de l’utilisation de Gradle, consultez [leur documentation officielle](https://tools.android.com/tech-docs/new-build-system/user-guide).
</Card>

Dans la section `android`, ciblez le code Java 8+ pour les plugiciels Android et Kotlin respectivement.

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

### Autorisations

Open your application’s `AndroidManifest.xml` file and add the following permission.

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

## Configurer pour la connexion universelle

Accédez d’abord à [Dashboard > Applications](https://manage.auth0.com/#/applications) et cliquez sur le nom de l’application à modifier. Dans le champ **URL de rappel autorisées**, assurez-vous que votre URL suit ce format :
`https://YOUR_DOMAIN/android/{YOUR_APP_PACKAGE_NAME}/callback`

Next, replace `{YOUR_APP_PACKAGE_NAME}` with your actual application’s package name. You can find this in your `app/build.gradle` file as the `applicationId` value.

Ensuite, dans le fichier `app/build.gradle` de votre application, ajoutez les [paramètres fictifs manifestes](https://developer.android.com/studio/build/manifest-build-variables.html) pour les propriétés Auth0 Domain et Auth0 Scheme. La bibliothèque les utilisera pour enregistrer un élément intent-filter qui capture l’URI de rappel.

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

  Veuillez [lire la FAQ](https://github.com/auth0/Auth0.Android/tree/master#is-the-web-authentication-module-setup-optional) pour plus d’informations.
</Callout>

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

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

        //---> Add the next line
        manifestPlaceholders = [auth0Domain: "@string/com_auth0_domain", auth0Scheme: "https"]
        //<---
    }
    //...
}
```

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Nous recommandons de définir des ressources réutilisables, telles que `@string/com_auth0_domain` plutôt que de les coder en dur.
</Callout>

## Initialiser Auth0

Créez un nouvel objet `Auth0` en utilisant votre ID client Auth0 et votre valeur de domaine. Les objets l’utiliseront ultérieurement lors de l’interaction avec les points de terminaison d’Auth0.

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

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

## Prochaines étapes

[Connectez les utilisateurs à votre application et déconnectez-les](/docs/fr-ca/libraries/auth0-android/auth0-android-login-logout-and-user-profiles) à l’aide de la classe `WebAuthProvider`.

### Réinitialiser le mot de passe de l’utilisateur

To initiate a password reset for a user, call `resetPassword` with the user’s email address and the database connection name as parameters.

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

## En savoir plus

* [Connexion et déconnexion et profils utilisateurs Auth0.Android](/docs/fr-ca/libraries/auth0-android/auth0-android-login-logout-and-user-profiles)
* [Options de configuration Auth0.Android](/docs/fr-ca/libraries/auth0-android/auth0-android-configuration)
* [Auth0.Android – Authentification par base de données](/docs/fr-ca/auth0-android-database-authentication)
* [Authentification sans mot de passe Auth0.Android](/docs/fr-ca/auth0-android-passwordless)
* [Enregistrement Auth0.Android et renouvellement des jetons](/docs/fr-ca/auth0-android-save-and-renew-tokens)
* [Auth0.Android: User Management](/docs/fr-ca/auth0-android-user-management)
