помилка: ресурс android: attr / fontVariationSettings не знайдено


153

Попередження:android.dexOptions.incrementalвластивість застаріло і це не впливає на процес збирання. /home/midhilaj/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/be3106efb0df111fe5a3f7b356dd070b/res/values/values.xml Помилка: (246, 5) помилка: ресурс android: attr / fontVariationSettings не знайдено. /project/bkup/7_march_2018/hyshoper/milla/build/intermediates/incremental/mergeDebugAndroidTestResources/merged.dir/values/values.xml Помилка: (246, 5) помилка: ресурс android: attr / ttcIndex не знайдено. Помилка: (269) ресурс android: attr / ttcIndex не знайдено. Помилка: (269) ресурс android: attr / fontVariationSettings не знайдено. Помилка: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: помилка AAPT2: перевірити журнали для деталей Помилка: помилка посилання посилань. Помилка: java.util.concurrent.

Не вдалося виконати aapt Інформація: 9 помилок Інформація: BUILD FAILED за 2s Інформація: 1 Інформація про попередження: Дивіться повний вихід у консолі

Як вирішити це питання? мої залежності

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
я вирішив тут свою проблему: stackoverflow.com/questions/49162538/…
Гілсон

Привіт, у мене такий самий випуск, як і у вас, "Додаток не встановлено", надсилаючи .apk файл іншим. Чи можете ви мені допомогти в цьому.
Naveen

Відповіді:


264

спробуйте змінити compileSdkVersion на:

compileSdkVersion 28

fontVariationSettings додано в api рівні 28. Тут же знаходиться Api doc


2
Мені довелося перейти на версію 28, коли я додав до проекту останню бібліотеку Kotlin Extensions, і я отримував цю помилку. Дякую!
Місер

1
Це вирішило для мене таке питання: "ресурс android: attr / fontVariationSettings не знайдено."
Адам Гурвіц

1
@ Більш вибачте, я не впевнений, що трапилось у вашому проекті, можливо, вам потрібно чистити і перебудувати. або вирішити залежності в проекті.
zyc zyc

2
@zyczyc Я мав на увазі те, що я використовував 27 і модернізував до 28, вирішив усі проблеми. Я спробував очистити і відновити раніше, не пощастивши.
Micer

1
@anunixercoder У мене була така ж проблема. Sdk 28 не є варіантом, тому я шукав: app: покарання для конфліктів і заблокував версії zu до api 27 сумісних залежностей, таких як FilipFloryan нижче (build-extras.gradle), згаданий нижче.
Генк Лапідес

55

Це викликано несумісністю з бібліотекою підтримки Android, яка змінилася на версію 28. Я вирішив проблему, змусивши збірку використовувати нижчу бібліотеку підтримки. // люблять будувати градле

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

Мій проект був успішно побудований відразу після того, як я змінив це. Сподіваємось, це теж може допомогти вам. Я втратив день розвитку через це !.


7
куди поставити ці рядки?
Какаші

1
@Kakashi помістив ці рядки в build.gradle (Модуль: додаток)
akhil

1
@akhid Ви маєте на увазі платформи / андроїди / app / build.gradle? Якщо так, просто вставте цей рядок кудись у цьому файлі? Я шукав колись, щоб знати, куди подіти цю лінію :(
Томас Кім,

19

Для тих, хто має зберегти compileSdkVersion 27та не в змозі оновити до androidx , ви не повинні оновлювати до (або більше) версії залежностей за наступними посиланнями. Ці посилання - там, де були внесені переломні зміни. Ви повинні знайти більш ранню версію, яка не використовує androidx.

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

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

Наприклад, такі сумісні з 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'
}

Нижче перераховано compileSdkVersion 27та сумісне лише з 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'
}

2
Дякуємо, що дали рішення тим, хто потребує тимчасового збереження версії 27 (прийнята відповідь занадто спрощена)
Дон

Дякую! Я мав compileSdkVersion встановлений на 28, але я не використовував бібліотеки androidx і зміна firebase на нижчу версію допомогла.
michalbrz

9

Я вирішую цю проблему рядком нижче:

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

Після цього компіляція пройшла успішно.



5

Для рідних програм для Android (не Кордова) для мене рішення:

Було:

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

Зараз:

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

5

Ще одне виправлення для Ionic 3 Devs - це створити build-extras.gradle всередині платформ / android і поставити наступне

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

Зауважте, що build-extras.gradle - це не те саме, що build.gradle


5

@ Уся проблема пов’язана з останніми важливими змінами в сервісі Google Play і Firebase 17 червня 2019 року.

Якщо ви перебуваєте в проекті Ionic або Cordova. Будь ласка, перегляньте всі плагіни, у яких є сервіс Google Play play і сервіс firebase з позначкою +

Приклад:

У моїй інтеграції в firebase cordova у мене був com.google.firebase: firebase-core: + com.google.firebase: firebase-обмін повідомленнями: + Тож плюс завжди завантажував останню версію, яка спричиняла помилки. Змінити + з номером версії відповідно до випуску 15 березня 2019 року https://developers.google.com/android/guides/releases

Обов’язково замініть + символи фактичною версією у файлі build.gradle бібліотеки cordova


3

Зазвичай це через версії sdk та / або залежностей.

Для розробників Cordova помістіть ваші налаштування залежностей у " project.properties" файл під CORDOVA_PROJECT_ROOT/platforms/android/папку, наприклад:

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

Отже, якщо ви використовуєте CLI " cordova build", він замінить розділ залежності:

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

Якщо ви використовуєте належні бібліотеки та їх версії в project.properties, вам слід добре.


прибрати зайві місця післяandroid.library.reference.2=app
Микола Василакі

Ти ангел! Мені це закрутило мозок. Він вирішив встановити ціль на android 26, але завантажувався в залежності від 28. Дякую !!!!!!!!!
eliotRosewater

2

У мене була така ж помилка, але не знаю, чому вона з’явилася. Після пошуку рішення я перемістив проект на AndroidX (Refactor -> Migrate to AndroidX ...), а потім вручну змінив імпорт цілих класів тощо, а також у файли макета (RecyclerViews, ConstraintLayouts, панелі інструментів тощо). Я змінив також compileSdkVersion і targetSdkVersion до 28 версії, і весь проект / додаток працює чудово.


2

Якщо хтось має цю помилку, використовуючи phonegap або cordova з плагіном cordova-plugin-fcm-ng або cordova-plugin-fcm, рішенням, яке працювало для мене, є створення додаткового конфігураційного файлу для gradle "build-extras.gradle" в \ папку платформ \ android \ додаток і розміщуючи в ній наступні рядки

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

Я знайшов це рішення, читаючи цю сторінку https://github.com/facebook/react-native/isissue/25371 , зокрема коментар shreyakupadhyay 30.07.19 р. Та консультації https://developers.google.com/android/ путівники / випуски # may_07_2019 про останню версію бібліотек.


2

Я зіткнувся з цією помилкою під час флетерного проекту, і все, що мені потрібно було оновити свою компіляціюSdkVersion до 28.

КРОКИ:

  1. У файлі build.gradle на рівні додатка знайдіть компіляціюSdkVersion
  2. Перевірте поточну версію
  3. Якщо менше 28, оновіть його до 28

Як зазначено вище zyc zyc , властивість fontVariationSettings була додана на рівні 28 API.

Ви також можете прочитати більше про це тут


1

Для іонічних 3 дев. Мені довелося оновити файл платформ / android / project.properties ТІЛЬКИ на:

cordova.system.library.2

бути v4: 28.0.0+ інакше збірка не виходить із ладу.

Після цього вміст мого файлу project.properties показано нижче:

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

Я сподіваюся, що це комусь допоможе. Це була справжня проблема для мене.


ІМХО, чому не всі підтримують lib, лише другий? 😊
Томас Кім

1

Це був біль у попці для мене! Особливо після оновлення до Android Studio 3.2.1 та Gradle 4.6 (для розробників Gradle).

Я думаю, що існує більше одного фактора, який може спричинити такий виняток складання. У мене були такі рядки коду у моєму файлі gradle.properties (використовуючи SDK версії 27):

android.useAndroidX=true
android.enableJetifier=true

AndroidX - це альтернатива бібліотеці підтримки Android за замовчуванням, і її слід використовувати при компілюванні та націленні на SDK версії 28 (API 28). Перед оновленням Android Studio та Gradle я додав вищезазначені рядки, готуючись до кінця повністю перейти на AndroidX для використання SDK версії 28, і збірка пройшла успішно. Лише після оновлення я отримав помилку, аналогічну вище:

error: resource android:attr/fontVariationSettings not found

Сподіваюся, це допомагає.


1

Для мене: моя зовнішня бібліотека використовувала ці атрибути attr / fontVariationSettings та attr / ttcIndex тому я версію бібліотечної версії та проект синхронізації. все добре

Так що тепер :

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

а для майбутніх читачів ця бібліотека була легкимдозволом Google.

implementation 'pub.devrel:easypermissions:2.0.0'

Ця lib використовує sdkversion 28, я повинен перейти до версії 1.3.0


1
Привіт, як вам перевірити, чи використовує цей lib sdkversion 28? 😊
Томас Кім

1
@ThomasKim. після впровадження цієї бібліотеки я отримав цю помилку. Я шукав і перевіряв, що attributes attr/fontVariationSettings and attr/ttcIndexналежить 28тільки. Тож я знижую цю ліб та її роботу. Так я з'ясувати , що було причиною
Tejas Pandya

1
Я бачу, у мене виникає питання, чому ви не вирішили оновити до 28? оновлення це вирішить занадто правильно (?) 😁 (btw, я стикаюся з цією проблемою майже 3 дні і не знаю, який плагін був невірним 😭)
Томас Кім

2
@ThomasKim, тому що під час написання цієї відповіді. у 28 є помилки, що спричиняє проблеми в оформленні дизайну. так 27 краще для мене
Tejas Pandya

1

Якщо ви натрапили на цю проблему через те, що останнім часом ця помилка вийшла з нізвідки в місцевому реагуванні - це пов’язано з останньою BREAKING CHANGE в службі Google Play та Firebase. Спершу перевірте цю тему -

https://github.com/facebook/react-native/isissue/25293

І рішення здебільшого було б таким -

https://github.com/facebook/react-native/isissue/25293#issuecomment-503045776


1

Я вирішив проблему, змінивши цільову версію Android на 28 у project.properties (target = android-28) і встановив cordova-plugin-androidx і cordova-plugin-androidx-adapter.


1

помилка: ресурс android: attr / fontVariationSettings не знайдено

Я отримав цю помилку, коли я додав бібліотеку ButterKnife, але оновлення compileSdkVersion до 28 і targetSdk до 28 вирішило мою проблему.


1

після оновлення до Android 3.4.2 та FTC SDK5.2. У мене виникли ці помилки під час створення APK:

Не вдалося зв’язати ресурс Android C: \ Users \ idsid \ FTC \ SkyStone \ TeamCode \ build \ intermediates \ incremental \ mergeDebugResources \ merged.dir \ values ​​\ values.xml: 1205: error: resource android: attr / fontVariationSettings not found. C: \ Users \ idsid \ FTC \ SkyStone \ TeamCode \ build \ intermediates \ incremental \ mergeDebugResources \ merged.dir \ values ​​\ values.xml: 1206: error: resource android: attr / ttcIndex не знайдено. помилка: помилка посилання посилань.

Що я зробив, це додати наступний розділ до програми gradle gradle і проблема виправлена.

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

Удачі.


1

У мене ця проблема несподівано трапилася після спроби витягнути залежність залежно від sdk 28 (краш-файтики firebase), але потім вирішила повернути зміни.

Я спробував автоматичний рефактор Migrate to Androidx (який виконує половину роботи), доданий android.useAndroidX=trueвgradle.properties деяких точках, і змусив проект знову працювати.

Але до пологів було багато змін. Не вдалося знову скомпілювати проект із SDK 27. Igit clean -fd видалив $HOME/.gradleі продовжував бачити androidx у./gradlew :app:dependencies

Я теж закінчився видаленням ~/.AndroidStudio3.5/(я на 3.5.3). Це змушує проект знову складатись, і я виявив темний режим ...


0

Щоб вирішити проблему, я видалив усі невикористані плагіни в pubspec.yaml та у Зовнішніх бібліотеках.


0

Щойно я знову отримав цю помилку AndroidX після виправлення її рік тому. Я використовую Flutter.

Мені вдалося зробити випуски за допомогою Flutter 1.7.8 + hotfix.4, потім нещодавно я оновив Flutter до версії 1.17.4, і тоді мені вже не вдалося скласти збірку релізів. Налагодження налагодження спрацювало чудово.

TLDR : Цього разу це був пакет із використанням іншого пакету, який не був оновлений належним чином для AndroidX
Обов’язково оновіть ваші пакунки! :)

Повідомлення про помилку: Важлива частина

[+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.

Повідомлення про помилку: відволікання

       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 не знайдено". - це помилка AndroidX, яка вимагає використання compileSdkVersion 28, але я вже мав це, тому підозрюю, що між моїми двома версіями Flutter щось було реалізовано, щоб бути більш обмежуючим.

Тож мені довелося піти на полювання та оновити пакети і виявили це. "package_info: ^ 0.3.2" потрібно було "package_info: ^ 0.4.0", щоб він працював. Щоб зробити його "більш" майбутнім доказом, напишіть так:

package_info: '>=0.4.0 <2.0.0'

Після оновлення пакетів моя база коду збирається для випуску ще раз. Сподіваюся, це допомагає.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.