可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
Warning:The android.dexOptions.incremental
property is deprecated
and it has no effect on the build process.
/home/midhilaj/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/be3106efb0df111fe5a3f7b356dd070b/res/values/values.xml
Error:(246, 5) error: resource android:attr/fontVariationSettings not
found.
/project/bkup/7_march_2018/hyshoper/milla/build/intermediates/incremental/mergeDebugAndroidTestResources/merged.dir/values/values.xml
Error:(246, 5) error: resource android:attr/ttcIndex not found.
Error:(269) resource android:attr/ttcIndex not found. Error:(269)
resource android:attr/fontVariationSettings not found.
Error:java.util.concurrent.ExecutionException:
java.util.concurrent.ExecutionException:
com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for
details Error:failed linking references.
Error:java.util.concurrent.ExecutionException:
com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for
details Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error:
check logs for details Error:Execution failed for task
':milla:processDebugAndroidTestResources'.
Failed to execute aapt Information:9 errors Information:BUILD FAILED in 2s Information:1 warning Information:See complete output in console
How to solve this issue?
my dependencies
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'de.hdodenhof:circleimageview:2.2.0'
compile('com.alibaba.android:ultraviewpager:1.0.6.1@aar') {
transitive = true
}
compile('org.apache.httpcomponents:httpmime:4.3.6') {
exclude module: 'httpclient'
}
compile 'com.synnapps:carouselview:0.1.4'
compile 'com.sun.mail:android-mail:1.5.5'
compile 'com.sun.mail:android-activation:1.5.5'
implementation 'com.muddzdev:styleabletoast:2.0.2'
compile 'javax.annotation:javax.annotation-api:1.2'
compile 'me.grantland:autofittextview:0.2.+'
// base library
//slider
compile 'com.ss.bannerslider:bannerslider:1.8.0'
//noinspection GradleCompatible
compile 'jp.wasabeef:recyclerview-animators:2.2.7'
compile 'com.android.support:multidex:1.0.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.github.satyan:sugar:1.4'
compile 'com.android.support:multidex:1.0.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.android.support:percent:26.1.0'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.github.satyan:sugar:1.4'
compile 'jp.wasabeef:recyclerview-animators:2.2.6'
compile 'pl.droidsonroids.gif:android-gif-drawable:1.1.+'
compile 'com.afollestad.material-dialogs:core:0.9.4.2'
compile 'com.google.android.gms:play-services:9.8.0'
compile 'com.google.android.gms:play-services-auth:9.8.0'
compile 'com.google.android.gms:play-services-location:9.8.0'
compile 'com.google.firebase:firebase-core:9.8.0'
compile 'com.google.firebase:firebase-auth:9.8.0'
compile 'com.google.firebase:firebase-database:9.8.0'
compile 'com.google.firebase:firebase-config:9.8.0'
compile 'com.google.firebase:firebase-crash:9.8.0'
compile 'com.google.firebase:firebase-invites:9.8.0'
compile 'com.google.firebase:firebase-storage:9.8.0'
compile 'cn.pedant.sweetalert:library:1.3'
compile 'at.blogc:expandabletextview:1.0.3'
compile 'com.joanzapata.iconify:android-iconify-fontawesome:2.1.+'
compile 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'
compile 'com.android.support:design:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'com.android.support:support-v4:26.1.0'
compile 'com.android.support:recyclerview-v7:26.1.0'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.daimajia.slider:library:1.1.5@aar'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
implementation 'com.android.support:design:26.1.0'
}
回答1:
try to change the compileSdkVersion to:
compileSdkVersion 28
fontVariationSettings added in api level 28. Api doc here
回答2:
This is caused by an incompatibility with the android support library that changed to version 28. I solved the problem by forcing the build to use a lower support library. //like build gradle
configurations.all {
resolutionStrategy {
force 'com.android.support:support-v4:27.1.0'
}
}
My project built successfully immediately after I changed this. Hope this might help you too. I lost a day of development because of this!.
回答3:
For native Android apps (not Cordova) solution for me is:
Was:
implementation 'com.android.support:support-v13:+'
Now:
implementation 'com.android.support:support-v13:27.1.1'
回答4:
If you are updating to v28
change the compileSdkVersion to compileSdkVersion 28
回答5:
Another fix for Ionic 3 devs is to create build-extras.gradle
inside platforms/android and put following
configurations.all {
resolutionStrategy {
force 'com.android.support:support-v4:27.1.0'
}
}
Note that build-extras.gradle is not the same as build.gradle
回答6:
Usually it's because of sdk versions and/or dependencies.
For Cordova developers, put your dependencies settings in "project.properties
" file under CORDOVA_PROJECT_ROOT/platforms/android/
folder, like this:
target=android-26
android.library.reference.1=CordovaLib
android.library.reference.2=app
cordova.system.library.1=com.android.support:support-v4:26.1.0
cordova.gradle.include.2=cordova-plugin-googlemaps/app-tbxml-android.gradle
cordova.system.library.3=com.android.support:support-core-utils:26.1.0
cordova.system.library.4=com.google.android.gms:play-services-maps:15.0.0
cordova.system.library.5=com.google.android.gms:play-services-location:15.0.0
So if you use CLI "cordova build
", it will overwrite the dependencies section:
dependencies {
implementation fileTree(dir: 'libs', include: '*.jar')
// SUB-PROJECT DEPENDENCIES START
/* section being overwritten by cordova, referencing project.properties */
...
// SUB-PROJECT DEPENDENCIES END
}
If you are using proper libraries and its versions in project.properties, you should be fine.
回答7:
For Ionic 3 devs. I had to update the platforms/android/project.properties file ONLY on:
cordova.system.library.2
to be v4:28.0.0+ otherwise the build kept failing.
After doing so, my project.properties file contents are shown below:
target=android-26
android.library.reference.1=CordovaLib
cordova.system.library.1=com.android.support:support-v4:24.1.1+
cordova.system.library.2=com.android.support:support-v4:28.0.0+
cordova.system.library.3=com.android.support:support-v4:+
cordova.system.library.4=com.android.support:support-v4:25.+
cordova.system.library.5=com.android.support:appcompat-v7:25.+
cordova.gradle.include.1=cordova-plugin-googlemaps/starter-tbxml-android.gradle
cordova.system.library.6=com.google.android.gms:play-services-maps:15.0.1
cordova.system.library.7=com.google.android.gms:play-services-location:15.0.1
cordova.system.library.8=com.android.support:support-core-utils:26.1.0
cordova.system.library.9=com.squareup.okhttp3:okhttp-urlconnection:3.10.0
cordova.gradle.include.2=cordova-android-support-gradle-release/pasma-cordova-android-support-gradle-release.gradle
I hope this helps someone. Was a real problem for me.
回答8:
This was a pain in the ass for me! Especially after updating to Android Studio 3.2.1 and Gradle 4.6 (for Gradle developers).
I think there is more than one factor that could cause such a build exception. For me, I had the following lines of code in my gradle.properties file (using SDK version 27):
android.useAndroidX=true
android.enableJetifier=true
AndroidX is the alternative to Android's default Support Library and should be used when compiling and targeting SDK version 28 (API 28). Before the updating Android Studio and Gradle, I had added the lines above in preparation to eventually fully migrate to AndroidX to use SDK version 28 and the build ran successfully. It was only after the update that I received an error similar to that above:
error: resource android:attr/fontVariationSettings not found
Hope this helps.
回答9:
For me : My external library was using this attributes attr/fontVariationSettings and attr/ttcIndex so I downgrade my library version and sync project . everything fine
So now :
compileSdkVersion 27
implementation 'com.android.support:appcompat-v7:27.1.1'
and for future readers that library was google's easypermission.
implementation 'pub.devrel:easypermissions:2.0.0'
This lib is using sdkversion 28, I have to downgrade to 1.3.0