error: recurso android: attr / fontVariationSettings no encontrado

153

Advertencia: elandroid.dexOptions.incrementalLa propiedad está en desuso y no tiene ningún efecto en el proceso de compilación. /home/midhilaj/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/be3106efb0df111fe5a3f7b356dd070b/res/values/values.xml Error: (246, 5) error: recurso android: attr / fontVariationSettings no encontrado. /project/bkup/7_march_2018/hyshoper/milla/build/intermediates/incremental/mergeDebugAndroidTestResources/merged.dir/values/values.xml Error: (246, 5) error: recurso android: attr / ttcIndex no encontrado. Error: (269) recurso android: attr / ttcIndex no encontrado. Error: (269) recurso android: attr / fontVariationSettings no encontrado. Error: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: error AAPT2: verifique los registros para obtener detalles Error: error al vincular las referencias. Error: java.util.concurrent.

Error al ejecutar aapt. Información: 9 errores. Información: NO SE PUEDE CONSTRUIR en 2s. Información: 1 advertencia. Información: Vea la salida completa en la consola.

¿Cómo resolver este problema? mis dependencias

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'

}
Midhilaj
fuente
1
resolví mi problema aquí: stackoverflow.com/questions/49162538/…
Gilson
Hola, recibí el mismo problema, igual que tú, "Aplicación no instalada" al enviar el archivo .apk a otros. ¿Pueden ayudarme en esto?
Naveen

Respuestas:

264

intente cambiar la compileSdkVersion a:

compileSdkVersion 28

fontVariationSettings agregado en el nivel 28 de la API. Api doc aquí

zyc zyc
fuente
2
Tuve que cambiar a la versión 28 cuando agregué la última biblioteca de Kotlin Extensions al proyecto y recibí este error. ¡Gracias!
Micer
1
Esto solucionó el siguiente problema para mí: "recurso android: attr / fontVariationSettings no encontrado".
Adam Hurwitz
1
@Micer lo siento, no estoy seguro de lo que sucedió en tu proyecto, puede que necesites limpiarlo y reconstruirlo. o resolver las dependencias en el proyecto.
zyc zyc
2
@zyczyc Lo que quise decir es que estaba usando 27 y la actualización a 28 resolvió todos los problemas. Intenté limpiar y reconstruir antes sin suerte.
Micer
1
@anunixercoder Tuve el mismo problema. Sdk 28 no es una opción, así que busqué: aplicación: dependencias para conflictos y bloqueé las versiones zu a las dependencias compatibles de la API 27 como FilipFloryan a continuación (build-extras.gradle) mencionado.
Hank Lapidez
55

Esto se debe a una incompatibilidad con la biblioteca de soporte de Android que cambió a la versión 28. Resolví el problema obligando a la compilación a usar una biblioteca de soporte inferior. // como construir gradle

configurations.all {
        resolutionStrategy {
                force 'com.android.support:support-v4:27.1.0'
    }
} 

Mi proyecto se construyó con éxito inmediatamente después de cambiar esto. Espero que esto también te ayude. ¡Perdí un día de desarrollo por esto !.

akhil
fuente
77
¿Dónde poner estas líneas?
Kakashi
1
@Kakashi puso estas líneas en build.gradle (Módulo: aplicación)
akhil
1
@akhid ¿Te refieres a las plataformas / androides / app / build.gradle? En caso afirmativo, solo pegue esta línea en cualquier parte de ese archivo? He estado buscando algún momento para saber dónde poner estas líneas :(
Thomas Kim
19

Para aquellos que deben mantener compileSdkVersion 27y no pueden actualizar a Androidx todavía, no deben actualizar (o sobre) las versiones de dependencias en los siguientes enlaces. Estos enlaces son donde se introdujo el cambio radical. Debe encontrar una versión anterior que no use androidx.

https://firebase.google.com/support/release-notes/android#update_-_june_17_2019

https://developers.google.com/android/guides/releases#june_17_2019

Por ejemplo, los siguientes son compatibles con compileSdkVersion 27:

dependencies {
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:support-v4:27.1.1'
    implementation 'com.google.android.gms:play-services-maps:16.1.0'
    implementation 'com.google.android.gms:play-services-location:16.0.0'
    implementation 'com.google.firebase:firebase-core:16.0.9'
    implementation 'com.google.firebase:firebase-messaging:18.0.0'
}

Lo siguiente se romperá compileSdkVersion 27y solo será compatible con compileSdkVersion 28:

dependencies {
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.google.android.gms:play-services-maps:17.0.0'
    implementation 'com.google.android.gms:play-services-location:17.0.0'
    implementation 'com.google.firebase:firebase-core:17.0.0'
    implementation 'com.google.firebase:firebase-messaging:19.0.0'
}
Usuario regular
fuente
2
Gracias por dar una solución a aquellos que necesitan mantener temporalmente la versión 27 (la respuesta aceptada es demasiado simplista)
Don
¡Gracias! Tenía compileSdkVersion configurado en 28 pero no estaba usando las bibliotecas de Androidx y cambiar Firebase a una versión inferior ayudó.
michalbrz
9

Resuelvo este problema con la siguiente línea:

cordova plugin add cordova-android-support-gradle-release --save

Después de eso, la compilación fue exitosa.

John Prado
fuente
7

Si está actualizando a v28

cambie la compileSdkVersion a compileSdkVersion 28

Pablo Cegarra
fuente
@victorsosa app / build.gradle
Pablo Cegarra
Puse allí pero obtengo un error; ¿Puedes dar un ejemplo, por favor?
victor sosa
5

Para las aplicaciones nativas de Android (no Cordova), la solución para mí es:

Estaba:

implementation 'com.android.support:support-v13:+'

Ahora:

implementation 'com.android.support:support-v13:27.1.1'
Eugene Voronoy
fuente
5

Otra solución para los desarrolladores de Ionic 3 es crear build-extras.gradle dentro de plataformas / android y poner lo siguiente

configurations.all {
    resolutionStrategy {
        force 'com.android.support:support-v4:27.1.0'
    }
}

Tenga en cuenta que build-extras.gradle no es lo mismo que build.gradle

Filip Floryan
fuente
5

@Todo el problema se debe a los últimos cambios importantes en el servicio de Google Play y la versión de Firebase del 17 de junio de 2019.

Si estás en el proyecto Ionic o Cordova. Revisa todos los complementos donde tiene dependencia del servicio de Google Play y el servicio de Firebase con + marca

Ejemplo:

En mi integración de firebase cordova tuve com.google.firebase: firebase-core: + com.google.firebase: firebase-messaging: + Entonces, el plus siempre descargaba la última versión que causaba un error. Change + con número de versión según la versión del 15 de marzo de 2019 https://developers.google.com/android/guides/releases

Asegúrese de reemplazar los símbolos + con la versión real en el archivo build.gradle de la biblioteca cordova

bheema
fuente
3

Por lo general, se debe a las versiones y / o dependencias de SDK.

Para los desarrolladores de Cordova , coloque la configuración de sus dependencias en el project.propertiesarchivo " " debajo de la CORDOVA_PROJECT_ROOT/platforms/android/carpeta, así:

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

Entonces, si usa CLI " cordova build", sobrescribirá la sección de dependencias:

dependencies {
    implementation fileTree(dir: 'libs', include: '*.jar')
    // SUB-PROJECT DEPENDENCIES START 
   /* section being overwritten by cordova, referencing project.properties */
...
    // SUB-PROJECT DEPENDENCIES END
}

Si está utilizando las bibliotecas adecuadas y sus versiones en project.properties, debería estar bien.

Joanne
fuente
eliminar espacios adicionales despuésandroid.library.reference.2=app
Nicholas Vasilaki
¡Eres un ángel! Estaba destrozando mi cerebro con esto. Había elegido establecer el objetivo para Android 26, pero se estaba cargando en dependencias desde 28. ¡Gracias!
eliotRosewater
2

Tuve el mismo error, pero no sé por qué apareció. Después de buscar la solución, migré el proyecto a AndroidX (Refactor -> Migrar a AndroidX ...) y luego cambié manualmente las importaciones de clases completas, etc. y también en los archivos de diseño (RecyclerViews, ConstraintLayouts, Toolbars, etc.). También cambié compileSdkVersion y targetSdkVersion a la versión 28 y todo el proyecto / aplicación funciona bien.

Slepster
fuente
2

Si alguien tiene este error al usar phonegap o cordova con el plugin cordova-plugin-fcm-ng o cordova-plugin-fcm, la solución que funcionó para mí es crear el archivo de configuración adicional para gradle "build-extras.gradle" en el \ plataformas \ android \ carpeta de aplicaciones, y colocando las siguientes líneas

configurations.all {
 resolutionStrategy {
  force 'com.google.firebase:firebase-messaging:18.0.0'
  force 'com.google.firebase:firebase-core:16.0.8'
 }
}

Encontré esta solución leyendo esta página https://github.com/facebook/react-native/issues/25371 , en particular el comentario de shreyakupadhyay el 30/07/19 y consultando https://developers.google.com/android/ guías / lanzamientos # may_07_2019 sobre la última versión de las bibliotecas.

Alessandro Battistini
fuente
2

Encontré este error en un proyecto de flutter y todo lo que tenía que hacer era actualizar mi compileSdkVersion a 28.

PASOS:

  1. En el archivo build.gradle de su nivel de aplicación, busque compileSdkVersion
  2. Verifica la versión actual
  3. Si es menor que 28, actualícelo a 28

Como zyc zyc declaró anteriormente, la propiedad fontVariationSettings se agregó en el nivel 28 de API.

También puedes leer más sobre esto aquí

Otunba Tosyne Joseph
fuente
1

Para los desarrolladores de Ionic 3. Tuve que actualizar el archivo platform / android / project.properties SOLAMENTE en:

cordova.system.library.2

ser v4: 28.0.0+ de lo contrario, la compilación seguía fallando.

Después de hacerlo, el contenido de mi archivo project.properties se muestra a continuación:

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

Espero que esto ayude a alguien. Fue un verdadero problema para mí.

Tony Ross
fuente
En mi humilde opinión, ¿por qué no todos admiten lib, solo el segundo? 😊
Thomas Kim
1

¡Esto fue un fastidio para mí! Especialmente después de actualizar a Android Studio 3.2.1 y Gradle 4.6 (para desarrolladores de Gradle).

Creo que hay más de un factor que podría causar una excepción de compilación. Para mí, tenía las siguientes líneas de código en mi archivo gradle.properties (usando SDK versión 27):

android.useAndroidX=true
android.enableJetifier=true

AndroidX es la alternativa a la Biblioteca de soporte predeterminada de Android y debe usarse al compilar y apuntar a SDK versión 28 (API 28). Antes de actualizar Android Studio y Gradle, había agregado las líneas anteriores en preparación para eventualmente migrar completamente a AndroidX para usar la versión 28 del SDK y la compilación se ejecutó con éxito. Fue solo después de la actualización que recibí un error similar al anterior:

error: resource android:attr/fontVariationSettings not found

Espero que esto ayude.

marvatron
fuente
1

Para mí: mi biblioteca externa estaba usando estos atributos attr / fontVariationSettings y attr / ttcIndex, así que rebajé la versión de mi biblioteca y sincronicé el proyecto. todo bien

Y ahora :

 compileSdkVersion 27 
 implementation 'com.android.support:appcompat-v7:27.1.1'

y para futuros lectores, esa biblioteca era el permiso fácil de google.

implementation 'pub.devrel:easypermissions:2.0.0'

Esta lib está usando sdkversion 28, tengo que bajar a 1.3.0

Tejas Pandya
fuente
1
Hola, ¿cómo verificar si esta lib está usando sdkversion 28? 😊
Thomas Kim
1
@ThomasKim. Después de implementar esta biblioteca, recibí este error. Busco y verifico que attributes attr/fontVariationSettings and attr/ttcIndexpertenece 28solo a. Así que rebajé esta lib y está funcionando. Así que darse cuenta de que era la causa
Tejas Pandya
1
Ya veo, tengo una pregunta, ¿por qué no elegiste actualizar a 28? actualizarlo se resolverá demasiado bien (?) 😁 (por cierto, me enfrento a este problema durante casi 3 días y no sé qué plugin estaba mal 😭)
Thomas Kim
2
@ThomasKim porque al momento de escribir esa respuesta. hay algunos errores en 28 que están causando problemas en la representación de la vista de diseño. así que 27 es mejor para mí
Tejas Pandya
1

Solucioné el problema cambiando la versión de Android de destino a 28 en project.properties (target = android-28) e instalé cordova-plugin-androidx y cordova-plugin-androidx-adapter.

Manoj Alwis
fuente
1

error: recurso android: attr / fontVariationSettings no encontrado

Recibí este error cuando agregué la biblioteca ButterKnife pero al actualizar compileSdkVersion a 28 y targetSdk a 28 resolvió mi problema.

Raveesh GS
fuente
1

después de actualizar a Android 3.4.2 y FTC SDK5.2. Recibí estos errores al crear APK:

Error en la vinculación de recursos de Android C: \ Users \ idsid \ FTC \ SkyStone \ TeamCode \ build \ intermedtes \ incremental \ mergeDebugResources \ merged.dir \ values ​​\ values.xml: 1205: error: recurso android: attr / fontVariationSettings no encontrado. C: \ Users \ idsid \ FTC \ SkyStone \ TeamCode \ build \ intermedtes \ incremental \ mergeDebugResources \ merged.dir \ values ​​\ values.xml: 1206: error: recurso android: attr / ttcIndex no encontrado. error: error al vincular referencias.

Lo que hice fue agregar la siguiente sección para construir el proyecto gradle y el problema se solucionó.

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 28
                buildToolsVersion '29.0.2'
            }
        }
    }
}

Buena suerte.

Steven Wang
fuente
1

Tuve este problema repentinamente después de intentar extraer una dependencia dependiendo de sdk 28 (firebase crashlytics), pero luego decidí revertir los cambios.

Traté de refactorización automática Migrate to Androidx (que hace la mitad del trabajo), agreguéandroid.useAndroidX=true en gradle.propertiesalgunos puntos y que el proyecto volviera a funcionar.

Pero hubo muchos cambios antes de una entrega. No había forma de volver a compilar el proyecto con el SDK 27. git clean -fdEliminé$HOME/.gradle , y seguía viendo en androidx./gradlew :app:dependencies

Terminé eliminando ~/.AndroidStudio3.5/también (estoy en 3.5.3). Esto hace que el proyecto se vuelva a compilar, y descubrí el modo oscuro ...

Fred
fuente
0

Eliminé todos los complementos no utilizados en pubspec.yaml y en las bibliotecas externas para resolver el problema.

con sombrero
fuente
0

Acabo de recibir este error de AndroidX nuevamente después de que lo solucioné hace un año. Estoy usando Flutter.

Pude hacer lanzamientos usando Flutter 1.7.8 + hotfix.4, luego recientemente actualicé Flutter a la versión 1.17.4 y luego ya no pude compilar una versión de lanzamiento. Las compilaciones de depuración funcionaron bien.

TLDR : esta vez era un paquete que usaba otro paquete que no se actualizó correctamente para AndroidX
¡Asegúrese de actualizar sus paquetes! :)

Mensaje de error: parte importante

[+1099 ms] > Task :package_info:verifyReleaseResources FAILED 
[  +10 ms] FAILURE: Build failed with an exception. 
[  +10 ms] * What went wrong: 
[  +29 ms] Execution failed for task ':package_info:verifyReleaseResources'. 
[   +3 ms] java.util.concurrent.ExecutionException:com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource linking failed 
[   +7 ms]  ...\build\package_info\intermediates\res\merged\release\values\values.xml:171:error: resource android:attr/fontVariationSettings not found. 
[   +2 ms] ...\build\package_info\intermediates\res\merged\release\values\values.xml:172:error: resource android:attr/ttcIndex not found.     
[   +1 ms] error: failed linking references.

Mensaje de error: distracción

       FAILURE: Build failed with an exception.

       * What went wrong:
       A problem occurred configuring root project 'barcode_scan'.
       > SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

"fontVariationSettings no encontrado". es un error de AndroidX, que requiere que uses compileSdkVersion 28, pero ya lo tenía, así que sospecho que algo se implementó entre mis dos versiones de Flutter para ser más restrictivo.

Así que tuve que ir a buscar y actualizar paquetes y encontré eso. "package_info: ^ 0.3.2" tenía que ser "package_info: ^ 0.4.0" para que funcionara. Para hacerlo "más" a prueba de futuro, escríbalo así:

package_info: '>=0.4.0 <2.0.0'

Después de actualizar los paquetes, mi código base se compila para su lanzamiento nuevamente. Espero eso ayude.

Bo Jensen
fuente