電腦百事網(wǎng)10月23日消息 谷歌官方表示,近期發(fā)布了 Android Studio 4.1 穩(wěn)定版,為大家?guī)硪幌盗嗅槍ΤR姷木庉?、調(diào)試和優(yōu)化工作的功能。4.1 版本的重點訴求之一是幫助您在使用 Android Jetpack 庫 (即 Android 的開發(fā)庫套件) 時遵循最佳實踐和提升代碼編寫效率。基于大家的反饋,直接在 IDE 中集成了諸多常用的 Android 庫,從而改善了編寫代碼的體驗。
Android Studio 4.1:http://developer.android.google.cn/studio
Android Jetpack:http://developer.android.google.cn/jetpack
電腦百事網(wǎng)了解到,Android Studio 4.1 的一些亮點如下 : 引入全新的 Database Inspector,用于查詢應(yīng)用的數(shù)據(jù)庫;支持瀏覽使用 Dagger 或 Hilt 進行依賴項注入的項目;支持在 Android 項目中使用 TensorFlow Lite 模型,進一步增強了對設(shè)備端機器學習的支持。我們還對 Apply Changes 進行了更新,以加快部署速度。我們根據(jù)大家的反饋進行了一些更改,引入了新的原生內(nèi)存性能分析器和獨立分析工具來為游戲開發(fā)者提供助力。
Hilt:http://developer.android.google.cn/training/dependency-injection/hilt-android
下載 Android Studio 4.1:http://developer.android.google.cn/studio
下面按關(guān)鍵開發(fā)流程列出了 Android Studio 4.1 中的所有新功能。
設(shè)計
Material Design 組件更新
現(xiàn)在,創(chuàng)建新項目 (New Project) 對話框中的 Android Studio 模板使用 Material Design 組件 (MDC),并且默認支持最新版的主題和樣式設(shè)計指南。如此一來,開發(fā)者可以更輕松地使用推薦的 Material 樣式模式,以及支持現(xiàn)代界面功能 (如深色主題)。
gutter 操作,會將您導(dǎo)航到提供該類型的位置。相反,點擊
gutter 操作會將您導(dǎo)航到將類型用作依賴項的位置。Android Studio 還支持對使用 Jetpack Hilt 庫定義的依賴項執(zhí)行導(dǎo)航操作。
Dagger:http://developer.android.google.cn/training/dependency-injection/dagger-basics
Hilt:http://developer.android.google.cn/training/dependency-injection/hilt-android
文檔 : Dagger 導(dǎo)航支持 http://developer.android.google.cn/studio/releases#dagger-navigation
△ 在 Android Studio 4.1 中查看 TensorFlow Lite 模型元數(shù)據(jù)
構(gòu)建和測試
Android 模擬器 – 可折疊設(shè)備鉸鏈信息支持
Android Studio
除了最近新增的 5G 移動網(wǎng)絡(luò)測試功能,我們還在 Android 模擬器中增加了對可折疊設(shè)備的支持。在 Android 模擬器 30.0.26 及更高版本中,您可以使用多種折疊設(shè)計和配置對可折疊設(shè)備進行設(shè)置。設(shè)置完畢后,模擬器將提供鉸鏈角度傳感器和姿態(tài)變化信息,方便您測試應(yīng)用在這些機型上的響應(yīng)情況。
針對 5G 的模擬器支持 http://developer.android.google.cn/about/versions/11/behavior-changes-all#emulator-5g
使用 Android 模擬器在 Android 11 上進行開發(fā) http://medium.com/androiddevelopers/developing-for-android-11-with-the-android-emulator-a9486af2d7ef
Apply Changes 更新
更快的構(gòu)建有助于開發(fā)者更輕松、快速地更改應(yīng)用。為了幫助您提高應(yīng)用迭代效率,我們對 Android 11 或更高版本設(shè)備的 Apply Changes 進行了多項增強。
我們在優(yōu)化迭代速度上進行了大力投入,開發(fā)出一種無需安裝應(yīng)用即可在設(shè)備上部署和保存更改的方法?,F(xiàn)在,在完成初始部署后,通過 Apply Code Changes 或 Apply Changes and Restart Activity 對 Android 11 設(shè)備進行后續(xù)部署的速度大幅提升。我們還在 Apply Changes 中增加了對其他代碼更改的支持?,F(xiàn)在,在您添加一個方法后,可點擊 Apply Code Changes 或 Apply Changes and Restart Activity 按鈕將這些更改部署到正在運行的應(yīng)用中。
結(jié)構(gòu)化類重定義與 Apply Changes http://medium.com/androiddevelopers/structural-class-redefinition-and-apply-changes-30f96f1962e6
從 AAR 中導(dǎo)出 C/C++ 依賴項
Android Gradle Plugin 4.0 增加了在 AAR 依賴項中導(dǎo)入 Prefab 軟件包的功能。我們希望擴展此功能以共享原生庫。AGP 4.1 支持在 Android 庫項目的 AAR 中從外部原生構(gòu)建中導(dǎo)出庫。要導(dǎo)出原生庫,請將以下內(nèi)容添加到庫項目 build.gradle 文件的 android 塊中 :
使用原生依賴 http://developer.android.google.cn/studio/build/native-dependencies
buildFeatures { prefabPublishing true } prefab { mylibrary { headers "src/main/cpp/mylibrary/include" } myotherlibrary { headers "src/main/cpp/myotherlibrary/include" } }
原生代碼崩潰報告符號化解析
當原生代碼發(fā)生崩潰或 ANR 時,系統(tǒng)會生成堆棧軌跡,即程序崩潰前所調(diào)用的嵌套函數(shù)序列的快照。這些快照可以幫助您識別和修復(fù)源代碼中的問題,但是必須首先將它們符號化,以將計算機地址轉(zhuǎn)換回人類可讀的函數(shù)名。
如果您的應(yīng)用或游戲是使用 C++ 之類的原生代碼開發(fā)的,那么您現(xiàn)在可以將每個版本應(yīng)用的調(diào)試符號文件上傳到 Play 管理中心。Play 管理中心使用這些調(diào)試符號文件來符號化您應(yīng)用的堆棧軌跡,從而簡化崩潰和 ANR 分析。如果要將調(diào)試符號包含在 App Bundle 中,請將下方內(nèi)容添加到項目的 build.gradle 文件中 :
android.buildTypes.release.ndk.debugSymbolLevel = 'SYMBOL_TABLE'
優(yōu)化
System Trace 界面改進
在 Android Studio 4.1 中,我們對 System Trace 進行了全面改進,該優(yōu)化工具可讓您實時了解應(yīng)用對系統(tǒng)資源的使用情況。通過框選模式還可以更輕松地選擇跟蹤記錄,此外,我們還添加了新的分析標簽頁,并添加了更多的幀渲染數(shù)據(jù),以幫助您調(diào)查應(yīng)用界面中的渲染問題。
System Trace http://developer.android.google.cn/topic/performance/tracing
文檔 : Android Studio System Trance 更新 http://medium.com/androiddevelopers/whats-new-in-android-studio-system-trace-5841465c5935
框選 : 在 Threads 部分中,您現(xiàn)在可以拖動鼠標來框選一個矩形區(qū)域,并點擊右上角的 Zoom to Selection 按鈕 (或使用鍵盤快捷鍵 M) 來放大該區(qū)域。當您將相似的線程拖放到一起后,可以跨多個線程進行框選以同時檢查所有線程。
△ 在 Summary 選項卡中查看匯總統(tǒng)計信息
顯示數(shù)據(jù) : 在 Display 部分,SurfaceFlinger 和 VSYNC 的新時間軸可幫助您調(diào)查應(yīng)用界面中的渲染問題。
SurfaceFlinge http://source.android.google.cn/devices/graphics/surfaceflinger-windowmanager
VSYNC http://source.android.google.cn/devices/graphics/implement-vsync
獨立分析器
現(xiàn)在可以在獨立于 Android Studio 主窗口的單獨窗口中訪問 Android Studio 分析器。在優(yōu)化使用其他工具 (如 Unity 或 Visual Studio) 構(gòu)建的 Android 游戲時,此功能十分有用。
要運行獨立分析器,請執(zhí)行以下操作 :
1. 確保您的系統(tǒng)現(xiàn)在沒有運行 Android Studio 中的分析器。
2. 轉(zhuǎn)到安裝目錄并導(dǎo)航到 bin 目錄 :
Windows/Linux: <studio-installation-folder>bin macOS: <studio-installation-folder>/Contents/bin
3. 根據(jù)您的操作系統(tǒng),運行 profiler.exe 或 profiler.sh
獨立分析器可連接到 Android Emulator 或其他已連接的設(shè)備上。
△ 使用獨立 Android Studio 分析器優(yōu)化您的應(yīng)用
原生內(nèi)存性能分析器
跟蹤原生內(nèi)存的使用情況對于游戲開發(fā)者和其他使用 C++ 的開發(fā)者十分重要,他們可以據(jù)此優(yōu)化其應(yīng)用的內(nèi)存使用。Android Studio 內(nèi)存性能分析器 (Memory Profiler) 現(xiàn)在包含一個原生內(nèi)存性能分析器 (Native Memory Profiler),專門用于運行在 Android 10 或更高版本的實體設(shè)備上的應(yīng)用。原生內(nèi)存性能分析器可以跟蹤特定時間段內(nèi)原生代碼中對象的分配 / 銷毀情況,并提供內(nèi)存總體分配和系統(tǒng)堆剩余大小的信息。
要啟動記錄,請點擊 Memory Profiler 窗口頂部的 Record native allocations:
△ 使用原生內(nèi)存性能剖析器查看原生內(nèi)存分配情況
總結(jié)
簡要回顧一下,Android Studio 4.1 包括以下新增及改進功能 :
設(shè)計
-
Material Design 組件更新
開發(fā)
-
Database Inspector
-
直接在 Android Studio 中運行 Android 模擬器
Dagger 導(dǎo)航支持
-
使用 TensorFlow Lite 模型
構(gòu)建和測試
-
Android 模擬器 – 可折疊設(shè)備鉸鏈信息支持
Apply Changes 更新
-
從 AAR 中導(dǎo)出 C/C++ 依賴項
-
原生代碼崩潰報告符號化解析
優(yōu)化
-
System Trace 界面改進
獨立分析器
-
原生內(nèi)存性能分析器