Android Studio 4.0新特性及升級異常問題的解決方案
一、升級問題
1. dataBinding開啟配置修改
升級到AS 4.0以后,出現(xiàn)如下的預(yù)警,對于我這種有代碼潔癖的人是不能忍的,必須解決
DSL element ’android.dataBinding.enabled’ is obsolete and has been replaced with ’android.buildFeatures.dataBinding’
解決方法:
dataBinding { enabled = true }
這是原有的DataBinding開啟方式,在升級后替換如下:
buildFeatures{ dataBinding = true // for view binding : // viewBinding = true }
viewBinding 也是一種控件綁定的技術(shù),我還是認(rèn)為dataBinding 更強(qiáng)大
Missing essential plugin:org.jetbrains.android
AS升級4.0后與3.6.+的配置不一樣了,不能引用舊的C:UsersAdministrator.AndroidStudio3.6config中的config
想要解決這個問題,兩種思路:
刪除C:UsersAdministrator.AndroidStudio3.6config 這個config文件夾 AS升級完成重啟時不要使用原有config,重新進(jìn)行個性化idea設(shè)置二、Android Studio 4.0新特性
1. Gradle構(gòu)建優(yōu)化
當(dāng)將Android Studio 4.0與Android Gradle插件4.0.0及更高版本一起使用時,“構(gòu)建速度”窗口可用于幫助您了解和診斷構(gòu)建過程中的問題,例如禁用的優(yōu)化和配置不正確的任務(wù)。 我們在使用View > Tool Windows > Build后,可以在AS下方看到Build Analyzer有我們的構(gòu)建分析報告
2. Layout Inspector 優(yōu)化
使用更新的實時版式檢查器調(diào)試版式,從而在將應(yīng)用程序的UI部署到設(shè)備時提供完整,實時的洞察力。 Layout Inspector 是取代Hierarchy Viewer的UI優(yōu)化神器
要打開“布局檢查器”窗口,請轉(zhuǎn)到“View > Tool Windows > Layout Inspector”。實時布局檢查器除了具有現(xiàn)有布局檢查器的許多相同功能外,還包括:
動態(tài)布局層次結(jié)構(gòu),該層次結(jié)構(gòu)會隨著設(shè)備視圖的更改而更新。 屬性值解析堆棧可調(diào)查資源屬性值在源代碼中的原始位置,并導(dǎo)航到其位置。 在運行時對應(yīng)用程序的視圖層次進(jìn)行高級3D可視化。3. CPU Profiler UI升級
全面修改了CPU Profiler的UI,以提供更直觀的工作流程。一些值得注意的更改包括:
現(xiàn)在,CPU記錄與主探查器時間線分開了,以便于分析。 記錄的數(shù)據(jù)在Profiler窗口的左側(cè)按組組織。 您可以上下移動組以重新組織列表。 為了更輕松地進(jìn)行并排分析,您現(xiàn)在可以在線程活動時間軸中查看所有線程活動。要展開特定線程并查看其活動,請在時間軸中雙擊該線程。4. System Trace UI升級
同樣,System Trace的UI也已更新:
現(xiàn)在,事件具有獨特的顏色,以便于區(qū)分。 線程按它們中的跟蹤事件數(shù)進(jìn)行排序,以便“較忙”的線程在列表中排名更高。 您可以選擇一個或多個線程以僅在那些選定的線程的右列中查看分析。單擊事件還會在右側(cè)欄中顯示對所選事件的分析。5. Java 8庫在D8和R8中desugaring
通過一個稱為desugaring的過程,您現(xiàn)在可以使用許多Java 8語言API,而無需為您的應(yīng)用程序設(shè)置最低API級別。這意味著您現(xiàn)在可以在支持較舊版本的Android的應(yīng)用程序中包含僅在最近的Android版本(例如java.util.streams)中可用的標(biāo)準(zhǔn)語言API。也即以后對于低版本Android項目也能支持java8了,如下我最高版本SDK=19,它也是支持java 8的Lambda 的
想要取消對Java 8的支持可在gradle.properties 中配置
android.enableDesugar=false
6. Kotlin DSL腳本KTS文件的基本支持
Android Gradle插件4.0.0-alpha01和更高版本現(xiàn)在支持Kotlin DSL構(gòu)建腳本文件(* .kts)。使用Android Studio時,某些IDE功能(例如“項目結(jié)構(gòu)”對話框和構(gòu)建腳本快速修復(fù)程序)現(xiàn)在還支持讀寫Kotlin構(gòu)建腳本文件。AS 4.0開始自動默認(rèn)支持kotlin,也即即使項目未進(jìn)行Kotlin依賴,也能進(jìn)行Kotlin文件的創(chuàng)建編譯
7. 用于代碼收縮規(guī)則的智能編輯器功能
當(dāng)您打開R8的代碼收縮規(guī)則文件時,Android Studio現(xiàn)在提供智能編輯器功能,例如語法突出顯示,代碼完成和錯誤檢查。該編輯器還與您的Android Studio項目集成在一起,以為所有類,方法和字段提供完整的符號補全,并包括快速導(dǎo)航和重構(gòu)。
8. 新動作編輯器
Android Studio現(xiàn)在包括用于MotionLayout布局類型的可視設(shè)計編輯器,使創(chuàng)建和預(yù)覽動畫更加容易。在以前的版本中,創(chuàng)建和更改這些元素需要手動編輯XML資源文件中的約束。現(xiàn)在,運動編輯器可以為您生成此XML,并支持開始和結(jié)束狀態(tài),關(guān)鍵幀,過渡和時間軸。MotionLayout 是個非常新控件,功能強(qiáng)大可用
9. dynamic-feature支持
為了支持使用動態(tài)功能插件(com.android.dynamic-feature)使用Android應(yīng)用程序捆綁包構(gòu)建和打包即時應(yīng)用程序,Android Gradle插件4.0.0-alpha01及更高版本刪除了功能插件(com.android.feature)和Instant App插件(com.android.instantapp)。
因此,要使用最新的Android Gradle插件,您需要遷移即時應(yīng)用程序以支持Android App Bundles。通過遷移即時應(yīng)用程序,您可以利用應(yīng)用程序捆綁包的好處并簡化應(yīng)用程序的模塊化設(shè)計。
10. Kotlin Android實時模板
Android Studio現(xiàn)在包括適用于您的Kotlin類的Android實時模板。例如,您現(xiàn)在可以鍵入Toast,然后按Tab鍵快速插入Toast。有關(guān)可用實時模板的完整列表,請單擊File > Settings > Editor > Live Templates。
11. Layout Validation
布局驗證是一種可視化工具,可用于同時預(yù)覽不同設(shè)備和配置上的布局,從而幫助您檢測布局錯誤并創(chuàng)建更多可訪問的應(yīng)用程序。您可以使用以下配置集之一預(yù)覽布局:
像素設(shè)備 自定義 色盲 字體大小12. Fragment片段和模板
現(xiàn)在,可以通過導(dǎo)航到“文件”>“新建”>“片段”>“畫廊”,或在“導(dǎo)航”編輯器中單擊“創(chuàng)建新目的地”,來使用Create new destination 向?qū)Ш托碌钠文0濉?/p>
13. Dependencies metadata
使用Android Gradle插件4.0.0及更高版本構(gòu)建應(yīng)用時,該插件包含描述已編譯到應(yīng)用中的依賴項的元數(shù)據(jù)。上載應(yīng)用程序時,Play控制臺會檢查此元數(shù)據(jù),以為您提供以下好處:
獲取有關(guān)應(yīng)用程序使用的SDK和依賴項的已知問題的警報 收到可行的反饋來解決這些問題以上就是對AS 4.0的一些新特性總結(jié),并在升級過程中碰到的幾點疑問和解決方案。
總結(jié)
到此這篇關(guān)于Android Studio 4.0新特性及升級異常問題的解決方案的文章就介紹到這了,更多相關(guān)Android Studio 4.0新特性及升級異常內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 專家預(yù)言:PHP將比Java更好更受歡迎2. php設(shè)計模式之模板模式實例分析【星際爭霸游戲案例】3. 詳解php如何合并身份證正反面圖片為一張圖片4. java使用FFmpeg合成視頻和音頻并獲取視頻中的音頻等操作(實例代碼詳解)5. AJAX實現(xiàn)省市縣三級聯(lián)動效果6. Spring @Primary和@Qualifier注解原理解析7. 詳解springBoot啟動時找不到或無法加載主類解決辦法8. ASP.NET MVC視圖頁使用jQuery傳遞異步數(shù)據(jù)的幾種方式詳解9. Java基于redis和mysql實現(xiàn)簡單的秒殺(附demo)10. SpringBoot+SpringCache實現(xiàn)兩級緩存(Redis+Caffeine)
