重磅!Android Studio 3.6 發(fā)布啦偶惠,快來圍觀

前言

Android Studio 3.6 穩(wěn)定版終于來了春寿,此版本的 Android Studio 包括對(duì)一些設(shè)計(jì)工具的更新,包括布局編輯器和資源管理器忽孽。

該版本的更新需要 Plugin 對(duì)應(yīng)更新支持绑改,比如 DartFlutter 對(duì)應(yīng)的插件需要同步更新,首次啟動(dòng)可能比較卡扒腕,吃性能绢淀。

image

一、設(shè)計(jì)工具

此版本的Android Studio包括對(duì)一些設(shè)計(jì)工具的更新瘾腰,其中包括了布局編輯器資源管理器皆的。

1. 拆分視圖并放大設(shè)計(jì)編輯器

image

此版本中包含對(duì)視覺設(shè)計(jì)編輯器的以下更新:

  • 設(shè)計(jì)編輯器(例如,布局編輯器和導(dǎo)航編輯器)現(xiàn)在提供一個(gè)拆分視圖 的支持蹋盆,可以同時(shí)查看UI 的設(shè)計(jì)視圖代碼視圖费薄。在編輯器窗口的右上角硝全,現(xiàn)在有三個(gè)按鈕可用于在查看選項(xiàng)之間切換:

    • 要啟用拆分視圖,請(qǐng)單擊“ 拆分”圖標(biāo) 楞抡。

    • 要啟用XML源代碼視圖伟众,請(qǐng)單擊Source圖標(biāo)

    • 要啟用設(shè)計(jì)視圖,請(qǐng)單擊“ 設(shè)計(jì)”圖標(biāo)

image
  • 設(shè)計(jì)編輯器中的縮放和平移控件已移至編輯器窗口右下角的浮動(dòng)面板召廷。

2.拾色器資源選項(xiàng)卡

為了在使用 XML 或設(shè)計(jì)工具中的顏色選擇器時(shí)可以快速更新應(yīng)用程序中的顏色資源值凳厢,IDE現(xiàn)在會(huì)填充顏色資源值。

image

3.資源管理

資源管理器包含以下更新:

  • 資源管理器現(xiàn)在支持大多數(shù)資源類型竞慢。
  • 搜索資源時(shí)先紫,資源管理器現(xiàn)在將顯示所有項(xiàng)目模塊的結(jié)果(以前,搜索僅從所選模塊返回結(jié)果)筹煮。
  • 篩選器按鈕可以查看來自本地依賴模塊遮精,外部庫和 Android - 框架的資源也可以使用過濾器顯示主題屬性。
  • 可以在導(dǎo)入過程中通過在資源上方的文本框中單擊來重命名資源败潦。

二本冲、更新了Android Gradle插件

最新版本的 Android Gradle 插件包括許多更新,包括構(gòu)建速度的優(yōu)化劫扒,對(duì)Maven發(fā)布插件的支持以及對(duì)視圖綁定的支持檬洞。

1. 查看綁定

視圖綁定后可以通過為每個(gè) XML 布局文件生成綁定類來更輕松地編寫與視圖交互的代碼。這些類包含對(duì)在相應(yīng)布局中具有ID的所有視圖的直接引用粟关。

因?yàn)樗鎿Q了findViewById()疮胖,所以視圖綁定消除了因無效的視圖ID導(dǎo)致空指針異常的風(fēng)險(xiǎn)。

要啟用視圖綁定闷板,需要使用 Android Gradle 插件 3.6.0 或更高版本澎灸,并在每個(gè)模塊的build.gradle文件中包含以下內(nèi)容

android {
    viewBinding.enabled = true
}

三、應(yīng)用更改

現(xiàn)在在開發(fā)過程中可以添加一個(gè)類遮晚,然后單擊 “Apply Code Changes”

image

“Apply Changes and Restart Activity” 性昭,將該代碼更改部署到正在運(yùn)行的應(yīng)用程序中

image

四、重構(gòu)菜單選項(xiàng)以啟用 Instant Apps 支持

在創(chuàng)建應(yīng)用程序項(xiàng)目后立即啟用基礎(chǔ)模塊县遣,如下所示:

    1. 通過 從菜單欄中選擇View > Tool Windows > Project來打開“ 項(xiàng)目”面板糜颠。
    1. 右鍵單擊通常稱為“應(yīng)用程序”的基本模塊,然后選擇Refactor > Enable Instant Apps Support.>“啟用即時(shí)應(yīng)用程序支持”萧求。
  • 3.在出現(xiàn)的對(duì)話框中其兴,從下拉菜單中選擇基本模塊。
  • 4.單擊確定夸政。

注意:從“Create New Project ”向?qū)е屑磿r(shí)啟用基本應(yīng)用程序模塊的選項(xiàng)已刪除元旬。

五、在APK分析器中反混淆類和方法字節(jié)碼

使用APK Analyzer檢查DEX文件時(shí),可以按以下步驟對(duì)類和方法字節(jié)碼進(jìn)行模糊處理:

  • 1.從菜單欄中選擇 Build > Analyze APK匀归。
  • 2.在出現(xiàn)的對(duì)話框中坑资,導(dǎo)航到要檢查的APK,然后選擇它穆端。
  • 3.點(diǎn)擊打開袱贮。
  • 4.在 APK 分析器中,選擇要檢查的 DEX 文件体啰。
  • 5.在DEX文件查看器中攒巍,為要分析的APK 加載 ProGuard 映射文件。
  • 6.右鍵單擊要檢查的類或方法狡赐,然后選擇Show bytecode窑业。

六钦幔、Native Tooling

以下更新支持 Android Studio 中的本機(jī)(C / C ++)開發(fā)枕屉。

1. Kotlin支持

以前由 Java 支持的 Android Studio 支持的 NDK 功能,現(xiàn)在 Kotlin 也能夠支持了:

  • 從JNI聲明導(dǎo)航到 C / C ++ 中的相應(yīng)實(shí)現(xiàn)函數(shù)鲤氢。將鼠標(biāo)懸停在托管源代碼文件中行號(hào)附近的C或C ++項(xiàng)目標(biāo)記上搀擂,可以查看此映射。
  • 為JNI聲明自動(dòng)創(chuàng)建存根實(shí)現(xiàn)功能卷玉。首先定義JNI聲明哨颂,然后在C / C ++文件中鍵入“ jni”或方法名稱來激活。
image
  • 未使用的 native implementation functions 在源代碼中突出顯示為警告相种。缺少實(shí)現(xiàn)的JNI聲明也將突出顯示為錯(cuò)誤威恼。
  • 重命名(重構(gòu)) native implementation functions 時(shí),所有對(duì)應(yīng)的JNI聲明都會(huì)更新寝并。重命名 JNI 聲明以更新 native implementation functions 功能箫措。
  • 對(duì)隱式綁定的 JNI 實(shí)現(xiàn)進(jìn)行簽名檢查。

2. 其他JNI改進(jìn)

Android Studio中 的代碼編輯器現(xiàn)在支持更無縫的 JNI 開發(fā)工作流程衬潦,包括改進(jìn)的類型提示斤蔓,自動(dòng)完成,檢查和代碼重構(gòu)镀岛。

3. 重新加載本機(jī)庫的APK

在 IDE 外部更新項(xiàng)目中的 APK 時(shí)不再需要?jiǎng)?chuàng)建新項(xiàng)目弦牡。Android Studio會(huì)檢測(cè)APK 中的更改,并提供重新導(dǎo)入 APK 的選項(xiàng)漂羊。

七驾锰、Attach Kotlin-only APK Sources

現(xiàn)在分析和調(diào)試預(yù)建的APK時(shí),可以附加僅 Kotlin 的外部 APK 源:https://developer.android.com/studio/debug/apk-debugger#attach_java 走越。

八椭豫、內(nèi)存探查器中的泄漏檢測(cè)

現(xiàn)在,在 Memory Profiler 中分析堆轉(zhuǎn)儲(chǔ)時(shí),可以過濾 Android Studio 認(rèn)為可能表明應(yīng)用程序中的內(nèi)存泄漏 ActivityFragment 實(shí)例的性能分析數(shù)據(jù)捻悯。

篩選器顯示的數(shù)據(jù)類型包括:

  • Activity 實(shí)例已被銷毀匆赃,但仍在引用中。
  • Fragment 實(shí)例無效 FragmentManager 但仍在引用中今缚。

在某些情況下算柳,例如以下情況,過濾器可能會(huì)產(chǎn)生誤報(bào):

  • A Fragment 已創(chuàng)建姓言,但尚未使用瞬项。
  • 一個(gè) Fragment 被緩存,但不作為的一部分FragmentTransaction何荚。

要使用此功能囱淋,請(qǐng)先捕獲堆轉(zhuǎn)儲(chǔ)將堆轉(zhuǎn)儲(chǔ)文件導(dǎo)入Android Studio。要顯示可能正在泄漏內(nèi)存的碎片和活動(dòng)餐塘,請(qǐng)?jiān)凇皟?nèi)存探查器”的堆轉(zhuǎn)儲(chǔ)窗格中選中“活動(dòng)/碎片泄漏”復(fù)選框妥衣。(篩選堆轉(zhuǎn)儲(chǔ)以防止內(nèi)存泄漏。)

image

九戒傻、模擬器

Android Studio 3.6 可以利用 Android Emulator 29.2.7 及更高版本中包含的多個(gè)更新税手,如下所述。

1. 改進(jìn)的位置支持

Android Emulator 29.2.7 及更高版本為仿真GPS坐標(biāo)和路線信息提供了額外的支持需纳。當(dāng)打開 Emulators Extended controls, 控件時(shí)芦倒, Location 選項(xiàng)卡中的選項(xiàng)現(xiàn)在組織在兩個(gè)選項(xiàng)卡下:“Single points”“Routes”

Single points

在 Single points 標(biāo)簽中不翩,可以使用 Google Maps Webview 搜索感興趣的點(diǎn)兵扬,就像在手機(jī)或?yàn)g覽器上使用Google Maps一樣。搜索或單擊地圖中的位置時(shí)口蝠,可以通過選擇地圖底部附近的保存點(diǎn)來保存位置器钟。所有保存的位置都列在擴(kuò)展控件窗口的右側(cè) 。

要將“模擬器”位置設(shè)置在地圖上選擇的位置亚皂,請(qǐng)單擊 Extended controls 窗口右下角附近的“ 設(shè)置位置”按鈕 俱箱。

image
Routes

與 Single points 標(biāo)簽類似, Routes 標(biāo)簽提供了Google Maps Web視圖灭必,可用于在兩個(gè)或多個(gè)位置之間創(chuàng)建路線狞谱。要?jiǎng)?chuàng)建和保存路線,請(qǐng)執(zhí)行以下操作:

  • 1.在地圖視圖中禁漓,使用文本字段搜索路線中的第一個(gè)目的地跟衅。
  • 2.從搜索結(jié)果中選擇位置。
  • 3.選擇 Navigate 按鈕
image
  • 4.從地圖上選擇路線的起點(diǎn)播歼。
  • 5.(可選)點(diǎn)擊添加目的地伶跷,將更多完粒靠點(diǎn)添加到路線中。
  • 7.為路線指定名稱叭莫,然后點(diǎn)擊保存蹈集。

要按照保存的路線模擬模擬器,請(qǐng)從 Saved routes 列表中選擇路線雇初,然后單擊 Extended controls 窗口右下角附近的 Play route 拢肆。要停止模擬,請(qǐng)點(diǎn)擊停止路線靖诗。

image

要按照指定的路徑連續(xù)仿真模擬器郭怪,請(qǐng)啟用重復(fù)播放旁邊的開關(guān)。要更改仿真器遵循指定路線的速度刊橘,請(qǐng)從 Playback speed 下拉列表中選擇一個(gè)選項(xiàng)鄙才。

2. 多顯示器支持

Android模擬器現(xiàn)在允許將應(yīng)用程序部署到支持可自定義尺寸的多個(gè)顯示器,并可以幫助測(cè)試支持多窗口和多顯示器的應(yīng)用程序 促绵。在虛擬設(shè)備運(yùn)行時(shí)攒庵,最多可以添加兩個(gè)以下顯示:

  • 1.打開擴(kuò)展控件,然后導(dǎo)航到 Displays 選項(xiàng)卡绞愚。
  • 2.通過單擊添加 Add secondary display 來添加另一個(gè)顯示叙甸。
  • 3.在 Secondary displays 菜單中,執(zhí)行以下一項(xiàng)操作:
    • a.選擇一種預(yù)設(shè)的寬高比
    • b.選擇自定義并為自定義顯示設(shè)置高度位衩,寬度和dpi。
  • 4.(可選)單擊 Add secondary display 以添加第三顯示熔萧。
    1. 單擊 Apply changes糖驴,將指定的顯示添加到正在運(yùn)行的虛擬設(shè)備。
image
image

3. 適用于Android Automotive OS的新虛擬設(shè)備和項(xiàng)目模板

使用 Android Studio 創(chuàng)建新項(xiàng)目時(shí)佛致,現(xiàn)在可以從 Create New Project 向?qū)У?Automotive 選項(xiàng)卡中的三個(gè)模板中進(jìn)行選擇:No Activity贮缕,Media serviceMessaging service

對(duì)于現(xiàn)有項(xiàng)目俺榆,可以通過從菜單欄中選擇 File > New > New Module感昼,然后選擇 Android Automotive 來添加對(duì) 設(shè)備的支持。然后罐脊, Create New Module 向?qū)⒅笇?dǎo)使用 Android Automotive 項(xiàng)目模板之一創(chuàng)建新模塊定嗓。

image

此外,現(xiàn)在可以通過在 Virtual Device Configuration 向?qū)У?strong>Automotive選項(xiàng)卡中選擇以下選項(xiàng)之一萍桌,為Android Automotive OS設(shè)備 create an Android Virtual Device (AVD)宵溅。

  • 1.Polestar 2:創(chuàng)建一個(gè)模擬Polestar 2主機(jī)的AVD。
  • 2.Automotive (1024p landscape):為一般的1024 x 768 px Android車載主機(jī)創(chuàng)建一個(gè)AVD上炎。
image

十恃逻、可恢復(fù)的SDK下載

現(xiàn)在,當(dāng)使用 SDK Manager 下載 SDK 組件和工具時(shí),Android Studio 現(xiàn)在允許恢復(fù)被中斷(例如由于網(wǎng)絡(luò)問題)的下載寇损,而無需從頭開始重新開始下載凸郑。當(dāng)互聯(lián)網(wǎng)連接不可靠時(shí),此增強(qiáng)功能對(duì)于大型下載(例如Android模擬器或系統(tǒng)映像)特別有用矛市。

另外线椰,如果在后臺(tái)運(yùn)行SDK下載任務(wù),則現(xiàn)在可以使用狀態(tài)欄中的控件暫统九危或繼續(xù)下載憨愉。

image

狀態(tài)欄中的后臺(tái)下載任務(wù),帶有新控件卿捎,可暫团渥希或繼續(xù)下載。

十一午阵、Win32已棄用

Windows 32 位版本的Android Studio在 2019 年 12 月之后將不再獲得更新躺孝,并且在 2020 年 12 月之后將不再獲得支持。開發(fā)者可以繼續(xù)使用 Android Studio底桂。但是植袍,要接收其他更新,請(qǐng)將工作站升級(jí)到 Windows 的 64 位版本籽懦。

十二于个、優(yōu)化 Gradle 同步時(shí)間的新選項(xiàng)

在以前的版本中,Android Studio 在 Gradle Sync 期間檢索了所有 Gradle 任務(wù)的列表暮顺。對(duì)于大型項(xiàng)目厅篓,檢索任務(wù)列表可能會(huì)導(dǎo)致同步時(shí)間變慢。

要提高Gradle同步性能捶码,請(qǐng)轉(zhuǎn)到 File > Settings > Experimental 羽氮, 然后選擇在Gradle同步期間不構(gòu)建Gradle任務(wù)列表。

啟用此選項(xiàng)后惫恼,Android Studio會(huì)在同步過程中跳過構(gòu)建任務(wù)列表档押,從而使Gradle Sync更快地完成并改善UI響應(yīng)速度。請(qǐng)記住祈纯,當(dāng)IDE跳過構(gòu)建任務(wù)列表時(shí)令宿,Gradle面板中的任務(wù)列表為空,并且構(gòu)建文件中的任務(wù)名稱自動(dòng)完成不起作用盆繁。

十三掀淘、切換Gradle離線模式的新位置

要啟用或禁用Gradle的離線模式,請(qǐng)首先從菜單欄中選擇View > Tool Windows > Gradle油昂。然后革娄,在 Gradle 窗口頂部附近倾贰,點(diǎn)擊Toggle Offline Mode:

image

十四、3.6的已知問題

本部分介紹了 Android Studio 3.6 中的當(dāng)前已知問題拦惋。

1. Linux上的鍵映射沖突

在Linux上匆浙,某些鍵盤快捷鍵與默認(rèn)的Linux鍵盤快捷鍵以及流行的窗口管理器(例如KDE和GNOME)的鍵盤快捷鍵沖突。這些鍵盤快捷鍵可能無法在Android Studio中正常工作厕妖。

2. Chrome操作系統(tǒng)上的小界面文字

在Chrome操作系統(tǒng)上首尼,文本看起來可能比以前的版本小得多。要變通解決此問題言秸,請(qǐng)執(zhí)行以下操作:

  • 1.通過單擊 File > Settings 打開設(shè)置窗口软能。
  • 2.導(dǎo)航到Appearance & Behavior > Appearance
  • 3.選擇使用Use custom font举畸。
  • 4.增加字體大小查排。
  • 5.在Settings窗口中,導(dǎo)航至 Editor > Font抄沮。
  • 6.增加字體大小跋核。
  • 7.單擊確定。
2020年叛买,愿所有人都能幸福將康砂代,每天開心,被這個(gè)世界溫柔對(duì)待

?歡迎關(guān)注于哥的技術(shù)公眾號(hào)【終端研發(fā)部】率挣,話癆技術(shù)刻伊,職場(chǎng),招聘难礼,在線面試娃圆,進(jìn)階提升。沒有做不到的蛾茉,只有想不到的×寐梗回復(fù)1024即可獲得相關(guān)的學(xué)習(xí)資料

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末谦炬,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子节沦,更是在濱河造成了極大的恐慌键思,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,744評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件甫贯,死亡現(xiàn)場(chǎng)離奇詭異吼鳞,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)叫搁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門赔桌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來供炎,“玉大人,你說我怎么就攤上這事疾党∫艚耄” “怎么了?”我有些...
    開封第一講書人閱讀 163,105評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵雪位,是天一觀的道長(zhǎng)竭钝。 經(jīng)常有香客問我,道長(zhǎng)雹洗,這世上最難降的妖魔是什么香罐? 我笑而不...
    開封第一講書人閱讀 58,242評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮时肿,結(jié)果婚禮上庇茫,老公的妹妹穿的比我還像新娘。我一直安慰自己嗜侮,他們只是感情好港令,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,269評(píng)論 6 389
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著锈颗,像睡著了一般顷霹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上击吱,一...
    開封第一講書人閱讀 51,215評(píng)論 1 299
  • 那天淋淀,我揣著相機(jī)與錄音,去河邊找鬼覆醇。 笑死朵纷,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的永脓。 我是一名探鬼主播袍辞,決...
    沈念sama閱讀 40,096評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼常摧!你這毒婦竟也來了搅吁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,939評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤落午,失蹤者是張志新(化名)和其女友劉穎谎懦,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體溃斋,經(jīng)...
    沈念sama閱讀 45,354評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡界拦,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,573評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了梗劫。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片享甸。...
    茶點(diǎn)故事閱讀 39,745評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡截碴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出枪萄,到底是詐尸還是另有隱情隐岛,我是刑警寧澤,帶...
    沈念sama閱讀 35,448評(píng)論 5 344
  • 正文 年R本政府宣布瓷翻,位于F島的核電站聚凹,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏齐帚。R本人自食惡果不足惜妒牙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,048評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望对妄。 院中可真熱鬧湘今,春花似錦、人聲如沸剪菱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽孝常。三九已至旗们,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間构灸,已是汗流浹背上渴。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留喜颁,地道東北人稠氮。 一個(gè)月前我還...
    沈念sama閱讀 47,776評(píng)論 2 369
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像半开,于是被迫代替她去往敵國和親隔披。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,652評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容