AndroidX - Android Extension Library
De la documentation AndroidX
Nous déployons une nouvelle structure de package pour clarifier quels packages sont regroupés avec le système d'exploitation Android, et lesquels sont emballés dans l'APK de votre application. À l'avenir, la hiérarchie de package android.* sera réservée aux packages Android qui sont expédiés avec le système d'exploitation. D'autres packages seront émis dans la nouvelle hiérarchie de package androidx.* dans le cadre de la bibliothèque AndroidX.
Besoin d'AndroidX
AndroidX est une bibliothèque repensée pour rendre les noms de package plus clairs. Ainsi, à partir de maintenant, la hiérarchie android sera uniquement pour les classes par défaut d'Android, qui viennent avec le système d'exploitation Android et les autres bibliothèques/dépendances seront partie de androidx (ce qui a plus de sens). Donc à partir de maintenant, tous les nouveaux développements seront mis à jour dans androidx.
com.android.support.** : androidx.
com.android.support:appcompat-v7 : androidx.appcompat:appcompat com.android.support:recyclerview-v7 : androidx.recyclerview:recyclerview com.android.support:design : com.google.android.material:material
Mappings complets des artefacts pour les packages AndroidX
Auparavant, la bibliothèque de support
utilisait la version du SDK mais AndroidX utilise la Semantic-version
. Elle va se re-versionner de 28.0.0 à 1.0.0.
Comment migrer un projet actuel
Dans Android Studio 3.2 (septembre 2018), il y a une option directe pour migrer un projet existant vers AndroidX
. Cela refactorise automatiquement tous les packages.
Avant de migrer, il est fortement recommandé de sauvegarder votre projet.
Projet existant
- Android Studio > Menu Refactor > Migrate to AndroidX...
- Il analysera et ouvrira la fenêtre Refactor en bas. Acceptez les changements à effectuer.
Nouveau projet
Placez ces paramètres dans votre gradle.properties
android.enableJetifier=true
android.useAndroidX=true
Vérifiez les @Mappings de bibliothèques pour les packages AndroidX équivalents.
Vérifiez la @Page officielle de la migration vers AndroidX
Bugs de la migration
- Si vous compilez l'application et trouvez des erreurs après la migration, vous devrez corriger ces erreurs mineures. Vous ne resterez pas bloqué, car cela peut être facilement corrigé.
- Les bibliothèques tierces ne sont pas converties en AndroidX dans le répertoire, mais elles sont converties au moment de l'exécution par Jetifier, donc ne vous inquiétez pas des erreurs de compilation, votre application fonctionnera parfaitement.
La version 28.0.0 de la bibliothèque de support est-elle la dernière?
De la révision 28.0.0 de la bibliothèque de support Android
Ce sera la dernière version avec de nouvelles fonctionnalités sous l'emballage android.support, et les développeurs sont encouragés à migrer vers AndroidX 1.0.0
Donc allez avec AndroidX, car Android n'actualisera que le package androidx à partir de maintenant.
Lecture supplémentaire
https://developer.android.com/topic/libraries/support-library/androidx-overview
https://android-developers.googleblog.com/2018/05/hello-world-androidx.html
5 votes
Lire developer.android.com/topic/libraries/support-library/….
androidx.*
est la hiérarchie de packages pour les bibliothèques de support. Ils seront tous regroupés sous le même package alors que nous entrons dans l'ère deandroidx
(comme les composants d'architecture, les autres bibliothèques de support).3 votes
Qu'est-ce que tu n'as pas compris exactement? Pourquoi ont-ils changé le forfait?
1 votes
@ADM pourquoi ont-ils basculé vers le package
androidx
à partir du package COREandroid
.2 votes
Ils viennent de restructurer l'emballage pour plus de simplicité. Cela a également été annoncé lors de la conférence IO 2018 si vous voulez jeter un coup d'œil. Merci