Android Studio 4.0 最新進展,這幾個新功能可太牛逼了
新的 Android Studio 4.0 更換了全新的啟動界面,最近 Google I/O 中官方發布了 Android Studio 3.5 的 beta 版,一個月之后發布了 Android Studio 3.6 beta 版,而最近的 Android Dev Summit 中為我們帶來了 Android Studio 4.0 預覽版,今天我們就來看一下,新的 Android Studio 4.0 為開發者帶來了哪些新體驗!
接下來我會依據 Android Dev Summit 分享的內容以及自己的理解,為大家介紹 Android Studio 4.0 的最新進展,沒關注的小伙伴記得關注鴨!如果覺得這些文章有點意思,記得分享轉發評論點贊鴨!
編譯構建方面
最新進展,這幾個新功能可太牛逼了">新的 Build 窗口,在每一次 Build 之后,會出現一個新的 Build Speed 窗口,我們可以在這個窗口里面查看在整個 Build 期間不同插件、不同任務的耗時,可以做針對性修復。同時還會提示我們哪些插件是每一次 Build 的時候永遠都在執行的,幫助我們發現問題,減少不必要的插件執行,縮短 Build 時間。這里面有很多分類,有興趣的同學可以逐個去研究。
最新進展,這幾個新功能可太牛逼了">現在 Android Studio 4.0 完善了 Kotlin Gradle DSL 的代碼提示、在 IDE 中可以直接查看 DSL 的文檔。我們都知道之前默認的 Groovy 寫法中,Android Studio 會自動幫助我們檢查現有依賴庫是否有新版本更新,現在針對 Kotlin Gradle DSL 也保留支持了這一特性。
最新進展,這幾個新功能可太牛逼了">在編譯方面,增加了新的 coreLibraryDesugaringEnabled true 指令,開啟這個指令,我們可以使用 Java 8 中的某些高級 API。
最新進展,這幾個新功能可太牛逼了">例如上圖所示的,list.stream() 方法,默認情況下,它只能在 API 24 以上使用,通過開啟 coreLibraryDesugaringEnabled 能夠消除版本的限制,在低于 API 24 的設備上也可以使用此方法。目前此指令支持 java.util.stream、java.time、java.util.function、ConcurrentHashMap 等。此功能的目的在于解決舊版本上由于無法使用 Java 高級 API 而產生的持續性 bug 無法得到修復的問題。
最新進展,這幾個新功能可太牛逼了">新的 Android Studio 4.0 在編輯 ProGuard 文件時,提供的語法高亮、代碼提示和錯誤檢查,同時和 Refactor Name 的時候,ProGuard 文件中對應的字段也會及時更新。
最新進展,這幾個新功能可太牛逼了">新增了 viewBinding 指令,當我們開啟設置為 true 的時候,編譯器會為我們生成一個視圖綁定類,即下圖中的 ActivityMainBinding。
最新進展,這幾個新功能可太牛逼了">viewBinding 的目的在于確保我們在代碼中所使用的 View 是試圖中確切存在的。防止使用findViewById 為空引起崩潰。(不過我在 4.0 canary 1 上面沒有開啟成功,應該是還有 bug )
視圖方面
目前我們編寫 UI 有三種方式,xml、代碼編寫自定義 View、Jetpack Compose。目前這三種方式全部在 Android Studio 4.0 上支持預覽。
最新進展,這幾個新功能可太牛逼了">三者的預覽界面都是一樣的,分三種模式:編輯、預覽、編輯+預覽。別的不說自定義 View 支持預覽那真是太方便了,能極大的提升開發效率。
最新進展,這幾個新功能可太牛逼了">而且,xml 的視圖預覽中支持多種不同分辨率設備的同時預覽,還可以預覽國際化時不同語言的排版情況,以及色盲模式的支持。(當然后面兩項在 4.0 canary 1 中還沒出現,只是在官方演示視頻中做了講解)
最新進展,這幾個新功能可太牛逼了">還有一項很牛逼的東西,就是 Android Studio 4.0 支持嵌入式模擬器,注意上圖中的圖像界面,不是我們第一個說的預覽界面,是真正的模擬器,左邊開發右邊調試,再也不用切屏幕了。
最新進展,這幾個新功能可太牛逼了">Layout Inspector 也得到了更新,之前的 Layout Inspector 類似于布局快照,切換界面后,需要重新啟動 Layout Inspector 。Android Studio 4.0 中 Layout Inspector 支持實時自動更新,當我們的設備切換頁面后,布局分析器中的頁面也會更新,同時關于資源文件的顯示也更加完備,增加了完整調用鏈的信息展示。還有一個特牛逼的功能(劃重點了!)就是 Layout Inspector 支持 3D 模型檢查,就像下圖這樣:
最新進展,這幾個新功能可太牛逼了">雖然官方視頻中說到這些都會在 Android Studio 4.0 中出現,不過以我目前能下載到的 canary 1 版本來說,自定義 View 預覽、嵌入式模擬器、新的 Layout Inspector 都沒有找到,后續的 canary 應該會逐步支持。
動畫方面
使用 MotionLayout 我們需要在 xml 中自定義 MotionScene,在 MotionScene 中指定不同 Layout 之間的變化。
查看到官方的 Demo 之后,說實話這種動畫編寫方式還是有些繁瑣的,還好這次 Android Studio 4.0 支持了新的動畫編輯器,讓我們可以通過可視化的操作,來創建 MotionLayout 動畫。
最新進展,這幾個新功能可太牛逼了">我們可以指定 Layout 在 start 和 end 兩個狀態下的布局,設置動畫持續時間,點擊上方的 Transition 線,就可以預覽動畫,是不是非常簡單!而且我們可以在持續時間中,任意添加關鍵幀,設置每一幀的狀態,更細小顆粒度的控制動畫效果,關鍵幀可以設置屬性、相對位置。有了 MotionLayout 和全新的動畫編輯器,在 Android 上做動畫限制你的不再是 API 而是你的想象力。
其他
最新進展,這幾個新功能可太牛逼了">全新的 Resource Manager 支持多種資源的查看和管理,例如圖片、顏色、布局、字符串、動畫等等。
最新進展,這幾個新功能可太牛逼了">內置的 Materiel Design Icon 提供了多種樣式的選擇:填充、線性、雙色、圓角、矩形,終于不用自己切圖了。
最新進展,這幾個新功能可太牛逼了">IDE 內置了很多簡寫代碼指令模版,幫助我們快速使用,同時支持自定義插入,看了這次分享,才發現自己對 Android Studio 的使用還停留在會用的階段,從來沒有深入研究過,例如我最近才發現可以使用 File → New → Import Sample 查看官方提供了最佳實踐代碼,有 AAC 架構、有動畫、有 CameraX、有 NDK 各種分類應有盡有,評論告訴我,我應該不說最后一個知道這個功能的吧。
最新進展,這幾個新功能可太牛逼了">以上就是在本次 Android Dev Summit 中 Android Studio 最新進展的部分內容,當然在這些功能的背后,IDE 本身的內存占用、編譯速度、都有很大的提升,不然也不會直接版本號跳躍到 4.0,想想隔壁蘋果 Xcode 都出道 11 了,Android Studio 才到 4.0 真是慢工出細活啊。



























