Android Studio 3.6 穩定版終於來了,此版本的 Android Studio 包括對一些設計工具的更新,包括佈局編輯器和資源管理器。
該版本的更新需要 Plugin 對應更新支持,比如 Dart 和 Flutter 對應的插件需要同步更新,首次啟動可能比較卡,吃性能。
一、設計工具
此版本的Android Studio包括對一些設計工具的更新,其中包括了佈局編輯器和資源管理器。
此版本中包含對視覺設計編輯器的以下更新:
- 設計編輯器(例如,佈局編輯器和導航編輯器)現在提供一個拆分視圖 的支持,可以同時查看UI 的設計視圖和代碼視圖。在編輯器窗口的右上角,現在有三個按鈕可用於在查看選項之間切換:
- 要啟用拆分視圖,請單擊“ 拆分”圖標 。
- 要啟用XML源代碼視圖,請單擊Source圖標
- 要啟用設計視圖,請單擊“ 設計”圖標
- 設計編輯器中的縮放和平移控件已移至編輯器窗口右下角的浮動面板。
2.拾色器資源選項卡
為了在使用 XML 或設計工具中的顏色選擇器時可以快速更新應用程序中的顏色資源值,IDE現在會填充顏色資源值。
3.資源管理
資源管理器包含以下更新:
- 資源管理器現在支持大多數資源類型。
- 搜索資源時,資源管理器現在將顯示所有項目模塊的結果(以前,搜索僅從所選模塊返回結果)。
- 篩選器按鈕可以查看來自本地依賴模塊,外部庫和 Android - 框架的資源也可以使用過濾器顯示主題屬性。
- 可以在導入過程中通過在資源上方的文本框中單擊來重命名資源。
二、更新了Android Gradle插件
最新版本的 Android Gradle 插件包括許多更新,包括構建速度的優化,對Maven發佈插件的支持以及對視圖綁定的支持。
1. 查看綁定
視圖綁定後可以通過為每個 XML 佈局文件生成綁定類來更輕鬆地編寫與視圖交互的代碼。這些類包含對在相應佈局中具有ID的所有視圖的直接引用。
因為它替換了findViewById(),所以視圖綁定消除了因無效的視圖ID導致空指針異常的風險。
要啟用視圖綁定,需要使用 Android Gradle 插件 3.6.0 或更高版本,並在每個模塊的build.gradle文件中包含以下內容 :
<code>android { viewBinding.enabled = true}/<code>
三、應用更改
現在在開發過程中可以添加一個類,然後單擊 “Apply Code Changes”
或 “Apply Changes and Restart Activity” ,將該代碼更改部署到正在運行的應用程序中
四、重構菜單選項以啟用 Instant Apps 支持
在創建應用程序項目後立即啟用基礎模塊,如下所示:
- 通過 從菜單欄中選擇 View > Tool Windows > Project來打開“ 項目”面板。
- 右鍵單擊通常稱為“應用程序”的基本模塊,然後選擇Refactor > Enable Instant Apps Support.>“啟用即時應用程序支持”。
- 3.在出現的對話框中,從下拉菜單中選擇基本模塊。
- 4.單擊確定。
注意:從“Create New Project ”嚮導中即時啟用基本應用程序模塊的選項已刪除。
五、在APK分析器中反混淆類和方法字節碼
使用APK Analyzer檢查DEX文件時,可以按以下步驟對類和方法字節碼進行模糊處理:
- 1.從菜單欄中選擇 Build > Analyze APK。
- 2.在出現的對話框中,導航到要檢查的APK,然後選擇它。
- 3.點擊打開。
- 4.在 APK 分析器中,選擇要檢查的 DEX 文件。
- 5.在DEX文件查看器中,為要分析的APK 加載 ProGuard 映射文件。
- 6.右鍵單擊要檢查的類或方法,然後選擇Show bytecode。
六、Native Tooling
以下更新支持 Android Studio 中的本機(C / C ++)開發。
1. Kotlin支持
以前由 Java 支持的 Android Studio 支持的 NDK 功能,現在 Kotlin 也能夠支持了:
- 從JNI聲明導航到 C / C ++ 中的相應實現函數。將鼠標懸停在託管源代碼文件中行號附近的C或C ++項目標記上,可以查看此映射。
- 為JNI聲明自動創建存根實現功能。首先定義JNI聲明,然後在C / C ++文件中鍵入“ jni”或方法名稱來激活。
- 未使用的 native implementation functions 在源代碼中突出顯示為警告。缺少實現的JNI聲明也將突出顯示為錯誤。
- 重命名(重構) native implementation functions 時,所有對應的JNI聲明都會更新。重命名 JNI 聲明以更新 native implementation functions 功能。
- 對隱式綁定的 JNI 實現進行簽名檢查。
2. 其他JNI改進
Android Studio中 的代碼編輯器現在支持更無縫的 JNI 開發工作流程,包括改進的類型提示,自動完成,檢查和代碼重構。
3. 重新加載本機庫的APK
在 IDE 外部更新項目中的 APK 時不再需要創建新項目。Android Studio會檢測APK 中的更改,並提供重新導入 APK 的選項。
七、Attach Kotlin-only APK Sources
現在分析和調試預建的APK時,可以附加僅 Kotlin 的外部 APK 源:https://developer.android.com/studio/debug/apk-debugger#attach_java
八、內存探查器中的洩漏檢測
現在,在 Memory Profiler 中分析堆轉儲時,可以過濾 Android Studio 認為可能表明應用程序中的內存洩漏 Activity 和 Fragment 實例的性能分析數據。
篩選器顯示的數據類型包括:
- Activity 實例已被銷燬,但仍在引用中。
- Fragment 實例無效 FragmentManager 但仍在引用中。
在某些情況下,例如以下情況,過濾器可能會產生誤報:
- A Fragment 已創建,但尚未使用。
- 一個 Fragment 被緩存,但不作為的一部分FragmentTransaction。
要使用此功能,請先捕獲堆轉儲或將堆轉儲文件導入Android Studio。要顯示可能正在洩漏內存的碎片和活動,請在“內存探查器”的堆轉儲窗格中選中“活動/碎片洩漏”複選框。(篩選堆轉儲以防止內存洩漏。)
九、模擬器
Android Studio 3.6 可以利用 Android Emulator 29.2.7 及更高版本中包含的多個更新,如下所述。
1. 改進的位置支持
Android Emulator 29.2.7 及更高版本為仿真GPS座標和路線信息提供了額外的支持。當打開 Emulators Extended controls, 控件時, Location 選項卡中的選項現在組織在兩個選項卡下:
“Single points”和“Routes”。- 1.1. Single points
在 Single points 標籤中,可以使用 Google Maps Webview 搜索感興趣的點,就像在手機或瀏覽器上使用Google Maps一樣。搜索或單擊地圖中的位置時,可以通過選擇地圖底部附近的保存點來保存位置。所有保存的位置都列在擴展控件窗口的右側 。
要將“模擬器”位置設置在地圖上選擇的位置,請單擊 Extended controls 窗口右下角附近的“ 設置位置”按鈕 。
- 1.2. Routes
與 Single points 標籤類似, Routes 標籤提供了Google Maps Web視圖,可用於在兩個或多個位置之間創建路線。要創建和保存路線,請執行以下操作:
- 1.在地圖視圖中,使用文本字段搜索路線中的第一個目的地。
- 2.從搜索結果中選擇位置。
- 3.選擇 Navigate 按鈕
- 4.從地圖上選擇路線的起點。
- 5.(可選)點擊添加目的地,將更多停靠點添加到路線中。
- 6.為路線指定名稱,然後點擊保存。
要按照保存的路線模擬模擬器,請從 Saved routes 列表中選擇路線,然後單擊 Extended controls 窗口右下角附近的 Play route 。要停止模擬,請點擊停止路線。
要按照指定的路徑連續仿真模擬器,請啟用重複播放旁邊的開關。要更改仿真器遵循指定路線的速度,請從 Playback speed 下拉列表中選擇一個選項。
2. 多顯示器支持
Android模擬器現在允許將應用程序部署到支持可自定義尺寸的多個顯示器,並可以幫助測試支持多窗口和多顯示器的應用程序 。在虛擬設備運行時,最多可以添加兩個以下顯示:
- 1.打開擴展控件,然後導航到 Displays 選項卡。
- 2.通過單擊添加 Add secondary display 來添加另一個顯示。
- 3.在 Secondary displays 菜單中,執行以下一項操作:
- a.選擇一種預設的寬高比
- b.選擇自定義併為自定義顯示設置高度,寬度和dpi。
- 4.(可選)單擊 Add secondary display 以添加第三顯示。
- 5. 單擊 Apply changes,將指定的顯示添加到正在運行的虛擬設備。
3. 適用於Android Automotive OS的新虛擬設備和項目模板
使用 Android Studio 創建新項目時,現在可以從 Create New Project 嚮導的Automotive 選項卡中的三個模板中進行選擇:No Activity,Media service 和Messaging service 。
對於現有項目,可以通過從菜單欄中選擇 File > New > New Module,然後選擇 Android Automotive 來添加對 設備的支持。然後, Create New Module 嚮導將指導使用 Android Automotive 項目模板之一創建新模塊。
此外,現在可以通過在 Virtual Device Configuration 嚮導的Automotive選項卡中選擇以下選項之一,為Android Automotive OS設備 create an Android Virtual Device (AVD)。
- 1.Polestar 2:創建一個模擬Polestar 2主機的AVD。
- 2.Automotive (1024p landscape):為一般的1024 x 768 px Android車載主機創建一個AVD。
十、可恢復的SDK下載
現在,當使用 SDK Manager 下載 SDK 組件和工具時,Android Studio 現在允許恢復被中斷(例如由於網絡問題)的下載,而無需從頭開始重新開始下載。當互聯網連接不可靠時,此增強功能對於大型下載(例如Android模擬器或系統映像)特別有用。
另外,如果在後臺運行SDK下載任務,則現在可以使用狀態欄中的控件暫停或繼續下載。
狀態欄中的後臺下載任務,帶有新控件,可暫停或繼續下載。
十一、Win32已棄用
Windows 32 位版本的Android Studio在 2019 年 12 月之後將不再獲得更新,並且在 2020 年 12 月之後將不再獲得支持。開發者可以繼續使用 Android Studio。但是,要接收其他更新,請將工作站升級到 Windows 的 64 位版本。
十二、優化 Gradle 同步時間的新選項
在以前的版本中,Android Studio 在 Gradle Sync 期間檢索了所有 Gradle 任務的列表。對於大型項目,檢索任務列表可能會導致同步時間變慢。
要提高Gradle同步性能,請轉到 File > Settings > Experimental , 然後選擇在Gradle同步期間不構建Gradle任務列表。
啟用此選項後,Android Studio會在同步過程中跳過構建任務列表,從而使Gradle Sync更快地完成並改善UI響應速度。請記住,當IDE跳過構建任務列表時,Gradle面板中的任務列表為空,並且構建文件中的任務名稱自動完成不起作用。
十三、切換Gradle離線模式的新位置
要啟用或禁用Gradle的離線模式,請首先從菜單欄中選擇View > Tool Windows > Gradle。然後,在 Gradle 窗口頂部附近,點擊Toggle Offline Mode:
十四、3.6的已知問題
本部分介紹了 Android Studio 3.6 中的當前已知問題。
1. Linux上的鍵映射衝突
在Linux上,某些鍵盤快捷鍵與默認的Linux鍵盤快捷鍵以及流行的窗口管理器(例如KDE和GNOME)的鍵盤快捷鍵衝突。這些鍵盤快捷鍵可能無法在Android Studio中正常工作。
2. Chrome操作系統上的小界面文字
在Chrome操作系統上,文本看起來可能比以前的版本小得多。要變通解決此問題,請執行以下操作:
- 1.通過單擊 File > Settings 打開設置窗口。
- 2.導航到Appearance & Behavior > Appearance。
- 3.選擇使用Use custom font。
- 4.增加字體大小。
- 5.在Settings窗口中,導航至 Editor > Font。
- 6.增加字體大小。
- 7.單擊確定。
最後
在這我也分享一份大佬自己收錄整理的Android學習PDF+架構視頻+面試文檔+源碼筆記,還有高級架構技術進階腦圖、Android開發面試專題資料,高級進階架構資料這些都是我閒暇還會反覆翻閱的精品資料。在腦圖中,每個知識點專題都配有相對應的實戰項目,可以有效的幫助大家掌握知識點。
總之也是在這裡幫助大家學習提升進階,也節省大家在網上搜索資料的時間來學習,也可以分享給身邊好友一起學習
如果你有需要的話,可以點贊+評論+轉發,關注我,然後私信我【進階】我發給你
閱讀更多 像程序那樣思考 的文章