一、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又得以進一步完善。