Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Annotation

  
Exposez des métadonnées qui aident les outils et les autres développeurs à comprendre le code de votre application.

Ce tableau liste tous les artefacts du groupe androidx.annotation.

Artefact Version stable Version finale Version bêta Version alpha
annotation 1.5.0 - - 1.6.0-alpha01
annotation-experimental 1.3.0 - - -
Dernière mise à jour de la bibliothèque : 11 janvier 2023

Déclarer des dépendances

Pour ajouter une dépendance à Annotation, vous devez ajouter le dépôt Maven Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.

Ajoutez les dépendances des artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou module :

Groovy

dependencies {
    implementation "androidx.annotation:annotation:1.5.0"
    // To use the Java-compatible @Experimental API annotation
    implementation "androidx.annotation:annotation-experimental:1.3.0"
}

Kotlin

dependencies {
    implementation("androidx.annotation:annotation:1.5.0")
    // To use the Java-compatible @Experimental API annotation
    implementation("androidx.annotation:annotation-experimental:1.3.0")
}

Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.

Commentaires

Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.

Signaler un problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

Version 1.6

Version 1.6.0-alpha01

11 janvier 2023

Publication de androidx.annotation:annotation-*:1.6.0-alpha01. Liste des commits de la version 1.6.0-alpha01

Nouvelles fonctionnalités

  • Ajout d'une annotation @RequiresExtension pour indiquer qu'une API nécessite une version particulière d'un SDK d'extension. (I5e4fe)
  • Conversion de la bibliothèque d'annotations afin de compiler avec la chaîne d'outils multiplatforme Kotlin (I3be8d)

Version 1.5.0

Version 1.5.0

21 septembre 2022

Publication de androidx.annotation:annotation:1.5.0. Liste des commits de la version 1.5.0

Changements importants depuis la version 1.4.0

  • La bibliothèque Annotation a été entièrement migrée vers des sources Kotlin. Elle est donc compatible avec les sites d'utilisation cible spécifiques à Kotlin et d'autres fonctionnalités d'annotation compatibles avec Kotlin.

Version 1.5.0-rc01

7 septembre 2022

Publication d'androidx.annotation:annotation:1.5.0-rc01. Liste des commits de la version 1.5.0-rc01

  • Aucune modification par rapport à la version bêta 1.5.0 précédente.

Version 1.5.0-beta01

24 août 2022

Publication d'androidx.annotation:annotation:1.5.0-beta01. Liste des commits de la version 1.5.0-beta01.

  • Aucune modification par rapport à la version précédente. La surface d'API est bloquée pour la version bêta.

Version 1.5.0-alpha02

10 août 2022

Publication d'androidx.annotation:annotation:1.5.0-alpha02. Liste des commits de la version 1.5.0-alpha02

  • Aucune modification depuis la dernière version alpha.

Version 1.5.0-alpha01

27 juillet 2022

Publication d'androidx.annotation:annotation:1.5.0-alpha01. Liste des commits de la version 1.5.0-alpha01

Nouvelles fonctionnalités

  • La bibliothèque Annotation a été entièrement migrée vers des sources Kotlin. Elle est donc compatible avec les sites d'utilisation cible spécifiques à Kotlin et d'autres fonctionnalités d'annotation compatibles avec Kotlin.

Version 1.4.0

Version 1.4.0

15 juin 2022

Publication d'androidx.annotation:annotation:1.4.0. Liste des commits de la version 1.4.0.

Changements importants depuis la version 1.3.0

  • @RestrictTo a été migré vers les sources Kotlin et est désormais compatible avec le site d'utilisation de @file. Par conséquent, la bibliothèque Annotation dépend désormais de la bibliothèque standard Kotlin.
  • @ReturnThis (b/140249763) : garantit que le remplacement des méthodes de cette méthode renvoie la même instance (destinée aux compilateurs, etc.).
  • @OpenForTesting (b/141539024) : les classes et méthodes Kotlin marquées "open" peuvent être annotées avec cette annotation, et lint fera en sorte que cette classe soit uniquement sous-classée (et que les méthodes ne soient remplacées uniquement) que lors des tests unitaires.
  • @DeprecatedSinceApi (b/37116481) : indique que la méthode (ou la classe, ou le champ) annoté(e) fait partie d'une bibliothèque de rétroportages pour une API de plate-forme, ce qui n'est plus nécessaire à partir du niveau d'API donné.
  • @EmptySuper : indique que cette méthode est définie comme vide. Vous n'avez donc pas besoin de l'appeler lors de son remplacement. Par ailleurs, vous ne devriez même pas l'appeler, car elle peut contenir une vérification de rétrocompatibilité, par exemple.

Version 1.4.0-rc01

1er juin 2022

Publication d'androidx.annotation:annotation:1.4.0-rc01. Liste des commits de la version 1.4.0-rc01.

  • Les fonctionnalités et la surface d'API ont été finalisées pour la publication.

Version 1.4.0-beta01

18 mai 2022

Publication d'androidx.annotation:annotation:1.4.0-beta01. Liste des commits de la version 1.4.0-beta01

  • Aucune modification depuis la dernière version alpha. La surface d'API a été verrouillée pour la version bêta.

Version 1.4.0-alpha02

9 février 2022

Publication d'androidx.annotation:annotation:1.4.0-alpha02. Liste des commits de la version 1.4.0-alpha02.

Nouvelles fonctionnalités

  • Ajout des annotations @ReturnThis, @OpenForTesting, @EmptySuper et @DeprecatedSinceApi. (21946a2)

  • @ReturnThis (b/140249763) : garantit que le remplacement des méthodes de cette méthode renvoie la même instance (destinée aux compilateurs, etc.).

  • @OpenForTesting (b/141539024) : les classes et méthodes Kotlin marquées "open" peuvent être annotées avec cette annotation, et lint fera en sorte que cette classe soit uniquement sous-classée (et que les méthodes ne soient remplacées uniquement) que lors des tests unitaires.

  • @DeprecatedSinceApi (b/37116481) : indique que la méthode (ou la classe, ou le champ) annoté(e) fait partie d'une bibliothèque de rétroportages pour une API de plate-forme, ce qui n'est plus nécessaire à partir du niveau d'API donné.

  • @EmptySuper : indique que cette méthode est définie comme vide. Vous n'avez donc pas besoin de l'appeler lors de son remplacement. Par ailleurs, vous ne devriez même pas l'appeler, car elle peut contenir une vérification de rétrocompatibilité, par exemple.

Version 1.4.0-alpha01

15 décembre 2021

Publication d'androidx.annotation:annotation:1.4.0-alpha01. Liste des commits de la version 1.4.0-alpha01

Modifications apportées à l'API

  • Migration des annotations RestrictTo vers des sources Kotlin (Ia6336)

Version 1.3.0

Version 1.3.0

3 novembre 2021

Publication d'androidx.annotation:annotation:1.3.0. Liste des commits de la version 1.3.0

Changements importants depuis la version 1.2.0

  • L'annotation @Discouraged permet de marquer des API qui ne peuvent pas être obsolètes, mais qui peuvent nuire aux performances et ne doivent pas être appelées dans le code de production normal.
  • L'annotation @Context permet de marquer des contextes génériques afin que les développeurs puissent migrer plus facilement vers de nouvelles API.
  • L'annotation @GravityInt permettant de marquer des éléments contenant des valeurs Gravity empaquetées sous forme d'entiers.
  • @InspectableProperty est désormais obsolète et remplacé par @Attribute pour androidx.resourceinspection.

Version 1.3.0-rc01

27 octobre 2021

Publication d'androidx.annotation:annotation:1.3.0-rc01. Liste des commits de la version 1.3.0-rc01

Version 1.3.0-beta01

29 septembre 2021

Publication d'androidx.annotation:annotation:1.3.0-beta01. Liste des commits de la version 1.3.0-beta01

Modifications apportées à l'API

  • Exiger une explication dans "message" pour @Discouraged. (I3390f)
  • Ajout de l'annotation @Discouraged pour marquer les éléments déconseillés. (Ib2549)
  • L'annotation RestrictedTo devient visible à partir de la fenêtre pop-up Studio (Ie8e1a, b/183134648).

Correction de bugs

  • Ajout d'une annotation de contexte pour marquer des contextes génériques afin que les développeurs puissent migrer plus facilement vers de nouvelles API. (Ie581a)

Version 1.3.0-alpha01

24 mars 2021

Publication d'androidx.annotation:annotation:1.3.0-alpha01. Liste des commits de la version 1.3.0-alpha01

Modifications apportées à l'API

  • @InspectableProperty est désormais obsolète et remplacé par @Attribute dans androidx.resourceinspection. (Ic0eff)
  • L'annotation @GravityInt permettant de marquer des éléments contenant des valeurs Gravity empaquetées sous forme d'entiers. (Ifcaa4, b/180620048)

Annotation-Experimental version 1.3.0

Version 1.3.0

7 septembre 2022

Publication d'androidx.annotation:annotation-experimental:1.3.0. Liste des commits de la version 1.3.0

Changements importants depuis la version 1.2.0

  • Possibilité d'utiliser @androidx.annotation.OptIn au niveau du package (I24d58).
  • Déplacement de la dépendance de Kotlin stdlib vers le type API, plutôt que vers le fichier compilé uniquement. Cela signifie que tous les clients de la bibliothèque Annotation-expérimental vont inclure la bibliothèque standard Kotlin dans leurs dépendances transitives.

Version 1.3.0-rc01

24 août 2022

Publication d'androidx.annotation:annotation-experimental:1.3.0-rc01. Liste des commits de la version 1.3.0-rc01

  • La taille des mises à jour dépend de la version précédente. L'implémentation a été bloquée pour la RC.

Version 1.3.0-beta01

10 août 2022

Publication d'androidx.annotation:annotation-experimental:1.3.0-beta01. Liste des commits de la version 1.3.0-beta01

  • Aucune modification par rapport à la version alpha. Cette bibliothèque a été stabilisée pour la version bêta.

Version 1.3.0-alpha01

27 juillet 2022

Publication d'androidx.annotation:annotation-experimental:1.3.0-alpha01. Liste des commits de la version 1.3.0-alpha01

Modifications apportées à l'API

  • Possibilité d'utiliser @androidx.annotation.OptIn au niveau du package (I24d58).

Annotation-Experimental version 1.2.0

Version 1.2.0

15 décembre 2021

Publication d'androidx.annotation:annotation-experimental:1.2.0. Liste des commits de la version 1.2.0

Changements importants depuis la version 1.1.0

La bibliothèque cible désormais le langage Java 8.

Version 1.2.0-rc01

1er décembre 2021

Publication d'androidx.annotation:annotation-experimental:1.2.0-rc01. Liste des commits de la version 1.2.0-rc01

Aucune modification par rapport à la version bêta.

Version 1.2.0-beta01

17 novembre 2021

Publication d'androidx.annotation:annotation-experimental:1.2.0-beta01. Liste des commits de la version 1.2.0-beta01

Modifications apportées à l'API

Les API ont été finalisées pour la version bêta.

Annotation-Experimental version 1.2.0-alpha01

30 juin 2021

Publication d'androidx.annotation:annotation-experimental:1.2.0-alpha01. Liste des commits de la version 1.2.0-alpha01.

Nouvelles fonctionnalités

  • La bibliothèque cible désormais le langage Java 8.

Version 1.2.0

Version 1.2.0

24 mars 2021

Publication d'androidx.annotation:annotation:1.2.0. Liste des commits de la version 1.2.0

Principales modifications depuis la version 1.1.0

  • Ajout de l'annotation @ChecksSdkIntAtLeast, qui permet d'identifier les méthodes ou les champs utilisés pour contrôler l'accès au niveau du SDK et de se conformer à la vérification lint NewApi.
  • Ajout de l'annotation @DoNotInline, qui est associée à une règle ProGuard permettant d'empêcher les membres d'être intégrés lors de l'optimisation.
  • Différentes annotations sont désormais annotées avec @Documented pour garantir qu'elles s'affichent dans la documentation pour les membres annotés.

Version 1.2.0-rc01

24 février 2021

Publication d'androidx.annotation:annotation:1.2.0-rc01. Liste des commits de la version 1.2.0-rc01

Version 1.2.0-beta01

13 janvier 2021

Publication d'androidx.annotation:annotation:1.2.0-beta01. Liste des commits de la version 1.2.0-beta01

Modifications apportées à l'API

  • Nouvelle annotation @DoNotInline qui indique aux optimiseurs de code (p. ex. ProGuard, R8) de ne pas aligner la méthode annotée. (I3dfe8, b/141326133)

Version 1.2.0-alpha01

14 mai 2020

Publication d'androidx.annotation:annotation:1.2.0-alpha01. Liste des commits de la version 1.2.0-alpha01.

Nouvelles fonctionnalités

  • Ajout de l'annotation @ChecksSdkIntAtLeast. Android et les utilisateurs peuvent alors annoter des méthodes et des champs qui représentent une vérification SDK_INT. (I89a54, b/120255046)

Annotation-Experimental version 1.1.0

Version 1.1.0

7 avril 2021

Publication d'androidx.annotation:annotation-experimental:1.1.0. Liste des commits de la version 1.1.0.

Principales modifications depuis la version 1.0.0

  • Les annotations expérimentales de Jetpack ont été réécrites en Kotlin pour prendre en charge plusieurs classes de repères et améliorer les cas de fin de pris en charge.
  • Les annotations RequiresOptIn et OptIn ont été ajoutées pour s'aligner avec Kotlin, et les annotations Experimental et UsesExperimental sont désormais obsolètes.

Version 1.1.0-rc02

24 mars 2021

Publication d'androidx.annotation:annotation-experimental:1.1.0-rc02. Liste des commits de la version 1.1.0-rc02

Correction de bugs

  • Ajout de règles ProGuard pour garantir que l'optimisation du code n'avertit pas l'absence de méta-annotations Kotlin manquantes.

Version 1.1.0-rc01

10 mars 2021

Publication d'androidx.annotation:annotation-experimental:1.1.0-rc01. Liste des commits de la version 1.1.0-rc01

Aucune modification depuis la version bêta précédente.

Version 1.1.0-beta01

27 janvier 2021

Publication d'androidx.annotation:annotation-experimental:1.1.0-beta01. Liste des commits de la version 1.1.0-beta01

Modifications apportées à l'API

  • La variante androidx de l'annotation expérimentale a été abandonnée pour assurer la parité avec Kotlin. Elle a été remplacée par la variante AndroidX, et le lint pour Java a été mis à jour pour prendre en charge à la fois la nouvelle annotation Kotlin et la nouvelle variante androidx. (I52495, b/151331381).

Version 1.1.0-alpha01

22 juillet 2020

Publication d'androidx.annotation:annotation-experimental:1.1.0-alpha01. Liste des commits de la version 1.1.0-alpha01

Nouvelles fonctionnalités

  • La bibliothèque de l'annotation expérimentale est désormais écrite en Kotlin, mais il n'est pas nécessaire d'inclure la bibliothèque standard Kotlin en tant que dépendance. Il contient un fichier ProGuard permettant de supprimer les métadonnées Kotlin inutiles des projets qui n'utilisent que le langage de programmation Java.
  • @UseExperimental est désormais compatible avec plusieurs classes de repères (aosp/1185577, b/145137892).

Annotation-Experimental version 1.0.0

Annotation-Experimental version 1.0.0

7 novembre 2019

Publication d'androidx.annotation:annotation-experimental:1.0.0 et d'androidx.annotation:annotation-experimental-lint:1.0.0 sans modification par rapport à la version 1.0.0-rc01. Liste des commits de la version 1.0.0

Principales fonctionnalités de la version 1.0.0

  • Application forcée de la sémantique @Experimental Kotlin dans le code source Java.
  • Les annotations Java qui fournissent un comportement équivalent aux annotations @Experimental et @UseExperimental de Kotlin, sans nécessiter de dépendance en Kotlin.

Annotation-Experimental version 1.0.0-rc01

23 octobre 2019

Publication d'androidx.annotation:annotation-experimental:1.0.0-rc01 et d'androidx.annotation:annotation-experimental-lint:1.0.0-rc01. Liste des commits de la version 1.0.0-rc01.

Problèmes connus

Lorsque vous utilisez la version 3.5 stable de Studio, les avertissements de l'outil qui détecte l'utilisation @Experimental ne s'affichent pas dans l'IDE (Environnement de développement intégré) en cas d'utilisation incorrecte de l'annotation @Experimental dans le code Kotlin. Voir : b/140640322.

Annotation-Experimental version 1.0.0-beta01

9 octobre 2019

Publication d'androidx.annotation:annotation-experimental:1.0.0-beta01 et d'androidx.annotation:annotation-experimental-lint:1.0.0-beta01 sans modification par rapport à la version 1.0.0-alpha01. Liste des commits de la version 1.0.0-beta01.

Annotation-Experimental version 1.0.0-alpha01

18 septembre 2019

Publication d'androidx.annotation:annotation-experimental:1.0.0-alpha01 et d'androidx.annotation:annotation-experimental-lint:1.0.0-alpha01. Il s'agit des commits inclus dans annotation-experimental1.0.0-alpha01 et des commits inclus dans annotation-experimental-lint1.0.0-alpha01.

Nouvelles fonctionnalités

  • La bibliothèque d'annotations Jetpack Experiment est compatible avec Java et intègre les repères d'API expérimentaux de Kotlin. L'artefact -lint fournit une implémentation basée sur Lint des restrictions d'utilisation expérimentales et applique des restrictions à l'utilisation Java des repères d'API expérimentaux de Kotlin.

  • Lorsque vous utilisez l'artefact annotation-experimental en tant que dépendance, les règles d'analyse lint fournies par l'artefact annotation-experimental-lint sont appliquées automatiquement.

Version 1.1.0

Version 1.1.0

5 juin 2019

Publication de androidx.annotation:annotation:1.1.0 sans aucune modification par rapport à la version 1.1.0-rc01.

Version 1.1.0-rc01

7 mai 2019

Publication d'androidx.annotation:annotation:1.1.0-rc01 sans aucune modification par rapport à la version 1.1.0-beta01. Les commits inclus dans cette version sont disponibles sur cette page.

Version 1.1.0-beta01

3 avril 2019

Publication d'androidx.annotation:annotation:1.1.0-beta01. Les commits inclus dans cette version sont disponibles sur cette page.

Nouvelles fonctionnalités

  • Ajout d'une annotation @InspectableProperty compatible avec les nouvelles API d'inspection de vue ajoutées dans Android 10. Cette annotation peut être appliquée aux getters sur des vues ou d'autres éléments d'UI. Les outils de génération de code peuvent l'utiliser pour créer des objets compagnons qui mappent automatiquement les noms des propriétés et des ID d'attributs aux valeurs des propriétés.

Modifications apportées à l'API

  • Modification destructive : @ContentView a été remplacé par une annotation de constructeur et la valeur @LayoutRes a été supprimée. Les classes souhaitant prendre en charge les annotations @ContentView doivent ajouter cette annotation à un constructeur qui accepte un paramètre @LayoutRes int. Cela résout un problème lors de l'utilisation de cette annotation dans les modules de la bibliothèque. (b/128352521)

Version 1.1.0-alpha02

13 mars 2019

Publication d'androidx.annotation:annotation:1.1.0-alpha02. La liste complète des commits inclus dans cette version est disponible sur cette page.

Nouvelles fonctionnalités

  • Nouveau champ d'application de la restriction pour les API : RestrictTo.Scope.LIBRARY_GROUP_PREFIX. Cette restriction limite l'utilisation du code au sein des packages dont les groupes partagent le même préfixe de groupe de bibliothèque jusqu'à la dernière valeur "." (point). Par exemple, comme les bibliothèques foo.bar:lib1 et foo.baz:lib2 partagent le préfixe foo, elles peuvent utiliser les API des autres, dans la limite de ce champ d'application. De même, com.foo.bar:lib1 et com.foo.baz:lib2 partagent le préfixe com.foo. et peuvent partager des API limitées à ce champ d'application. Cependant, la bibliothèque com.bar.qux:lib3 ne pourra pas utiliser l'API restreinte, car elle ne partage que le préfixe com. et pas le dernier . (point).

Version 1.1.0-alpha01

30 janvier 2019

Publication d'androidx.annotation:annotation 1.1.0-alpha01.

Nouvelles fonctionnalités

  • Ajout d'une annotation @ContentView qui vous permet de préciser le fichier XML de mise en page à gonfler. Cette opération est possible dans ComponentActivity dans sa version 1.0.0-alpha04 et Fragment dans sa version 1.1.0-alpha04. Il n'est plus nécessaire d'utiliser setContentView() ou de remplacer onCreateView() (respectivement). (aosp/837619)

Version 1.0.2

Version 1.0.2

25 février 2019

Publication de androidx.annotation:annotation 1.0.2.

Correction de bugs

  • Correction des règles R8/ProGuard qui sont intégrées dans le fichier JAR. Ces règles faisaient référence aux anciens types de android.support.annotation au lieu de androidx.annotation. Remarque : cette erreur aurait eu un impact sur vos builds si vous n'utilisiez pas getDefaultProguardFile, car ces règles par défaut incluaient également les règles correctes pour les deux packages. (aosp/891685)
  • Ajout d'une règle R8/ProGuard qui conserve explicitement l'annotation @Keep. Ainsi, ProGuard ne supprime pas l'annotation des types avant de respecter sa sémantique. Remarque : cette erreur aurait eu un impact sur vos builds si vous n'utilisiez pas getDefaultProguardFile, car ces règles par défaut incluaient également les règles correctes pour les deux packages. (aosp/903818)