開發(fā)工具總結(jié)(2)之全面總結(jié)Android Studio2.X的填坑指南

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

【tips】如果這里沒有你遇到的難題珊随,歡迎留言提出來,我能解決的就一定幫你搞定柿隙。

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


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

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

1)關(guān)于sdk  點(diǎn)擊此處鏈接: 1

2)關(guān)于jdk  點(diǎn)擊此處鏈接: 7禀崖、8衩辟、26、27波附、28

3)關(guān)于加速器(Intel HAXM)和啟動(dòng)問題   點(diǎn)擊此處鏈接: 2艺晴、 3、 4掸屡、 5封寞、 29

4)關(guān)于gradle  點(diǎn)擊此處鏈接:9、 15仅财、 19狈究、 23、25

5)關(guān)于混淆打包編譯  點(diǎn)擊此處鏈接:10盏求、 22

6)關(guān)于依賴庫和插件  點(diǎn)擊此處鏈接:6抖锥、 11、 12碎罚、 13磅废、 18

7)關(guān)于配置和源碼關(guān)聯(lián)  點(diǎn)擊此處鏈接:14、 16魂莫、 20还蹲、 21、 24

8)關(guān)于模擬器  點(diǎn)擊此處鏈接:17

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

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

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

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)原因:原來新的 Android SDK 在運(yùn)行虛擬機(jī)的時(shí)候谜喊,需要安裝 Intel HAXM:一個(gè)硬件加速器,為的是在x86平臺(tái)上加快安卓虛擬機(jī)的運(yùn)行倦始。

解決方法:
(1) 在安裝之前首先到 SDK 的安裝目錄下打開SDK Manager:
  找到 Inter....(中間的很多單詞就不寫了,重點(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)入開機(jī)界面前按F2進(jìn)入到計(jì)算機(jī)的BIOS下账蓉,
  切換到 Configuration 找到下面的 Intel Virtual Technology。設(shè)置為Enable狀態(tài)(即允許虛擬機(jī)技術(shù))逾一,
  然后再雙擊interhaxm-android.exe安裝,一直next就可以了

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

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

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

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

解決辦法:

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

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

解決辦法:

在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庫中的代碼珠插,但是卻沒有相關(guān)的junit的依賴庫

解決辦法:添加相關(guān)的依賴庫引用,在項(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è)問題颖对,比如我列舉兩個(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è)問題的解決:

使用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

解決方法如下:

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

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

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

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

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

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

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

★★★★ 問題一:出現(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))

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

解決辦法: 則修改混淆器刷允,重新進(jì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問題天通?還是因?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 問題的解決:

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

★★★★ 問題一: non-zero exit value 1原因分析:

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

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

★★★★ 問題二: non-zero exit value 2

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

    }

★★★★ 問題三: non-zero exit value 3

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

13. 打開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.

解決辦法:

  打開File-Settings-Plugins悼瘾,把報(bào)紅色的插件全部取消勾選囊榜,在把Android Support勾選审胸,然后Apply-Save,重啟下studio 就可以了卸勺。

14. 自定義android studio的配置文件目錄后砂沛,無法正常安裝和卸載插件(貌似2.0版本之后的插件安裝卸載就有問題了)是何原因?詳情看知乎 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)的問題:

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遇到的問題15對(duì)應(yīng)的圖片1.png

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

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

  • 解決辦法:

      1.下載 gradle
    

    下載地址很簡單膏萧,以 下載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遇到的問題15對(duì)應(yīng)的圖片2.png
    3.重新打開項(xiàng)目认境,對(duì)工程中做一些配置如下,重新編譯一下挟鸠,就沒問題了:
Android遇到的問題15對(duì)應(yīng)的圖片3.png

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

解決方法:

1)找到j(luò)dk.table.xml這個(gè)文件

jdk.table.xml文件路徑:(以win7為例亩冬,Administrator是電腦的用戶名艘希,我當(dāng)前開發(fā)工具版本號(hào)是Android Studio2.3)
C:\Users\Administrator\.AndroidStudio2.3\config\options\jdk.table.xml

2)在<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

解決方法:

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

18. app:transformClassesWithJarMergingForDebug

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

解決辦法:

找到報(bào)錯(cuò)的那個(gè)提示营袜,看上面報(bào)錯(cuò)的是哪個(gè)類撒顿,雙擊shift搜索一下,看這個(gè)報(bào)錯(cuò)的類在哪個(gè)依賴庫里面用到了荚板。
在AS中凤壁,選擇以project顯示項(xiàng)目吩屹,找到最下面的External Libraries,然后繼續(xù)找拧抖,找到相對(duì)應(yīng)的類庫煤搜。
點(diǎn)開之后發(fā)現(xiàn)了一個(gè)pom.xml,這里面就是關(guān)于這個(gè)jar的一些配置文件唧席,往下找擦盾,發(fā)現(xiàn)了一個(gè)依賴庫的引用,
復(fù)制里面groupId淌哟,到你的app的build.gradle里迹卢,找到那個(gè)依賴,添加{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ì)報(bào)錯(cuò)

解決辦法:打開SDK Manager狰晚,更新SDKtools, Build Tools, Platform Tools 以及 SDK Platform到最新版本

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

原因: 項(xiàng)目路徑太長筒饰,導(dǎo)致有的資源文件整個(gè)路徑長度超過了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ù)超過上限導(dǎo)致的雷滋。

解決辦法:

  • (1)把重復(fù)的jar包刪除掉不撑,Rebuild Project,就OK了晤斩,如果焕檬,還有其他問題,那證明你的app下的build.gradle依賴配置就有問題澳泵。

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

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

示例:

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

1.第一考慮是不是可以直接忽略第三方的屬性的錯(cuò)誤警告.找到項(xiàng)目下對(duì)應(yīng)的proguard-rules.pro文件,在proguard-rules.pro文件中
  添加如下代碼

-keepattributes EnclosingMethod

2.查看第三方j(luò)ar有沒有重復(fù)利用的兔仰,發(fā)現(xiàn)并沒有茫负。繼續(xù)下一步。

3.看看是不是Dex越界引起的問題乎赴。在項(xiàng)目的build.gradle文件中添加以下代碼:

multiDexEnabled true

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

23. Android Studio版本更新后Gradle版本不匹配問題

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"

問題截圖如下:

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

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

  • (1)訪問 Gradle官網(wǎng)下載地址 來下載與之匹配的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.zipdistributionUrl=https\://services.gradle.org/distributions/gradle-3.5-all.zip)胁出;

  • (6)重新同步型型。

圖解如下所示:


Android遇到的問題23解決辦法.png

24.AppConfig.java文件中文亂碼,log也亂碼問題的解決全蝶。

文件亂碼

【解決方案1】:找到對(duì)應(yīng)的module或者lib闹蒜,打開里面的build.gradle,輸入以下代碼:

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

【解決方案2】:點(diǎn)擊Android studio右下角的文件編碼按鈕抑淫,圖中紅色區(qū)域绷落,然后選擇UTF-8改選為GBK。

切換編譯語言格式

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

【解決方案3】:點(diǎn)擊菜單Flie -> Settings -> Editor -> File Encodings催式,然后文件編碼都修改成“UTF-8”,重啟Android Studio即可函喉。如下圖:

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


25. failed to complete gradle execution問題

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

failed to complete gradle execution問題

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

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

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

如下圖所示:

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

      -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,可以在module的build.gradle里面添加以下配置:

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    
    defaultConfig {
        applicationId "com.lzw.java8demo"
        minSdkVersion 25
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        // 這個(gè)別忘記加上去
        jackOptions {
            enabled true
        }

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    // 指定java8編譯
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
        
        // 或者你可以用下面這種寫法:   
        // sourceCompatibility = JavaVersion.VERSION_1_8
        // targetCompatibility = 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ò)那里說的是注解報(bào)的錯(cuò)排抬,我懷疑是jdk不一致導(dǎo)致的。我是打開IDE報(bào)的錯(cuò)授段,我把a(bǔ)s的配置導(dǎo)入到了IDE蹲蒲,打開項(xiàng)目就報(bào)錯(cuò)了,as用的是jdk1.8侵贵,不知道這個(gè)IDE是不是要用jdk1.7届搁?
目前還沒找到原因。窍育。

29.AS打開速度慢如何解決卡睦?

在Android Studio的bin目錄里,打開idea.prooperties文件漱抓,添加

disable.android.first.run=true 

30. Could not find com.android.tools.lint:lint-gradle:XXXX 問題的解決

【原因分析】打包出現(xiàn)的錯(cuò)誤表锻。

【解決方法】

在app目錄里面的build.gradle 加上以下代碼,然后重新運(yùn)行項(xiàng)目就OK了:

 lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }

31. emulator: ERROR: x86 emulation currently requires hardware acceleration

【原因】HAXM沒有安裝辽旋,或者BOIS界面沒有啟用Virtualization Technology浩嫌。

1.安裝HAXM

2.sdk\extras\intel\Hardware_Accelerated_Execution_Manager文件夾雙擊安裝一下intelhaxm-android.exe。
如果安裝成功补胚,去AS重新模擬器就可以了码耐。

3.BOIS界面啟用Virtualization Technology,具體根據(jù)電腦型號(hào)溶其,自行百度一下骚腥,不同電腦設(shè)置不一樣。


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


最后,推薦一本書給大家看看厢绝,希望對(duì)大家有幫助契沫。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市昔汉,隨后出現(xiàn)的幾起案子懈万,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件会通,死亡現(xiàn)場離奇詭異口予,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)涕侈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門沪停,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人裳涛,你說我怎么就攤上這事木张。” “怎么了调违?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵窟哺,是天一觀的道長。 經(jīng)常有香客問我技肩,道長且轨,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任虚婿,我火速辦了婚禮旋奢,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘然痊。我一直安慰自己至朗,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布剧浸。 她就那樣靜靜地躺著锹引,像睡著了一般。 火紅的嫁衣襯著肌膚如雪唆香。 梳的紋絲不亂的頭發(fā)上嫌变,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音躬它,去河邊找鬼腾啥。 笑死,一個(gè)胖子當(dāng)著我的面吹牛冯吓,可吹牛的內(nèi)容都是我干的倘待。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼组贺,長吁一口氣:“原來是場噩夢啊……” “哼凸舵!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起失尖,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤啊奄,失蹤者是張志新(化名)和其女友劉穎贿条,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體增热,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年胧辽,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了峻仇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡邑商,死狀恐怖摄咆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情人断,我是刑警寧澤吭从,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站恶迈,受9級(jí)特大地震影響涩金,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜暇仲,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一步做、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧奈附,春花似錦全度、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至佑颇,卻和暖如春顶掉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背漩符。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來泰國打工一喘, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人嗜暴。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓凸克,卻偏偏與公主長得像,于是被迫代替她去往敵國和親闷沥。 傳聞我的和親對(duì)象是個(gè)殘疾皇子萎战,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容