AndroidX - библиотека расширений Android
Из документации AndroidX
Мы внедряем новую структуру пакетов, чтобы было понятнее, какие пакеты связаны с операционной системой Android, а какие - с APK вашего приложения. В дальнейшем иерархия пакетов android. * Будет зарезервирована для пакетов Android, которые поставляются с операционной системой. Другие пакеты будут выпущены в новой иерархии пакетов androidx. * Как часть библиотеки AndroidX.
Нужен AndroidX
AndroidX - это переработанная библиотека, чтобы сделать имена пакетов более понятными. Таким образом, теперь иерархия Android будет доступна только для классов Android по умолчанию, которые поставляются с операционной системой Android, а другие библиотеки / зависимости будут частью Android (имеет больше смысла). Так что теперь все новые разработки будут обновляться в 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: материал
Полное сопоставление артефактов для пакетов AndroidX
Ранее support library
использовалась версия SDK, но AndroidX использует Semantic-version
. Он собирается пересмотреть версию с 28.0.0 → 1.0.0.
Как перенести текущий проект
В Android Studio 3.2 (сентябрь 2018 г.) есть прямая возможность перенести существующий проект в AndroidX
. Этот рефакторинг всех пакетов автоматически.
Перед миграцией настоятельно рекомендуется сделать резервную копию вашего проекта.
Существующий проект
- Android Studio> Меню Refactor> Миграция в AndroidX ...
- Он проанализирует и откроет окно Refractor в нижней части. Принять изменения, которые будут сделаны.
Новый проект
Поместите эти флаги в свой gradle.properties
android.enableJetifier=true
android.useAndroidX=true
Проверьте соответствие @ Library для одинакового пакета AndroidX .
Проверьте @ Официальная страница Миграция на AndroidX
Ошибки миграции
- Если вы создаете приложение и после миграции обнаруживаете ошибки, вам нужно исправить эти незначительные ошибки. Вы не застрянете там, потому что это легко исправить.
- Сторонние библиотеки в каталоге не конвертируются в AndroidX, но конвертируются во время выполнения Jetifier , поэтому не беспокойтесь об ошибках времени компиляции, ваше приложение будет работать отлично.
Поддержка 28.0.0 это последний выпуск?
От версии поддержки Android 28.0.0
Это будет последний выпуск функции в пакете android.support , и разработчикам рекомендуется перейти на AndroidX 1.0.0
Так что иди с AndroidX, потому что Android теперь будет обновлять только пакет AndroidX.
Дальнейшее чтение
https://developer.android.com/topic/libraries/support-library/androidx-overview
https://android-developers.googleblog.com/2018/05/hello-world-androidx.html
androidx.*
иерархия пакетов для библиотек поддержки Все они будут поставляться в том же пакете, что и мы в эпохуandroidx
(как компоненты архитектуры, другие библиотеки поддержки).