1. 程式人生 > >Android Studio 編譯提示 aapt.exe finished with non-zero exit value 1的解決方法

Android Studio 編譯提示 aapt.exe finished with non-zero exit value 1的解決方法

今天編譯的一箇舊專案,該專案是用的Gradle build tools 版本是2.2.0,我當前用的版本是3.2.0,。開啟工程正常編譯後可以安裝APK執行,改動了一些程式碼後,重新編譯提示出現以下錯誤:

aapt.exe finished with non-zero exit value 1

首先重新看了下改動的程式碼,編譯器並沒有提示錯誤或者警告,然後懷疑是快取導致的,那就清除後重新編譯下試試看吧。

“Build”-> “Clean Project” “Build” -> “Rebuild Project”

還是不行,萬一沒清乾淨呢?索性重啟了Android Studio,重新編譯,還是相同的提示。難道是Android Studio 3.2.0 向下相容不好?,於是升級了舊專案的Gradle build tools 版本為3.2.0。升級舊專案中需要注意的問題請看:

Android studio 3.2 升級詳解及Gradle配置,然後重新編譯,雖然還有錯誤,但錯誤已經不是finished with non-zero exit value 1 了,定位到錯誤所在,發現是strings.xml資原始檔中一個改動後的字串文字中存在【’】單引號,需要加反斜槓轉義。emmm,實在是無語,折騰了這麼半天,原來就這麼簡單解決了。但是為什麼之前編譯器沒有錯誤或者警告提示呢?,懷疑可能是Android Studio的相容性問題。

其他的一些解決方案,雖然沒有解決我遇到的問題,但還是記錄下來,方便以後排錯:

  1. 對圖片的審查嚴格。解決思路:把jpg格式的圖片全部替換為png格式的圖片
  2. 新增的包重複。解決思路:把build.gradle新增的重複的包去掉
  3. 新增的程式碼中存在某些包沒有引用進來,找到這個包,然後新增引用。