Android Studio 4.0終於更新了,今天為大家帶來Android Studio 4.0的全面更新內容!
更新匯總主要包括:
1、新動作編輯器2、動態布局查看3、布局驗證
1.1 新動作編輯器- 作用:動作編輯器提供了一個簡單的界面,用於處理 MotionLayout 庫中的元素,這些元素是 Android 應用中動畫的基礎。
- 之前版本:創建和更改這些元素需要手動編輯XML資源文件中的約束
- 更新後:運動編輯器可以為您生成此XML,並支持開始和結束狀態,關鍵幀,過渡和時間軸。
註:在使用 Motion 編輯器之前,請確保將文件中的 ConstraintLayout 依賴項設置 build.gradle 為 version 2.0.0-beta3 或更高版本。
1.2 動態布局查看使用 動態布局查看模式(Live Layout Inspector ),可對應用程式UI完整地實時更新。新增功能包括:
功能1:Dynamic layout hierarchy(動態布局層次結構)隨著設備視圖的更改而更新。step1:View > Tools Windows > Layout Inspectorstep2:File > Settings > Experimentalstep3:選中 Enable Live Layout Inspector 旁邊的框 - 單擊 Live updates 上方 Layout Display 旁邊的複選框
註:僅當將應用程式部署到運行 API級別 29 或更高版本的設備或仿真器時,才能使用 Live Layout Inspector
1.3 布局驗證布局驗證(Layout Validation )是一種可視化工具,可用於同時預覽不同設備和配置上的布局
打開方式:單擊IDE窗口右上角的 Layout Validation 選項卡
更多使用布局驗證的信息,請查看:https://developer.android.com/studio/debug/layout-inspector#layout-validation
2. 編輯相關主要包括:
1、 智能編輯器功能2、Kotlin Android實時模板3、clangd 現在可用於 C ++代碼編輯器
2.1 智能編輯器功能- 對於打開 R8 的代碼收縮規則文件時,Android Studio 現在提供智能編輯器功能,如:語法突出顯示、代碼完成和錯誤檢查等
- 該編輯器與 Android Studio 項目集成在一起,為所有類、方法和欄位提供完整的符號補全,並包括快速導航和重構
本次更新中,Android Studio加入了適用於 Kotlin 類的Android 實時模板。如,現在可以鍵入 toast 並按 Tab 鍵快速插入 Toast。
關於模板的完整列表,可查看:File > Setting -> Editor > Live Templates。
2.3 clangd 可用於 C ++代碼編輯器clangd 和 clang-tidy 都是開源LLVM額外工具的一部分:
- clangd具有代碼完成功能,在編輯器中編譯錯誤消息以及定位導航。
- clang-tidy是C ++ linter工具,具有可擴展的框架,用於診斷和修復典型的編程錯誤。
現在,在 Android Studio C++ 代碼編輯器中可用,使用基於 LLVM clangd 和 clang-tidy 的檢查引擎,加快了 C / C ++ 代碼的完成速度,並提供了與 clang-tidy 的更無縫集成。
在以前的版本中,Android Studio 用戶可以通過 NDK 使用 clang-tidy;有了這一更改,Android Studio 不再依賴NDK的整潔功能。
3. Gradle 插件更新此次是更新為Android Gradle 插件 4.0.0,主要包括:
3.1 構建分析器使用構建分析器Build Analyzer 窗口可幫助你了解和診斷構建過程中的問題,如禁用的優化和配置不正確的 task
使用方式:
1、菜單欄中選擇 Build> Make Project 來構建應用程式
2、從菜單欄中選擇 View > Tool Windows > Build
3、在 Build 窗口中,以下列方式之一打開 Build Analyzer 窗口:
- Android Studio完成構建項目後,單擊 Build Analyzer 選項卡。
- Android Studio完成構建項目後,單擊 Build Output 窗口右側的連結。
當 Android Studio 分析構建時,它將計算確定構建持續時間的一組任務,並提供可視化幫助你了解每個任務的影響,你還可以通過展開 Warnings 節點來獲取有關警告的詳細信息。
3.2 功能上的依存關係- 之前版本:所有動態功能模塊都只能依賴於應用程式的基本模塊。
- 更新:可包括一個依賴於另一個功能模塊的功能模塊
- 示例::a 功能模塊可取決於 :b 功能,而:b功能取決於:basic基礎模塊,如下圖:
註:當應用程式請求下載動態功能模塊時,該應用程式還會下載其依賴的其他功能模塊,在之後創建動態功能模塊,你可以在模塊聲明一個功能上特徵依賴 build.gradle 文件,例如 :a 模塊聲明對 :b 以下項的依賴關係:
// In the build.gradle file of the ':video' module.
dependencies {
// All dynamic feature modules must declare a dependency
// on the base module.
implementation project(':basic')
// Declares that this module also depends on the 'camera'
// dynamic feature module.
implementation project(':b')
...
}
使用方式:菜單欄中Help > Edit Custom VM Options -> 編輯Run configuration輸入feature-on-feature dependency
-Drundebug.feature.on.feature=true
3.3 依賴元數據更新點:包含描述已編譯到應用中的依賴項的元數據,uploading 應用程式時,Play 控制臺會檢查此元數據提供以下好處:
- 獲取有關你的應用使用的SDK和依賴項的已知問題的警報
- 收到可行的反饋來解決這些問題 數據經過壓縮,通過 Google Play 籤名密鑰加密,並存儲在發布應用的籤名欄中,你也可以自己在以下目錄中的本地中間構建文件中檢查元數據:
<project>/<module>/build/outputs/sdk-dependencies/release/sdkDependency.txt。
如果不想共享此信息,可以通過在模塊 build.gradle 文件中添加以下內容來退出:
android {
dependenciesInfo {
// Disables dependency metadata when building APKs.
includeInApk = false
// Disables dependency metadata when building Android App Bundles.
includeInBundle = false
}
}
3.4 Java 8庫在D8和R8中逐漸消失Android Studio 現在支持使用多種 Java 8 語 言API,而無需給應用程式設置最低 API 級別。通過一個稱為 desugaring 的過程,Android Studio 3.0 及更高版本中的 DEX 編譯器 D8 已經為Java 8 語言功能(例如lambda表達式,默認接口方法,嘗試資源等)提供了實質性支持。在Android Studio 4.0中,已將 desugaring engine 擴展為能夠對 Java 語言 API 的語法糖。這意味著你現在可以在 java.util.streams 支持較舊版本的 Android 的應用程式中,包含僅在最新的Android版本中可用的標準語言API 。此版本支持以下一組API:
Sequential streams ( java.util.stream1)
A subset of java.time
java.util.function
Recent additions to java.util.{Map,Collection,Comparator}
Optionals( java.util.Optional, java.util.OptionalInt and some other new classes useful with the above APIs
Some additions to java.util.concurrent.atomic (new methods on AtomicInteger, AtomicLong and AtomicReference)
ConcurrentHashMap (with bug fixes for Android 5.0)
為了支持這些語言API,D8 會編譯一個單獨的庫DEX文件,該文件包含了一些本身缺少API的實現,並將其包含在您的應用程式中,而 desugaring 的過程 將重寫您的應用程式代碼,以在運行時使用此庫。
要啟用對這些語言API的支持,請在模塊build.gradle文件中包括以下內容:
android {
defaultConfig {
// Required when setting minSdkVersion to 20 or lower
multiDexEnabled true
}
compileOptions {
// Flag to enable support for the new language APIs
coreLibraryDesugaringEnabled true
// Sets Java compatibility to Java 8
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.0.4'
}
3.5 支持 Kotlin DSL 腳本文件更新後,支持 Kotlin DSL 構建腳本文件( *.kts)。配合 Android Studio 結合使用時,某些 IDE 功能(例如 ProjectStructure 對話框、構建腳本快速修復程序等)可支持讀寫 Kotlin 構建腳本文件
4. 其餘4.1 CPU Profiler 升級更改1:CPU Profiler 中 CPU 記錄的錯誤率已大大降低。
更改2:全面改進 CPU Profiler UI ,以提供更直觀的工作流程,包括:
1、事件採用了獨特的顏色,以便於區分。
2、線程按它們中的跟蹤事件數進行排序,以便 「busier」 的線程在列表中排名更高。
3、可選擇一個或多個線程以僅在那些選定的線程的右列中查看分析。
4、可在任何線程中選擇一個跟蹤事件以查看其分析數據。
核心 Android Studio IDE 已更新,並通過IntelliJ IDEA 進行了改進,直至 2019.3.3 版本。
5. 總結本文主要總結Android Studio 4.0大家常用的更新點,如下:
本文參考自:
https://juejin.im/post/5ed0677ee51d45788619c3a7
學習資料贈送
福利:由本人親自撰寫 & 整理的Android學習方法資料
數量:10名
參與方式:點擊文章右下角」在看「 -> 回復截圖到公眾號 即可,我將從中隨機抽取!