您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關怎樣更新AndroidStudio3.0,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
安裝
如果你從Android Studio內部點擊更新的話,會跳轉到Android的官網,沒有梯子的同學可以去這個網站下載更新:
Android Studio3.0正式版安裝過程中遇到的問題
1、Gradle Sync failed:
Gradle sync failed: Cause: com.android.build.gradle.api.BaseVariant.getOutputs()Ljava/util/List; Consult IDE log for more details (Help | Show Log) (8s 123ms)
其實一開始不是這個錯,最開始是一個redownload的一個錯,后來LZ把2.3版本的給刪了,緩存給清除了,然后就變成這個錯了。既然有錯,那就解決唄,順手百度了一個,下面看看stackoverflow的解決方案
這個方法確實也適用于我,把ButterKnife降級之后就OK了。如果有其他更好的解決方法,歡迎私信我,有償給發紅包。“一個問題的解決是為了更好的迎接下一個問題的出現”——魯迅
解決方案1:把項目中依賴的ButterKnife降級到8.4.0
解決方案2:把gradle plugin版本降低至2.3.3 重新編譯下就可以了(這里感謝吊兒郎當小黑青年)
2、Unable to resolve dependency for:
第一眼看這個錯的時候我以為我setting.gradle中沒有依賴appCommon,看完之后明明確實依賴了,而且這是一個老項目,在AS2.3版本的時候很正常,然后我就知道這又是一個坑,無奈的又去上了一把Internet,然后試過網上說的在buildTypes中加入preview節點,然而并沒有什么卵用,查了半天還是沒有找到解決的方法,后來看著這段報錯信息的時候,我看到了signingConfigs,我想到gradle中好像有這么個節點,抱著試一試的態度我刪了那個節點,然后,臥槽臥槽臥槽,可以成功編譯了,這是不是有一種躺著過坑的趕腳。如果有其他更好的解決方法,歡迎私信我,有償給發紅包
解決方案:把項目中的signingConfigs節點刪除掉就好了,如果你擔心多渠道打包的事情,那么就用打包工具吧。
以下是群里的朋友遇到的一些問題:
3、app:transformDexArchiveWithExterLibsDexMergeForDebug
解決方案:將電腦中的.gradle目錄刪除掉(清除掉gradle緩存)重新build。
參考stackoverflow
解決方案詳解在這里
4、gradle打包,自定義apk名稱代碼報錯(Cannot set the value of read-only property 'outputFile' )
Error:(56, 0) Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=debug, filters=[]}} of type com.android.build.gradle.internal.api.ApkVariantOutputImpl. <a href="openFile:D:\eclipseCode\ipay-android\xinlebao\build.gradle" rel="external nofollow" >Open File</a>
解決方案:修改文件名代碼請這樣寫
android.applicationVariants.all { variant -> variant.outputs.all { outputFileName = "xinlebao_${defaultConfig.versionName}_${releaseTime()}.apk" } }
解決方案:在gradle.properties中關閉APPT2 編譯
5、AAPT2 編譯報錯 AAPT2 error
復制代碼 代碼如下:
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
解決方案:在gradle.properties中關閉APPT2 編譯
android.enableAapt2=false
注:如果是eclipse轉到as上的項目,可能沒有gradle.properties文件,請在項目根目錄中手動創建
6、apt插件問題(Error:Cannot choose between the following configurations of project :mylibrary:)
Error:Cannot choose between the following configurations of project :mylibrary: - debugApiElements - debugRuntimeElements - releaseApiElements - releaseRuntimeElements All of them match the consumer attributes:
解決方案:如下
//1.在project的build.gradle中刪除 classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' //2.在module的build.gradle中刪除 apply plugin: 'android-apt' //3.將module的build.gradle文件中的dependency apt 'com.jakewharton:butterknife-compiler:8.1.0' //改為 annotationProcessor 'com.jakewharton:butterknife-compiler:8.1.0'
好了,以上就是最近更新3.0所遇到的一些問題。
Android Studio 3.0
1、.gradle文件
哇塞,問題解決之后就想著趕緊創建一個新的項目來看看有啥變化,首先一個變化比較大的是.gradle文件:
我們可以看到,谷歌爸爸把buildToolsVersion構建工具的版本給“干掉了”,在以前的版本中,buildToolsVersion也會給項目的構建帶來很多錯,現在谷歌爸爸把它給“干掉了”;還有就是下面的依賴換成了implementation,那么它和compile有什么區別呢?別著急,喝杯茶聽我細細道來:
compile和api
api完全等同于compile,二者沒有區別。我們大家都知道,隨著Android版本的更新,有很多過時的類和方法,compile亦是如此,我們可以把compile理解成api的過去式。
api和implementation
這兩個是AS3.0版本中新增的指令,下面用一張圖來說明一啊兩者的區別:
圖片參考
有想詳細了解的同學,請參考官方的
2、支持Kotlin
還在初學Kotlin語言的同學有福了,AS3.0支持將Java代碼直接轉成Kotlin代碼,下面我們通過一段VCR來認識一下這個功能:
在java文件中,選中你要轉換的代碼,然后在頂部選擇Code——>Convert Java File to Kotlin File進行轉換就好了,轉換之后,這就是一個Kotlin文件了。
3、logcat欄
在AS上幾個版本中,在Logcat還是Android Monitor的時候,里面有很多東西,網絡啊,內存啊,CPU啊什么的,AS3.0中,谷歌將其分開了,Logcat就單獨放出來了,之前那個看網絡,內存,CPU的單獨拎出來了,一個叫Android Profiler的東西:
是不是很帥,據說這玩意兒還自帶抓包功能哦(這是LZ最喜歡的一個功能)。只不過默認是關閉的,我們要手動把它開起來。進入Run——>Edit Configurations,然后把下面這個鉤上就好了:
需要注意的是,你項目中的API版本得是API26以下,而且你的手機版本得是Android5.0以上才能使用抓包功能。開啟之后,我們來抓個包試試吧:
在手機上發起一次網絡請求,NETWORK那一欄會發生明顯的變化,我們選擇那個區域進行抓包,可以看到請求了一個接口MainServlet(如果該區域下會請求多個接口,則會一一列出來),然后我們點擊MainServlet,就會出現后臺傳過來的Json,Header之類的信息,怎么樣,是不是很屌,以后再也不用再麻煩測試幫你抓包了,也不用再裝什么其他軟件了。CPU和MEMORY也一樣,都具有記錄當前頁面的數據,你也可以根據它所記錄的數據進行相應的分析。這兩個就不展示了,有興趣的同學可以更新之后自己玩玩。最后需要注意的是開啟這個之后會降低應用程序的構建速度,因此只有在你要開始對應用程序進行概要分析時,再啟用它。
4、文件管理器
AS3.0中,文件管理器工具允許和你的AS連接的手機無縫交互,你可以在AS3.0上查看,復制并刪除設備上的文件。當檢查由應用程序創建的文件或是要講文件傳輸到設備時,非常有用:
data/data/app_name/ 包含存儲在內部存儲上的應用程序的數據文件 sdcard/ 包含存儲在外部用戶存儲上的用戶文件 (圖片等)
5、支持Java8
同樣,喜歡寫lambda的同學也有福利了,這次AS的改版支持了Java8,可以直接將Java代碼格式成lambda格式的,但是你得給你的項目設置成支持Java8,右鍵你的module,選擇open Module Settings,進去之后按照如下設置就可以了:
這樣你就能使用lambda表達式了,系統會自動提醒你哪里可以轉換成lambda表達式,是不是好智能:
看完上述內容,你們對怎樣更新AndroidStudio3.0有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。