AndroidStudio升級(jí)到3.0的新特性和注意事項(xiàng)小結(jié)
概述
谷歌發(fā)布Android Studio3.0正式版已經(jīng)有一段時(shí)間了,最近抽空升級(jí)了一下,也踩了一些坑.特地記錄一下.作為開發(fā)者第一時(shí)間體驗(yàn)谷歌帶來的新特性是很有必要的.當(dāng)然為了項(xiàng)目穩(wěn)定性,也要根據(jù)實(shí)際情況決定是否升級(jí)相關(guān)插件
升級(jí)
從已有的IDE升級(jí),無非就是File->Settings->Appearance&Behavior->Updates,這里可以選擇升級(jí)渠道:Canary(金絲雀)Dev(開發(fā)版)Beta(Beta版)Stable(穩(wěn)定版),以及是否使用安全鏈接.或者Help->Check for Updates,會(huì)直接推送當(dāng)前最新的穩(wěn)定版.正式版貌似在本地調(diào)試方面不再支持32位Windows系統(tǒng)
Tips:AS除了IDE本身,還有SDK,配置文件,依賴庫,默認(rèn)在Win平臺(tái)上都是存放在C盤,建議只把SDK文件夾單另移動(dòng)到其它的硬盤,可以在AS中選擇,其它的保持默認(rèn),給C盤留出足夠空間.之前有照網(wǎng)上的更改config文件,自定義配置文件和依賴庫存放的目錄,但在升級(jí)的時(shí)候出現(xiàn)了很多問題,特別是在大版本升級(jí)的時(shí)候會(huì)出現(xiàn)找不到某些文件的情況
升級(jí)步驟
升級(jí)安裝完畢后還需要我們做一些配置:
導(dǎo)入IDE配置,這里我直接選擇的第一項(xiàng),導(dǎo)入之前就有的配置,包括了字體和代碼格式等,有說不導(dǎo)入的,但沒有說明原因

打開項(xiàng)目后會(huì)收到更新gradle插件和gradle的提示:

如果選擇忽略,那么當(dāng)前項(xiàng)目不會(huì)受到影響,無需更改代碼,當(dāng)然你也無法使用到谷歌的新特性.所以建議升級(jí)gradle插件到3.0.0,升級(jí)gradle到4.1。因?yàn)閣all的原因,AS下載gradle的速度會(huì)非常慢,用迅雷打開鏈接https://services.gradle.org/distributions/gradle-4.1-all.zip,親測速度很快。下載好的zip包放入C:/users/{user name}/.gradle/wrapper/dists/gradle-4.1-all路徑下一串亂碼的文件夾下,再次啟動(dòng)AS時(shí)會(huì)自動(dòng)解壓該zip包。
報(bào)錯(cuò)

因?yàn)槊看蝕radle的更新往往也伴隨著構(gòu)建工具的更新,不多說,更新就好了
buildToosVersion

報(bào)錯(cuò)信息寫的很清楚,移除所在build.gradle中的buildToolsVersion(當(dāng)前使用的版本是25.0.0),因?yàn)槊總€(gè)gradle插件版本都有對應(yīng)的默認(rèn)版本的build tools。3.0.0對應(yīng)的就是26.0.2.但是為了更清晰并且可配置,我們還是手動(dòng)將其改為需要的版本而不是移除
Google’s Maven repository

報(bào)錯(cuò)的原因是新版AS默認(rèn)使用Google’s Maven Repository用于下載依賴Android Support Library,所以,需要在工程根目錄下的 build.gradle 文件中的repositories下添加google()一行代碼:
repositories {
google()
jcenter()
}AAPT2編譯報(bào)錯(cuò)

關(guān)閉AAPT2編譯,在gradle.properties中加入:android.enableAapt2=false
注解處理器報(bào)錯(cuò)

這個(gè)項(xiàng)目使用的Butterknife還是比較老的7.0.1版本,只有一個(gè)庫,將功能代碼和注解代碼都寫在了一起.但是新版的gradle插件會(huì)檢測代碼,如果要編譯的代碼中還有處理注解的部分,則需要被顯式的說明.我們將其更新到最新版的8.4.版本.Butterknife從8.0版本后就將庫拆分為編譯時(shí)和運(yùn)行時(shí)的.基本上所有的注解型第三方庫都可以使用新的依賴方式:
在module所在的build.gradle中用annotationProcessor代替apt引用編譯類庫
//舊
dependencies { compile 'com.jakewharton:butterknife:8.4.0' annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
}
*
//新
dependencies {
compile 'com.jakewharton:butterknife:8.4.0' annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
}
*在module所在的build.gradle中移除 apply plugin: 'com.neenbedankt.android-apt'.在根目錄所在的build.gradle中移除classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'.因?yàn)間radle 2.2之后官方插件中已經(jīng)提供了annotationProcessor的功能來完全代替 android-apt.不移除會(huì)報(bào)錯(cuò),并且android-apt的作者也在官網(wǎng)聲明推薦使用官方插件:https://bitbucket.org/hvisser/android-apt/wiki/Migration新特性
到這里一些常見的問題基本就修復(fù)了,現(xiàn)在就來體驗(yàn)一下Android Studio及gradle相關(guān)更新的這次改動(dòng)帶來的一些新特性
總結(jié)
以上所述是小編給大家介紹的AndroidStudio升級(jí)到3.0的新特性和注意事項(xiàng),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Android Studio 導(dǎo)入開源項(xiàng)目的正確姿勢及注意事項(xiàng)
- Android Studio3.0升級(jí)后使用注意事項(xiàng)及解決方法
- Android 程序執(zhí)行Linux命令的解決方法及注意事項(xiàng)
- 將Eclipse工程轉(zhuǎn)Android Studio工程的步驟與注意事項(xiàng)
- 詳解Android Service 使用時(shí)的注意事項(xiàng)
- Android 中ViewPager中使用WebView的注意事項(xiàng)
- Android TimerTask 的簡單應(yīng)用及注意事項(xiàng)
- Android 如何使用log4j及注意事項(xiàng)
- Android集成百度地圖開發(fā)流程和注意事項(xiàng)
- Android onNewIntent()觸發(fā)機(jī)制及注意事項(xiàng)
- Android Studio添加第三方庫的注意事項(xiàng)
- Android 程序申請權(quán)限注意事項(xiàng)
- Android Service自啟動(dòng)注意事項(xiàng)分析
- 關(guān)于Android WebView的loadData方法的注意事項(xiàng)分析
- Android NDK中socket的用法以及注意事項(xiàng)分析
- Android生存指南之:開發(fā)中的注意事項(xiàng)
- Android 編程下字庫的使用及注意事項(xiàng)
- 60條Android開發(fā)注意事項(xiàng)與經(jīng)驗(yàn)總結(jié)
相關(guān)文章
Android評分控件RatingBar使用實(shí)例解析
這篇文章主要為大家詳細(xì)介紹了Android評分控件RatingBar使用實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
Android動(dòng)態(tài)繪制餅狀圖的示例代碼
這篇文章主要介紹了Android動(dòng)態(tài)繪制餅狀圖的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
Android控件ToggleButton多狀態(tài)按鈕使用詳解
這篇文章主要為大家詳細(xì)介紹了Android控件ToggleButton多狀態(tài)按鈕的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Android實(shí)現(xiàn)滑動(dòng)刪除操作(PopupWindow)
這篇文章主要介紹了Android ListView結(jié)合PopupWindow實(shí)現(xiàn)滑動(dòng)刪除的相關(guān)資料,需要的朋友可以參考下2016-07-07
Android自定義LocationMarker的實(shí)現(xiàn)詳解
這篇文章主要為大家詳細(xì)介紹一個(gè)比較簡單的東西:自定義繪制Marker 其實(shí)就是自定義view, 跟軌跡沒太多關(guān)聯(lián),感興趣的小伙伴可以跟隨小編一起了解一下2023-02-02
Android使用Handler實(shí)現(xiàn)倒計(jì)時(shí)功能
這篇文章主要為大家詳細(xì)介紹了Android使用Handler實(shí)現(xiàn)倒計(jì)時(shí)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06
Android使用MulticastSocket實(shí)現(xiàn)多點(diǎn)廣播圖片
這篇文章主要為大家詳細(xì)介紹了Android使用MulticastSocket實(shí)現(xiàn)多點(diǎn)廣播圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01

