【譯】Android Studio 2.0預(yù)覽版 v5 功能介紹

原文地址:Android Studio 2.0 Preview 5 Available

我們剛剛通過canary 渠道[注1]發(fā)布了Android Studio 2.0預(yù)覽版 v5。相對于上個(gè)月的預(yù)覽版 v4,這次構(gòu)建做了很大一批的修復(fù),主要包括:

  • Instant Run(即時(shí)運(yùn)行):在這塊,我們做了巨大的修改。在之前提供的一些特性中(原句:Among the user visible features),我們提供了冷修復(fù)模式:即如果有一些無法通過熱修復(fù)方式發(fā)布的不兼容的改動(dòng),會在編譯之后通過重啟app來發(fā)布這些改動(dòng)。根據(jù)運(yùn)行設(shè)備的API版本,我們使用了不同的辦法來解決這個(gè)問題。
  • 在棉花糖版本的機(jī)器上,我們使用APK分裂方式,首先把代碼庫分割成不同的APK片,然后通過adb install-multiple方式安裝它們。也就是說,在M設(shè)備上,不再像M之前的老設(shè)備那樣使用類加載方式。
  • 在棒棒糖設(shè)備上,我們使用multidex來拆分代碼到不同的dex塊,然后推送到設(shè)備中。
  • 針對巧克力版本以及更低版本,我們創(chuàng)建了一個(gè)單獨(dú)的dex塊來存放被修改的類。
  • 針對提交了改動(dòng)之后就需要重啟app的冷修復(fù),我們提供了凍結(jié)修復(fù)模式,即使app沒有在運(yùn)行,也能構(gòu)建出來增量內(nèi)容。這種情況下,我們通過adb把修改內(nèi)容推送到設(shè)備上特定一個(gè)“收件箱”里。
  • 需要注意的是,Instant Run需要配合Gradle插件的最新版本,即2.0-alpha5(同樣也在今天發(fā)布)- 該插件的發(fā)布日志
  • 移除無用資源(幫你找出項(xiàng)目中無用的資源并移除它們)功能做了一次重構(gòu)。
    Remove Unused Resources
    Remove Unused Resources
  • 無用資源探測器已經(jīng)被重寫,支持對無用的資源進(jìn)行“傳遞”標(biāo)記(被引用的資源,但僅僅只能從無用的資源標(biāo)記),支持在raw資源中進(jìn)行探測,例如.html的圖片引用。支持Gradle 的資源瘦身器經(jīng)常使用的tools:keeptools:discard屬性,用來收集不活躍的資源集(例如在product flavors 和 build types中定義的資源)。并且能夠妥善處理靜態(tài)資源的聲明。同時(shí)針對移除無用資源功能提供了快速修復(fù)功能(后悔了?)。
  • 隱式API檢查。直到現(xiàn)在,lint依然能夠在所有平臺上根據(jù)你的最小sdk版本對方法調(diào)用和變量引用進(jìn)行檢查。但是,有很多的類已經(jīng)實(shí)現(xiàn)了新的借口,比如Closeable,在最新的版本或者那些繼承該類的子類都已經(jīng)發(fā)生了變化。舉個(gè)栗子,KeyEvent類只有在API 9版本才有個(gè)父類InputEvent。 這也就是說,在所有你隱式或者顯示轉(zhuǎn)換的地方,都有一個(gè)潛在的崩潰風(fēng)險(xiǎn)?,F(xiàn)在,Lint開始跟蹤這些API的變化并且全部隱式檢查。
    implicit-cast
    implicit-cast
  • 幾個(gè)新的Lint檢查-對使用RecyclerView 時(shí)容易犯的一個(gè)錯(cuò)誤進(jìn)行檢查,對Parcelable 加載時(shí)一個(gè)潛在的崩潰進(jìn)行檢查,以及8個(gè)從字節(jié)碼分析移植到IDE內(nèi)部分析的Lint 檢查功能,如此之后,它們便能在編輯器的后臺運(yùn)行。


    recyclerview
    recyclerview
  • @IntDef,@IntRange@Size檢查不僅僅針對原始的整形進(jìn)行檢查,同樣支持?jǐn)?shù)組和可變參數(shù)。
  • 還有一些其他雜七雜八的改進(jìn),例如即使當(dāng)前編輯器里面存在語法錯(cuò)誤,Lint仍舊會運(yùn)行,并且在IDE分析窗口中顯示Lint檢查的問題分類。使第三方的(來自AAR庫)的lint檢查規(guī)則在IDE里工作的更好,諸如此類等等。
  • 數(shù)據(jù)綁定: 在XML編輯器中,支持?jǐn)?shù)據(jù)綁定表達(dá)式的補(bǔ)全功能。

    dbcompletion
    dbcompletion

  • 測試用例:經(jīng)過試驗(yàn),測試用例功能(其中,同時(shí)在IDE中啟用了單元測試和自動(dòng)化測試)得到了進(jìn)一步改善,現(xiàn)在默認(rèn)打開。

    artifacts
    artifacts

  • 樣式標(biāo)簽中的代碼補(bǔ)全功能更加智能了,它能從父輩樣式中尋找并給出合格的條目。

  • 我們同樣在為了提升無障礙支持而努力,還包括SDK管理器和向?qū)嚓P(guān)的一些基礎(chǔ)功能有關(guān)的工作。

  • 最后一條,一如既往的,修復(fù)了很多bug。如果你發(fā)現(xiàn)了問題或者bug并沒有修復(fù),請告訴我們。

安裝說明

您可以通過內(nèi)置的補(bǔ)丁機(jī)制(檢查更新),更新當(dāng)前的2.0預(yù)覽版本安裝預(yù)覽版 v5。
您還可以通過修補(bǔ)機(jī)制更新1.5版本至2.0預(yù)覽版本,但你可能不希望這樣做:點(diǎn)擊查看如果想體驗(yàn)預(yù)覽版,如何同時(shí)安裝兩個(gè)版本的android studio
您也能直接下載完整預(yù)覽版本的zip安裝包,下載地址

有問題?

如果您在使用過程中遇到問題,請檢查已知問題,我們會在必要的時(shí)候更新相關(guān)問題。

20p5
20p5

[注1]:canary 渠道 意為還沒有做好發(fā)布準(zhǔn)備的代碼 參考自Google的產(chǎn)品質(zhì)量之道

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,932評論 25 709
  • 1 背景 一個(gè)項(xiàng)目開發(fā)必然會涉及團(tuán)隊(duì)協(xié)作,而工程質(zhì)量就需要團(tuán)隊(duì)去保證。一般我們期望的代碼:無潛在風(fēng)險(xiǎn)、無重復(fù)邏輯、...
    zyl06閱讀 3,287評論 5 16
  • 谷歌2017發(fā)布會更新了挺多內(nèi)容的,而且也發(fā)布了AndroidStudio3.0預(yù)覽版,一些功能先睹為快。(英語一...
    AFinalStone閱讀 1,514評論 0 3
  • 每天進(jìn)步一點(diǎn)點(diǎn),堅(jiān)持帶來大改變 看完今天的文章,真的是茅塞頓開,以往我們接收到的方式都是定一個(gè)相對高的目標(biāo),然后中...
    Alicia穎閱讀 194評論 0 1
  • 喝酒確實(shí)是個(gè)小事。 我沒有仇恨,不會借著酒去尋仇;我不會開車,不會酒后駕駛給別人帶來危險(xiǎn);我酒后做的最后悔的事,就...
    方塘水淺閱讀 543評論 0 0

友情鏈接更多精彩內(nèi)容