一个AndroidX完整的依赖库格式如下所示:implementation ‘androidx.appcompat:appcompat:1.0.2’。了解了AndroidX是什么之后,现在你应该放轻松了吧?它其实并不是什么全新的东西,而是对Android Support Library的一次升级。因此,AndroidX上手起来也没有任何困难的地方。
一、AndroidX什么是样子的
一个AndroidX完整的依赖库格式如下所示:
implementation ‘androidx.appcompat:appcompat:1.0.2’
了解了AndroidX是什么之后,现在你应该放轻松了吧?它其实并不是什么全新的东西,而是对Android Support Library的一次升级。因此,AndroidX上手起来也没有任何困难的地方,比如之前你经常使用的RecyclerView、ViewPager等等库,在AndroidX中都会有一个对应的版本,只要改一下包名就可以完全无缝使用,用法方面基本上都没有任何的变化。
但是有一点需要注意,AndroidX和Android Support Library中的库是非常不建议混合在一起使用的,因为它们可能会产生很多不兼容的问题。较好的做法是,要么全部使用AndroidX中的库,要么全部使用Android Support Library中的库。
而现在Android团队官方的态度也很明确,未来都会为AndroidX为主,Android Support Library已经不再建议使用,并会慢慢停止维护。另外,从Android Studio 3.4.2开始,我发现新建的项目已经强制勾选使用AndroidX架构了。
那么对于老项目的迁移应该怎么办呢?由于涉及到了包名的改动,如果从Android Support Library升级到AndroidX需要手动去改每一个文件的包名,那可真得要改死了。为此,Android Studio提供了一个一键迁移的功能,只需要对着你的项目名右击 → Refactor → Migrate to AndroidX。
点击Migrate,Android Studio就会自动检查你项目中所有使用Android Support Library的地方,并将它们全部改成AndroidX中对应的库。另外Android Studio还会将你原来的项目备份成一个zip文件,这样即使迁移之后的代码出现了问题你还可以随时还原回之前的代码。
延伸阅读:
二、Treble计划是什么
Treble计划是一个非常重要的变革,对系统层面的影响很大。Google每发布一个Android大版本,厂商和APP需要相应适配,这个过程比较漫长,比如去年发布Android O,目前Android O机型用户量比较小,APP都没能快速跟进把targetSdk适配到O的情况下,Android P即将到来,Android碎片化一直是痛点。该计划的核心主旨是让系统与硬件相关的解耦,加快系统升级速度。Treble始于Android O,到Android P又得以进一步完善。