1. 程式人生 > >Android Studio中替換aar包不生效

Android Studio中替換aar包不生效

1. 前言

最近遇到一個奇怪的問題。因為第三方的SDK要更新,是一個aar包,所以我就跟以往一樣,直接複製貼上替換掉,然後Synchronize(快捷鍵:Ctrl+Alt+Y) → Clean Project → Rebuild Project。可是我發現,新包的API我調用不了,Android Studio提示沒有這個方法。然後我就重新按照上面的流程再走一遍,還是不行。嘗試了很多次,依舊不行。查了資料,說是可能是快取的問題,按照推薦的方法嘗試了一下就可以了。下面我就詳細介紹一下解決方案。

2. 解決方案

1)複製新的aar包,替換掉舊的aar包

2)在ExternalLibrary中找出對應的aar包,右鍵選擇Analyze → Code Cleanup


3)清除Android的依賴快取,刪除C盤使用者目錄下的 .android\build-cache 中的所有檔案和 .gradle\caches\modules-2\files-2.1 下對應的檔案(檔名和aar包的名字一樣)


4)最後再做幾個操作:Synchronize(快捷鍵:Ctrl+Alt+Y) → Clean Project → Rebuild Project

5)如果還是不行,可以把 1)至 4)再試一次,一般一次就可以了

6)如果上面的幾個步驟還是不行的話,可以考慮在app主模組中的build.gradle檔案中加上

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}
有可能是第三方的SDK是在Java 7環境下編譯打包的,而我們自己的開發環境不是Java 7,這種情況就有可能造成新的aar包無法編譯成功,新的API自然無法拿到。