Configuration de la bibliothèque Support

Remarque:Avec la sortie d'Android 9.0 (niveau d'API 28), une nouvelle version de la bibliothèque d'assistance appelée AndroidX est disponible, et fait partie de Jetpack. La bibliothèque AndroidX contient la bibliothèque d'assistance existante et inclut également les derniers composants Jetpack.

Vous pouvez continuer à utiliser la bibliothèque d'assistance. Les artefacts historiques (versions 27 et antérieures, et empaquetés sous la forme android.support.*) resteront disponibles sur Google Maven. Toutefois, tout nouveau développement de bibliothèque se fera dans la bibliothèque AndroidX.

Nous vous recommandons d'utiliser les bibliothèques AndroidX dans tous les nouveaux projets. Vous devriez également envisager de migrer des projets existants vers AndroidX.

La façon dont vous configurez les bibliothèques Android Support dans votre projet de développement dépend des fonctionnalités que vous souhaitez utiliser et de la gamme de versions de la plate-forme Android que vous souhaitez prendre en charge avec votre application.

Ce document vous explique comment télécharger le package de la bibliothèque Support et ajouter des bibliothèques à votre environnement de développement.

Les bibliothèques Support sont désormais disponibles via le dépôt Maven de Google. Il n'est plus possible de télécharger les bibliothèques via SDK Manager et cette fonctionnalité sera bientôt supprimée.

Choisir des bibliothèques Support

Avant d'ajouter une bibliothèque d'assistance à votre application, décidez des fonctionnalités que vous souhaitez inclure et des versions d'Android les plus anciennes que vous souhaitez prendre en charge. Pour en savoir plus sur les fonctionnalités fournies par les différentes bibliothèques, consultez la page Fonctionnalités de la bibliothèque Support.

Ajouter des bibliothèques Support

Pour utiliser une bibliothèque Support, vous devez modifier les dépendances de chemin de classe du projet de votre application dans votre environnement de développement. Vous devez effectuer cette procédure pour chaque bibliothèque Support que vous souhaitez utiliser.

Pour ajouter une bibliothèque de compatibilité à votre projet d'application:

  1. Incluez le dépôt Maven de Google dans le fichier settings.gradle de votre projet.
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
    
            // If you're using a version of Gradle lower than 4.1, you must
            // instead use:
            //
            // maven {
            //     url 'https://maven.google.com'
            // }
        }
    }
  2. Pour chaque module dans lequel vous souhaitez utiliser une bibliothèque Support, ajoutez-la dans le bloc dependencies du fichier build.gradle du module. Par exemple, pour ajouter la bibliothèque Core-utils v4, ajoutez les éléments suivants:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }

Attention:L'utilisation de dépendances dynamiques (par exemple, palette-v7:23.0.+) peut entraîner des mises à jour de version inattendues et des incompatibilités de régression. Nous vous recommandons de spécifier explicitement une version de la bibliothèque (par exemple, palette-v7:28.0.0).

Utiliser les API de la bibliothèque Support

Les classes de la bibliothèque Support qui prennent en charge les API de framework existantes portent généralement le même nom que la classe de framework, mais se trouvent dans les packages de classe android.support ou comportent un suffixe *Compat.

Attention:Lorsque vous utilisez des classes de la bibliothèque Support, veillez à les importer à partir du package approprié. Par exemple, lorsque vous appliquez la classe ActionBar:

  • android.support.v7.app.ActionBar lorsque vous utilisez la bibliothèque Support.
  • android.app.ActionBar lorsque vous développez uniquement pour le niveau d'API 11 ou version ultérieure.

Remarque:Après avoir inclus la bibliothèque d'assistance dans votre projet d'application, nous vous recommandons vivement de réduire, d'obscurcir et d'optimiser votre application avant de la publier. En plus de protéger votre code source par obscurcissement, le rétrécissement supprime les classes inutilisées de toutes les bibliothèques que vous incluez dans votre application, ce qui réduit la taille de téléchargement de votre application au minimum.

Pour en savoir plus sur l'utilisation de certaines fonctionnalités de la bibliothèque Support, consultez les cours de formation, les guides et les exemples destinés aux développeurs Android. Pour en savoir plus sur les classes et les méthodes de la bibliothèque Support, consultez les packages android.support dans la documentation de référence de l'API.

Modifications apportées à la déclaration du fichier manifeste

Si vous augmentez la rétrocompatibilité de votre application existante vers une version antérieure de l'API Android avec la bibliothèque Support, veillez à mettre à jour le fichier manifeste de votre application. Plus précisément, mettez à jour l'élément android:minSdkVersion de la balise <uses-sdk> dans le fichier manifeste avec le nouveau numéro de version inférieur, comme indiqué ci-dessous:

  <uses-sdk
      android:minSdkVersion="14"
      android:targetSdkVersion="23" />

Le paramètre du fichier manifeste indique à Google Play que votre application peut être installée sur des appareils équipés d'Android 4.0 (niveau d'API 14) ou version ultérieure.

Si vous utilisez des fichiers de compilation Gradle, le paramètre minSdkVersion du fichier de compilation remplace les paramètres du fichier manifeste.

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        minSdkVersion 16
        ...
    }
    ...
}

Dans ce cas, le paramètre du fichier de compilation indique à Google Play que la variante de compilation par défaut de votre application peut être installée sur les appareils équipés d'Android 4.1 (niveau d'API 16) ou version ultérieure. Pour en savoir plus sur les variantes de compilation, consultez la section Présentation du système de compilation.

Remarque:Si vous incluez plusieurs bibliothèques d'assistance, la version minimale du SDK doit être la version la plus élevée requise par l'une des bibliothèques spécifiées. Par exemple, si votre application inclut à la fois la bibliothèque de compatibilité avec les préférences v14 et la bibliothèque Leanback v17, la version minimale du SDK doit être 17 ou ultérieure.