AndroidX - бібліотека розширень Android
З документації на AndroidX
Ми впроваджуємо нову структуру пакетів, щоб зрозуміти, які пакунки входять в операційну систему Android, а які в пакеті APK вашого додатка. Ідучи вперед, ієрархія пакетів android. * Буде зарезервована для пакетів Android, які постачаються з операційною системою. Інші пакети будуть видані в новій ієрархії пакетів. * Як частина бібліотеки AndroidX.
Потреба в AndroidX
AndroidX - це перероблена бібліотека, щоб зробити імена пакунків більш чіткими. Отже, відтепер ієрархія Android буде лише для класів за замовчуванням для android, які поставляються з операційною системою android, а інші бібліотеки / залежності будуть частиною androidx (має більше сенсу). Тож відтепер вся нова розробка буде оновлюватися в androidx.
com.android.support. **: androidx.
com.android.support:appcompat-v7: androidx.appcompat: appcompat
com.android.support:recyclerview-v7: androidx.recyclerview: recilerview
com.android.support:design: com.google.android.material: матеріал
Повне відображення Artifact для пакетів AndroidX
Раніше support library
використовували версію SDK, але AndroidX використовує Semantic-version
. Перейде до ре-версії з 28.0.0 → 1.0.0.
Як перемістити поточний проект
В Android Studio 3.2 (вересень 2018 року) є прямий варіант переміщення існуючого проекту на AndroidX
. Цей рефактори всі пакети автоматично.
Перед тим, як перейти, настійно рекомендується створити резервну копію проекту.
Існуючий проект
- Android Studio> Меню Refactor> Перехід на AndroidX ...
- Він проаналізує і відкриє вікно рефрактора знизу. Прийміть зміни, які потрібно зробити.
Новий проект
Покладіть ці прапори у своє gradle.properties
android.enableJetifier=true
android.useAndroidX=true
Перевірте @ Бібліотечні відображення на рівний пакет AndroidX .
Перевірте @ Офіційна сторінка переходу на AndroidX
Помилки мігрують
- Якщо ви створюєте додаток і виявляєте деякі помилки після переміщення, вам потрібно виправити ці незначні помилки. Ви там не застрягнете, бо це можна легко виправити.
- Сторонні бібліотеки не перетворюються на AndroidX у довіднику, але вони конвертуються під час запуску Jetifier , тому не хвилюйтесь про помилки компіляції, ваш додаток працюватиме ідеально.
Підтримка 28.0.0 - це останній реліз?
З версії Android Support версії 28.0.0
Це буде останній випуск функції під упаковкою android.support , і розробникам рекомендується перейти на AndroidX 1.0.0
Тож переходьте з AndroidX, оскільки Android відтепер оновлюватиме лише пакет Android.
Подальше читання
https://developer.android.com/topic/libraries/support-library/androidx-overview
https://android-developers.googleblog.com/2018/05/hello-world-androidx.html
androidx.*
це ієрархія пакетів для бібліотек підтримки. Усі вони отримають той же пакет, що і ми прийшли в епохуandroidx
(як архітектурні компоненти, інші бібліотеки підтримки).