1鳖目、Android Studio編譯報錯
Error:Could not find common.jar (android.arch.core:common:1.0.0)
jcenter已經(jīng)刪掉了android.arch.core庫养铸,所以需要從 maven { url "https://maven.google.com" }中獲取android.arch.core:common-1.1.0.jar
類似下面這種情況的虎忌,把順序調(diào)整一下就就行了
allprojects {
repositories {
jcenter()
maven {url 'https://jitpack.io'}
maven {url "https://maven.google.com"}
}
}
改為:
allprojects {
repositories {
maven {url "https://maven.google.com"}
jcenter()
maven {url 'https://jitpack.io'}
}
}
2轧邪、Android Studio 3 Gradle插件報錯:AAPT2 error: check logs for details
Android的Gradle 3.0插件默認(rèn)啟動Aapt2敞贡,目的是為了改進增量資源的處理稍走。
如果有問題可以退回到之前的版本皂林,打開gradle.properties,添加如下內(nèi)容
android.enableAapt2=false
如繼續(xù)報錯則修改一下內(nèi)容
classpath 'com.android.tools.build:gradle:3.0.1'
3乱凿、Android Studio 3.1 編譯報錯:supported starting starting with android 0 --min-api 26
//fix: build 27.0.3 Android-O 限制
android{
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
4顽素、Dex archives: setting .DEX extension only for .CLASS files
clean 即可
5、android編譯時報com.android.dx.cf.iface.ParseException異常
在android項目中引入其他jar包時徒蟆,如果遇到類似于以下異常:
com.android.dx.cf.iface.ParseException
這其實是jdk版本兼容性問題胁出。你引入的jar包編譯環(huán)境(比如是1.8)要高于你android中默認(rèn)的jdk編譯版本(比如1.6)。要解決這個問題段审,就必須保證你android項目的編譯jdk版本要高于等于你引入jar包的編譯jdk版本全蝶,然后重新編譯就好了。有兩種解決方案:
1寺枉、低于等于你android的jdk版本來重新編譯你要引入的jar包(不推薦)
如果引入的jar是開源框架抑淫,你要去修改jar的編譯版本比較麻煩,所以不推薦
2型凳、修改android項目的jdk版本丈冬。
6、More than one file was found with OS independent path 'lib/****/xxxx.so'
在引用三方庫時多出現(xiàn)上面問題甘畅,主要是多個庫依賴了同名的so 文件,比如libc++_shared.so
此時只要加入如下代碼即可
android{
packagingOptions {
pickFirst 'lib/*****/xxx.so'
}
}
6、Manifest merger failed : uses-sdk:minSdkVersion 18 cannot be smaller than version 21 declared in library
再引入一些高版本庫時常出現(xiàn)上面錯誤疏唾,比如 androidx.camera蓄氧,而AndroidStudio 給了建議如下
Suggestion: use a compatible library with a minSdk of at most 18,
or increase this project's minSdk version to at least 21,
or use tools:overrideLibrary="androidx.camera.core" to force usage (may lead to runtime failures)
但再APP 中應(yīng)該怎么用呢?
<!-- 多個的話 用「,」分割-->
<uses-sdk tools:overrideLibrary="androidx.camera.view,androidx.camera.camera2,androidx.camera.lifecycle"/>
7槐脏、 Failed to notify project evaluation listener
工程中g(shù)radle/wrapper目錄底下的gradle-wrapper.properties文件是否丟失