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