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