AndroidX 是对 android.support.xxx 包的整理后产物。由于之前的 support 包过于混乱,所以,Google 推出了AndroidX。
谷歌将不再发布 android.support 库版本。 所有新功能都将在 androidx 命名空间中开发。
所以Android 9.0之前还可以使用support,Android 10.0之后要使用androidx了。
androidx对RecycleView有了优化,并且包名也改变了,还有其他控件support相关的控件都修改了包名。
用 AS3.2之后的版本生成的工程,默认支持 AndroidX ,用的 UI 控件也是 androidx 包下的。
用 Android 源码编译 AS 的工程时,会编译不过,提示缺少 androidx 的包。
如使用 AppCompatActivity ,编译时会提示错误: 程序包androidx.appcompat.app不存在
LOCAL_STATIC_ANDROID_LIBRARIES := \
androidx.recyclerview_recyclerview \
androidx.preference_preference \
androidx.appcompat_appcompat \
androidx.annotation_annotation \
androidx.legacy_legacy-preference-v14 \
androidx.leanback_leanback-preference \
androidx.leanback_leanback \
系统源码中添加这个依赖即可使用androidx相关属性。
旧的support依赖,一般如下:
LOCAL_STATIC_ANDROID_LIBRARIES := \
android-support-v7-recyclerview \
android-support-v7-preference \
android-support-v7-appcompat \
android-support-v14-preference \
android-support-v17-preference-leanback \
android-support-v17-leanback \
android-support-tv-provider \
android-arch-lifecycle-extensions
需要不同的版本搭配,比较麻烦!所以androidx是不错的选择。
https://blog.csdn.net/wenzhi20102321/article/details/122889502