日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

开发工具总结(2)之全面总结Android Studio2.X的填坑指南

發(fā)布時(shí)間:2023/11/29 Android 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开发工具总结(2)之全面总结Android Studio2.X的填坑指南 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言:好多 Android 開(kāi)發(fā)者都在說(shuō)Android Studio太坑了,老是出錯(cuò),導(dǎo)致開(kāi)發(fā)進(jìn)度變慢,出錯(cuò)了又不知道怎么辦,網(wǎng)上去查各種解決方案五花八門(mén),有些可以解決問(wèn)題,有些就是轉(zhuǎn)來(lái)轉(zhuǎn)去的寫(xiě)的很粗糙,讓人看了云里霧里。我就很不爽這種做法,要么就不寫(xiě),要寫(xiě)就寫(xiě)出讓人一目了然的東西,所以在這里我就詳細(xì)了總結(jié)了一下Android Studio2.X的那些坑。

【tips】如果這里沒(méi)有你遇到的難題,歡迎留言提出來(lái),我能解決的就一定幫你搞定。

下一篇講解Android Studio3.0填坑指南


本文同步在github發(fā)布,有興趣的可以去看看。https://github.com/AweiLoveAndroid/The-pit-of-the-Android-Studio

這篇博客大體上分為以下幾個(gè)方面的內(nèi)容:

1)關(guān)于sdk 點(diǎn)擊此處鏈接: 12)關(guān)于jdk 點(diǎn)擊此處鏈接: 7、8、26、27、283)關(guān)于加速器(Intel HAXM)和啟動(dòng)問(wèn)題 點(diǎn)擊此處鏈接: 2、 3、 4、 5、 294)關(guān)于gradle 點(diǎn)擊此處鏈接:9、 15、 19、 23、255)關(guān)于混淆打包編譯 點(diǎn)擊此處鏈接:10、 226)關(guān)于依賴(lài)庫(kù)和插件 點(diǎn)擊此處鏈接:6、 11、 12、 13、 187)關(guān)于配置和源碼關(guān)聯(lián) 點(diǎn)擊此處鏈接:14、 16、 20、 21、 248)關(guān)于模擬器 點(diǎn)擊此處鏈接:17

1. Android Studio第一次啟動(dòng)時(shí)出現(xiàn) unable to access android sdk add-on list

出現(xiàn)原因:電腦沒(méi)有sdk,studio也沒(méi)有自帶sdk;

解決辦法:在安裝studio的目錄下找到bin\idea.properties,打開(kāi)這個(gè)文件,在末尾加上一行disable.android.first.run=true就行了,如果打不開(kāi)這個(gè)文件就用editplus或者sublime text打開(kāi)

2. 在安裝了新的 Android Studio 之后,AVD 新建并啟動(dòng)模擬器的時(shí)候報(bào)以下錯(cuò)誤:

emulator:ERROR:x86 emulation currently requires hardware acceleration!
Please ensure Intel HAXM is properly installed and usable.
CPU acceleration status: HAX kernel module is not installed!

出現(xiàn)原因:原來(lái)新的 Android SDK 在運(yùn)行虛擬機(jī)的時(shí)候,需要安裝 Intel HAXM:一個(gè)硬件加速器,為的是在x86平臺(tái)上加快安卓虛擬機(jī)的運(yùn)行。

解決方法: (1) 在安裝之前首先到 SDK 的安裝目錄下打開(kāi)SDK Manager:找到 Inter....(中間的很多單詞就不寫(xiě)了,重點(diǎn)看到 Inter 和 HAXM 就可以了點(diǎn)擊下載) HAXM 點(diǎn)擊install (2) 然后進(jìn)入到你SDK的目錄下,再進(jìn)入extras —> intel —> Hardware_Accelerated_Execution_Manager,可以看到HAXM的安裝文件:interhaxm-android.exe (3) 但是在安裝之前還有一個(gè)步驟,就是重啟計(jì)算機(jī),進(jìn)入開(kāi)機(jī)界面前按F2進(jìn)入到計(jì)算機(jī)的BIOS下,切換到 Configuration 找到下面的 Intel Virtual Technology。設(shè)置為Enable狀態(tài)(即允許虛擬機(jī)技術(shù)),然后再雙擊interhaxm-android.exe安裝,一直next就可以了

3. Intel 加速器 HAXM ,安裝過(guò)程中可以會(huì)出現(xiàn)如下錯(cuò)誤:

"Failed to configure driver: unknown error. Failed to open driver"

有以下幾個(gè)步驟可以解決該問(wèn)題: (1) 下載haxm_extra_workaround.zip 附件 (2) 解壓后提取hax_extract.cmd 文件到 HAXM 的解壓文件路徑中 (3) hax_extract.cmd 右鍵用管理員權(quán)限運(yùn)行。 執(zhí)行以上步驟后,基本可以解決以上提示的安裝異常問(wèn)題。

4. 因?yàn)殡娔X卡死,結(jié)束了qemu-system-i386.exe這個(gè)倒霉的進(jìn)程,導(dǎo)致我開(kāi)啟模擬器的時(shí)候一直提示我沒(méi)有安裝Intel HAXM,只好再安裝一遍,然后出現(xiàn)了以下問(wèn)題:

This computer meets the requirements for HAXM,but IntelVirtualization Technology(VT-x) is not turned on.
HAXM can be installed,but will not work until VT-x is enabled.
Please refer to the Inter HAXM documentation for more infomation.

解決辦法:

如果在安裝過(guò)程中出現(xiàn)Intel virtualization technology (vt,vt-x) is not enabled的錯(cuò)誤,需要進(jìn) 入的電腦的BIOS中修改,重啟電腦,進(jìn)入BIOS頁(yè)面(一般在開(kāi)機(jī)時(shí)按Del或F2,根據(jù)電腦不同,進(jìn)入方式不 同),找到Advanced Mode –> Advanced –> CPU Configuration –> Intel Virtual Technology設(shè)置為 Enabled(表示開(kāi)啟虛擬化)就可以了。重啟Android studio就可以了。

5. 關(guān)于intelhaxm-android.exe安裝的坑:不管是雙擊還是右鍵以管理員身份運(yùn)行都沒(méi)用,怎么解決?

解決辦法:

在SDK\extras\intel\Hardware_Accelerated_Execution_Manager中 找到intelhaxm-android.exe,右鍵解壓,雙擊setup.exe安裝就好了

6. Failed to resolve: junit:junit:4.12

出現(xiàn)原因:項(xiàng)目中引用了junit庫(kù)中的代碼,但是卻沒(méi)有相關(guān)的junit的依賴(lài)庫(kù)

解決辦法:添加相關(guān)的依賴(lài)庫(kù)引用,在項(xiàng)目的Module的build.gradle中添加如下代碼就OK了

repositories {maven { url 'http://repo1.maven.org/maven2' }}

7. 只要是API24以上的Android Studio,如果JDK低于1.8都會(huì)出現(xiàn)這個(gè)問(wèn)題,比如我列舉兩個(gè):

(1)Error:Execution failed for task':app:compileOrangeDevDebugJavaWithJavac'.compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.

(2)Android N requires the IDE to be running with Java 1.8 or later

解決辦法:把1.8以前的jdk都卸載掉,然后把環(huán)境變量配置成1.8的,就可以了.

8. Error:(1, 1) A problem occurred evaluating project ':app'.com/android/jack/api/ConfigNotSupportedException :Unsupported major.minor version 52.0

解決辦法:

(1)把1.8以前的jdk都卸載掉,使用1.8版本的jdk (2)File - Project Structure - SDK Location - JDK location,這里面有個(gè)選項(xiàng),可以選擇"use embedded JDK(recommended)",使用AS內(nèi)置的JDK。(不推薦這樣做)

9. Unknown host 'downloads.gradle.org' 這個(gè)問(wèn)題的解決:

使用android studio的gradle新建項(xiàng)目時(shí)候出現(xiàn):
Error:Unknown host 'downloads.gradle.org'.Enable Gradle 'offline mode' and sync project.
Learn about configuring HTTP proxies in Gradle
或者出現(xiàn) Error:No cached version listing for com.android.tools.build:gradle:0.12.+ av

解決方法如下:

不是第一次的話(huà)以后就可以點(diǎn)這里的clean了。

或者更直接點(diǎn),打開(kāi)cmd,找到你的項(xiàng)目根目錄,輸入gradle clean(前提是下載gradle,并且設(shè)置環(huán)境變量)

如果還是下載不了的話(huà),請(qǐng)看下文介紹:

具體的android studio 配置
安裝步驟:
1.先下載as,下載地址:https://developer.android.google.cn/studio/index.html 下載完直接安裝,安裝完打開(kāi)它,然后會(huì)出現(xiàn)下載gradle-XXX-bin.zip,根據(jù)Android Studio版本下載對(duì)應(yīng)的Gradle版本,下載這個(gè)一般都會(huì)卡死,不過(guò)不要緊,把a(bǔ)s關(guān)掉。
2.下載gradle-XXX-bin.zip,下載地址:http://services.gradle.org/distributions/,下載完之后,找到目錄: C:\Users\用戶(hù)名.gradle\wrapper\dists\gradle-XXX-bin\vruqmccc8532n7gr46qavsii8\ 把下載的gradle-XXX-bin.zip放到該目錄下,并且把gradle-XXX-bin.zip解壓到該目錄(解壓得到的文件為gradle-XXX)。
3.最關(guān)鍵的來(lái)了,把該目錄下的gradle-XXX-bin.zip.part文件刪除,然后復(fù)制gradle-XXX-bin.zip.lck,把它改為gradle-XXX-bin.zip
4.到此你就可以運(yùn)行Android Studio開(kāi)發(fā)了。

另附: Android Studio和gradle版本對(duì)照?qǐng)D請(qǐng)參考我的github Android Studio版本、Gradle版本、Build Tools版本三者之間對(duì)照詳細(xì)解答

10. 關(guān)于混淆出現(xiàn)的問(wèn)題:

(詳細(xì)請(qǐng)看 http://www.open-open.com/lib/view/open1490252413493.html)

問(wèn)題一:出現(xiàn) Unknown verification type [95] in stack map frame 錯(cuò)誤
Error:Execution failed for task
‘:app:transformClassesWithMultidexlistForNiannianDebug’.Java .io.IOException:
Can’t read [
E:SVNbroondontrunkcodebroodon_androidappbuildintermediatestransformsjarMergingnianniandebugjars11fcombined.jar]
(Can’t process class [com/tencent/wxop/stat/al.class] (Unknown verification type [95] in stack map frame))

原因分析:引用的第三方庫(kù)已經(jīng)混淆過(guò),再在本地進(jìn)行編譯混淆的時(shí)候就會(huì)報(bào)出這個(gè)錯(cuò)誤。

解決辦法: 則修改混淆器,重新進(jìn)行編譯,將新的混淆器覆蓋原來(lái)的混淆器,則可以解決。

問(wèn)題二:
Error:Execution failed for task ‘:app:transformClassesWithMultidexlistForNiannianDebug’.
proguard.KeepClassSpecification.(ZZZZZZLproguard/ClassSpecification;)V

原因分析:升級(jí) Android studio 以后,使用的混淆器版本不一致

解決辦法: 根據(jù) Android studio版本選擇與之對(duì)應(yīng)的混淆器版本

11. 這是什么原因?是因?yàn)?5535問(wèn)題?還是因?yàn)関7包重復(fù)了? 【待解決。。。】

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.

com.android.build.api.transform.TransformException: java.lang.RuntimeException:
java.lang.RuntimeException: com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:
com.android.ide.common.process.ProcessException: Return code 1 for dex process

12. non-zero exit value 1; 和 non-zero exit value 2; 和 non-zero exit value 3 問(wèn)題的解決:

Error:Execution failed for task ':app:transformClassesWithDexForDebug' com.Android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException:Process 'command 'F:\Program Files (x86)\Java\jdk1.8.0_31\bin\java.exe'' finished with non-zero exit value 1

問(wèn)題一: non-zero exit value 1原因分析:

原因分析:這個(gè)是因?yàn)橐蕾?lài)包重復(fù)了 (像v4和nineoldandroids),app中實(shí)現(xiàn)了對(duì)easeUI的依賴(lài),但是app和easeUI都添加了對(duì)v4這個(gè)包的依賴(lài)。

解決辦法:把v4包注釋修改之后,clean,rebuild一下,OK

問(wèn)題二: non-zero exit value 2

解決辦法:這個(gè)錯(cuò)誤在app的build.gradle里面添加下面這句就好了。android {defaultConfig {...multiDexEnabled true}}

問(wèn)題三: non-zero exit value 3

解決辦法:這個(gè)錯(cuò)誤就在app的bulid.gradle里面加上這句,再rebuild ,之后再運(yùn)行就行了。4g可以看電腦配置修改(2g,3g,6g,8g)。dexOptions {javaMaxHeapSize "4g"}

13. 打開(kāi)Android Studio報(bào)錯(cuò)

Plugin Error: required plugin “Android Support” is disabled

更詳細(xì)的錯(cuò)誤信息如下: Problems found loading plugins: Plugin "Google Analytics Uploader" was not loaded: required plugin "Android Support" is disabled. Plugin "SDK Updater" was not loaded: required plugin "Android Support" is disabled. Plugin "Android NDK Support" was not loaded: required plugin "Android Support" is disabled. Plugin "Google App Indexing" was not loaded: required plugin "Android Support" is disabled. Plugin "Google Cloud Tools For Android Studio" was not loaded: required plugin "Android Support" is disabled. Plugin "Google Cloud Testing" was not loaded: required plugin "Android Support" is disabled. Plugin "Google Services" was not loaded: required plugin "Android Support" is disabled.

解決辦法:

打開(kāi)File-Settings-Plugins,把報(bào)紅色的插件全部取消勾選,在把Android Support勾選,然后Apply-Save,重啟下studio 就可以了。

14. 自定義android studio的配置文件目錄后,無(wú)法正常安裝和卸載插件(貌似2.0版本之后的插件安裝卸載就有問(wèn)題了)是何原因?詳情看知乎 https://www.zhihu.com/question/38604486

解決方法:

方法(1):將idea.system.path/plugins下的文件移動(dòng)到{idea.config.path}/plugins下(如果是壓縮包,則需要先解壓)。 然后重啟一下AS就可以了。刪除也是,貌似也得手動(dòng)去文件夾下刪除)方法(2):修改AS安裝目錄下的idea.properties文件:idea.config.path=D:/.AndroidStudio2.0/config idea.system.path=D:/.AndroidStudio2.0/system idea.plugins.path=${idea.system.path}/plugins

15. 導(dǎo)入android studio項(xiàng)目,出現(xiàn)的問(wèn)題:

Error:Failed to open zip file.
Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
Re-download dependencies and sync project (requires network)
Re-download dependencies and sync project (requires network)

Android遇到的問(wèn)題15對(duì)應(yīng)的圖片1.png

這個(gè)錯(cuò)誤提示意思是:Gradle's dependency cache may be corrupt:(Gradle的依賴(lài)緩存可能是損壞的。)

  • 原因分析:我們要導(dǎo)入別人寫(xiě)好的工程時(shí),一般不需要更改什么,as智能判斷會(huì)提示我們是否需要對(duì)build gradle setting之類(lèi)的文件進(jìn)行修改。針對(duì)gradle個(gè)版本工具來(lái)說(shuō),如果不選擇更新直接原來(lái)的Gradle Version中的Gradle工具,再加上.gradle庫(kù)中沒(méi)用該版本時(shí),as會(huì)創(chuàng)建這樣的庫(kù),有時(shí)候這樣的庫(kù)會(huì)下載不完整,導(dǎo)致上面的問(wèn)題。

  • 解決辦法:

    1.下載 gradle

    下載地址很簡(jiǎn)單,以 下載gradle-3.5-all.zip為例子。不要去網(wǎng)上找這樣那樣的網(wǎng)站下載gradle工具了。瀏覽器輸入以下鏈接快速下載:
    services.gradle.org/distributions/gradle-3.5-all.zip

    2.復(fù)制替換

    下載完成后替換 C:\Users\Administrator.gradle\wrapper\dists\gradle-3.3-all
    exhrs6ca08n232b14ue48lbye中對(duì)應(yīng)的gradle-3.5-all.zip文件。
    正確解壓后的的文件如下圖所示:

Android遇到的問(wèn)題15對(duì)應(yīng)的圖片2.png 3.重新打開(kāi)項(xiàng)目,對(duì)工程中做一些配置如下,重新編譯一下,就沒(méi)問(wèn)題了: Android遇到的問(wèn)題15對(duì)應(yīng)的圖片3.png

16. Android studio 源碼無(wú)法關(guān)聯(lián),提示Souces for android api 25 platform not found:

解決方法:

1)找到j(luò)dk.table.xml這個(gè)文件jdk.table.xml文件路徑:(以win7為例,Administrator是電腦的用戶(hù)名,我當(dāng)前開(kāi)發(fā)工具版本號(hào)是Android Studio2.3) C:\Users\Administrator\.AndroidStudio2.3\config\options\jdk.table.xml2)在<sourcePath>節(jié)點(diǎn)下添加這一句<root type="simple" url="file://E:/android/sdk/sources/android-25" />修改后的部分配置文件如下:注意紅色方框部分,找到對(duì)應(yīng)的編譯版本,再添加對(duì)應(yīng)的源碼位置

17. com.android.ddmlib.SyncException: No space left on device

解決方法:

把模擬器里沒(méi)用的應(yīng)用或者demo卸載卸載。如果還不行,就重啟或者重新創(chuàng)建一個(gè)模擬器

18. app:transformClassesWithJarMergingForDebug

原因:重復(fù)依賴(lài)導(dǎo)致的.

解決辦法:

找到報(bào)錯(cuò)的那個(gè)提示,看上面報(bào)錯(cuò)的是哪個(gè)類(lèi),雙擊shift搜索一下,看這個(gè)報(bào)錯(cuò)的類(lèi)在哪個(gè)依賴(lài)庫(kù)里面用到了。 在AS中,選擇以project顯示項(xiàng)目,找到最下面的External Libraries,然后繼續(xù)找,找到相對(duì)應(yīng)的類(lèi)庫(kù)。 點(diǎn)開(kāi)之后發(fā)現(xiàn)了一個(gè)pom.xml,這里面就是關(guān)于這個(gè)jar的一些配置文件,往下找,發(fā)現(xiàn)了一個(gè)依賴(lài)庫(kù)的引用, 復(fù)制里面groupId,到你的app的build.gradle里,找到那個(gè)依賴(lài),添加{exclude group: 'XXX'} XXX換成剛才復(fù)制的groupId,這樣就 把這個(gè)groudId的引用去除掉。

19. processdebugresources

原因:build.gradle的兼容包和compileSdkVersion配置不對(duì)引起的

解決辦法:讓兼容包和compileSdkVersion匹配就OK了。關(guān)于這個(gè)版本匹配,請(qǐng)查看上面的第9點(diǎn)那張表格。

20. Android Studio配置androidannotations出現(xiàn) Error:Execution failed for task ':app:compileDebugJavaWithJavac'

原因: androidannotations配置環(huán)境對(duì)SDKtools, Build Tools, Platform Tools 以及 SDK Platform有要求,不匹配的話(huà)就會(huì)報(bào)錯(cuò)

解決辦法:打開(kāi)SDK Manager,更新SDKtools, Build Tools, Platform Tools 以及 SDK Platform到最新版本

21. Error:com.android.builder.internal.aapt.AaptException: Failed to crunch

原因: 項(xiàng)目路徑太長(zhǎng),導(dǎo)致有的資源文件整個(gè)路徑長(zhǎng)度超過(guò)了240個(gè)字符。這是Android Studio的一個(gè)坑。

解決辦法:

(1)重命名項(xiàng)目名,重新運(yùn)行一下。 (2)如果以上方法不行,就縮短路徑深度,減少路徑層級(jí),每一級(jí)路徑名字盡可能的縮短。

22. Android Studio編輯時(shí)發(fā)生的錯(cuò)誤

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class

原因:有3種情況可以導(dǎo)致這種錯(cuò)誤發(fā)生:

  • (1)導(dǎo)了重復(fù)jar包,或者導(dǎo)入了不同版本的同名jar包。

  • (2)AndroidStudio打簽名包時(shí)android.keystore 的密碼輸入錯(cuò)了

  • (3)有可能是Dex的方法數(shù)超過(guò)上限導(dǎo)致的。

解決辦法:

  • (1)把重復(fù)的jar包刪除掉,Rebuild Project,就OK了,如果,還有其他問(wèn)題,那證明你的app下的build.gradle依賴(lài)配置就有問(wèn)題。

  • (2)重新打包一個(gè)正式包,重新輸入簽名賬號(hào)密碼。

  • (3)在項(xiàng)目的build.gradle文件中添加multiDexEnabled true 搞定。

示例:

之前是在win7電腦的工程運(yùn)行在mac電腦,打開(kāi)就出了這樣的錯(cuò)誤。解決這個(gè)問(wèn)題的方式,給大家分析一下:

1.第一考慮是不是可以直接忽略第三方的屬性的錯(cuò)誤警告.找到項(xiàng)目下對(duì)應(yīng)的proguard-rules.pro文件,在proguard-rules.pro文件中添加如下代碼-keepattributes EnclosingMethod2.查看第三方j(luò)ar有沒(méi)有重復(fù)利用的,發(fā)現(xiàn)并沒(méi)有。繼續(xù)下一步。3.看看是不是Dex越界引起的問(wèn)題。在項(xiàng)目的build.gradle文件中添加以下代碼:multiDexEnabled true

重新編譯之后,項(xiàng)目成功移植了。

23. Android Studio版本更新后Gradle版本不匹配問(wèn)題

Error:(1, 0) The android gradle plugin version 2.3.0-beta1 is too old, please update to the latest version.
To override this check from the command line please set the ANDROID_DAILY_OVERRIDE environment variable to "xxxxxxx"

問(wèn)題截圖如下:

解決辦法:升級(jí)Gradle到合適版本,具體操作如下:

【特別說(shuō)明】Android Studio版本和gradle版本是相匹配的,不是隨意匹配的,版本不匹配就會(huì)出錯(cuò)。具體的Android Studio和gradle版本對(duì)照請(qǐng)看 Android Studio和gradle版本對(duì)照

  • (1)訪(fǎng)問(wèn) Gradle官網(wǎng)下載地址 來(lái)下載與之匹配的Gradle版本或者最新的Gradle工具包;

  • (2)解壓到Android Studio的gradle目錄下;

  • (3)File->Setting->Build,Exection,Deployment->Gradle->Use local gradle distribution,修改Gradle home為AS安裝
    目錄下最新的gradle版本;

  • (4)修改對(duì)應(yīng)Project的build.gradle中的com.android.tools.build:gradle:版本號(hào)為提示版本(如修改classpath 'com.android.tools.build:gradle:2.3.0-beta1'為classpath 'com.android.tools.build:gradle:2.3.0-beta3');

  • (5)修改gradle-wrapper.properties中distributionUrl上的版本號(hào)與當(dāng)前Gradle版本號(hào)一致(如修改distributionUrl=https\://services.gradle.org/distributions/gradle-3.2-all.zip為distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-all.zip);

  • (6)重新同步。

圖解如下所示:


Android遇到的問(wèn)題23解決辦法.png

24.AppConfig.java文件中文亂碼,log也亂碼問(wèn)題的解決。

文件亂碼

解決辦法:找到對(duì)應(yīng)的module或者lib,打開(kāi)里面的build.gradle,輸入以下代碼:

新版gradle用這個(gè):
tasks.withType(JavaCompile) {options.encoding = "UTF-8" }
舊版gradle用這個(gè):
tasks.withType(JavaCompile) {options.encoding = "UTF-8" }

【另外】:上述方法如果不管用,試著點(diǎn)擊Android studio右下角的文件編碼按鈕,圖中紅色區(qū)域,然后選擇UTF-8改選為GBK。

切換編譯語(yǔ)言格式

此時(shí)會(huì)彈出窗口提示是否重載文件,選擇“Reload”,基本也可以搞定。

如果設(shè)置之后還是不行,建議clean一下,重啟一下Android Studio。


25. failed to complete gradle execution問(wèn)題

使用Android Studio創(chuàng)建新項(xiàng)目后,一直出現(xiàn) “Failed to complete Gradle execution. Cause: A fatal exception has occurred. Program will exit”這個(gè)問(wèn)題。

failed to complete gradle execution問(wèn)題

解決方法有2個(gè)(2種方式實(shí)質(zhì)上還是一樣的)

  • 方法1:打開(kāi)工程的gradle.properties文件,添加如下配置項(xiàng),這個(gè)問(wèn)題應(yīng)該就不會(huì)出現(xiàn)了。

    org.gradle.jvmargs=-Xmx512m -XX:MaxPermSize=512m

如下圖所示:

  • 方法2:在Android Studio中,選擇File -> Settings -> Compiler -> 在VM options選項(xiàng)中填寫(xiě):

    -Xmx512m -XX:MaxPermSize=512m

如下圖所示:

26. 控制臺(tái)亂碼的解決方式:

舊版本的gradle

tasks.withType(Compile) {options.encoding = "UTF-8" }

新版本的gradle

tasks.withType(JavaCompile) {options.encoding = "UTF-8" }

27. AS 2.X如何支持java8?

AS 2.X最高是支持java7的環(huán)境,要想支持java8,可以做以下設(shè)置:

如果是安卓的module,可以做以下配置:

android {compileSdkVersion 25buildToolsVersion "25.0.3"defaultConfig {applicationId "com.lzw.java8demo"minSdkVersion 25targetSdkVersion 25versionCode 1versionName "1.0"testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"// 這個(gè)別忘記加上去jackOptions {enabled true}}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}// 指定java8編譯compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8}}

如果是創(chuàng)建的java的module,在gradle最后加上以下配置:

sourceCompatibility = "1.8"targetCompatibility = "1.8"

28. Error:Execution failed for task':apptransformClassesWithDesugarForDebug'

我看報(bào)錯(cuò)那里說(shuō)的是注解報(bào)的錯(cuò),我懷疑是jdk不一致導(dǎo)致的。我是打開(kāi)IDE報(bào)的錯(cuò),我把a(bǔ)s的配置導(dǎo)入到了IDE,打開(kāi)項(xiàng)目就報(bào)錯(cuò)了,as用的是jdk1.8,不知道這個(gè)IDE是不是要用jdk1.7?
目前還沒(méi)找到原因。。

29.AS打開(kāi)速度慢如何解決?

在Android Studio的bin目錄里,打開(kāi)idea.prooperties文件,添加

disable.android.first.run=true

這里沒(méi)提到的可以參考: https://my.oschina.net/Jieth/blog/489014,以后會(huì)逐漸補(bǔ)充進(jìn)去。


最后,推薦一本書(shū)給大家看看,希望對(duì)大家有幫助。

總結(jié)

以上是生活随笔為你收集整理的开发工具总结(2)之全面总结Android Studio2.X的填坑指南的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。