Помилка: (9, 5) помилка: ресурс android: attr / dialogCornerRadius не знайдено


118

Тож я встановив андроїд-студію 3.0.1 і як тільки він відкрив вбудований градус і показав наступні помилки. Я намагався додавати такі залежності, як дизайн та підтримка, але даремно. Може хтось мені допоможе? Спасибі заздалегідь. введіть тут опис зображення

Це показує, що деякі атрибути, такі як dialogCornerRadius і SettingsVariation Settings не знайдено.


4
У мене був compileSdkVersion 27і compileSdkVersion 28, змінюючи compileSdkVersionдо 28, вирішити цю проблему.
Бласанка

Відповіді:


173

Ця помилка виникає через невідповідності compileSdkVersionта бібліотечну версію.

наприклад:

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

а також уникайте використання знака + з бібліотекою, як указано нижче:

implementation 'com.android.support:appcompat-v7:26.+'

використовувати точну версію бібліотеки, як ця

implementation 'com.android.support:appcompat-v7:26.1.0'

Використання знака + з бібліотекою ускладнює процес збирання точної версії, яка необхідна, роблячи систему нестабільною, отже, слід відмовлятись від неї.


Мені довелося оновити основний номер версії compileSdkVersion, щоб він був таким самим, як com.android.support:support-annotations, com.android.support:appcompat-v7, com.android.support:support-v4, com.android.support: дизайн
непарний метр

66

Якщо ви перенесені на AndroidX і отримуєте цю помилку, потрібно встановити SDK для компіляції на Android 9.0 (рівень API 28) або вище


будь-яким способом мати androidX з sdkcompiled 27?
Філ

1
@Phil Перш ніж перейти, оновіть додаток. Ми рекомендуємо оновити проект, щоб використовувати остаточну версію бібліотеки підтримки: версію 28.0.0. Це пояснюється тим, що артефакти AndroidX з версією 1.0.0 є бінарними еквівалентами артефактів Бібліотеки підтримки 28.0.0. Джерело . Тож немає варіантів для sdk 27 ​​з androidX
murgupluoglu

23

У мене було саме таке питання. Наступна нитка допомогла мені вирішити це. Просто встановіть версію Compile SDK на Android P.

https://stackoverflow.com/a/49172361/1542720

Я вирішив цю проблему, вибравши:

API 27+: Android API 27, попередній перегляд P (попередній перегляд)

в налаштуваннях структури проекту. наступне зображення показує мої налаштування. 13 помилок, які виникали під час створення програми, зникли.

Налаштування Gradle


3
зауважте , вам не доведеться ЦІРИТИ це до 28, ви можете просто встановити compileSdkVersionі buildToolsVersionдо 28 і залишити свій targetSdkVersionна нижчій версії
Кирило Кармазін

16

Перевірте свої залежності щодо використання +у версіях. Певна залежність може бути корисною com.android.support:appcompat-v7:+. Це призводить до проблем, коли виходить нова версія і може порушити функції.

Рішенням цього може бути або використовувати com.android.support:appcompat-v7:{compileSdkVersion}.+або взагалі не використовувати +та використовувати повну версію (наприклад com.android.support:appcompat-v7:26.1.0).

Якщо ви не можете побачити рядок у своїх файлах build.gradle для цього, запустіть у терміналі андроїд-студії, щоб отримати огляд того, що використовує кожна залежність

gradlew -q dependencies app:dependencies --configuration debugAndroidTestCompileClasspath (включайте андроїд-тест-залежності)

АБО

gradlew -q dependencies app:dependencies --configuration debugCompileClasspath (регулярні залежності для налагодження)

що призводить до чогось, що виглядає близько до цього

------------------------------------------------------------
Project :app
------------------------------------------------------------

debugCompileClasspath - Resolved configuration for compilation for variant: debug
...
+--- com.android.support:appcompat-v7:26.1.0
|    +--- com.android.support:support-annotations:26.1.0
|    +--- com.android.support:support-v4:26.1.0 (*)
|    +--- com.android.support:support-vector-drawable:26.1.0
|    |    +--- com.android.support:support-annotations:26.1.0
|    |    \--- com.android.support:support-compat:26.1.0 (*)
|    \--- com.android.support:animated-vector-drawable:26.1.0
|         +--- com.android.support:support-vector-drawable:26.1.0 (*)
|         \--- com.android.support:support-core-ui:26.1.0 (*)
+--- com.android.support:design:26.1.0
|    +--- com.android.support:support-v4:26.1.0 (*)
|    +--- com.android.support:appcompat-v7:26.1.0 (*)
|    +--- com.android.support:recyclerview-v7:26.1.0
|    |    +--- com.android.support:support-annotations:26.1.0
|    |    +--- com.android.support:support-compat:26.1.0 (*)
|    |    \--- com.android.support:support-core-ui:26.1.0 (*)
|    \--- com.android.support:transition:26.1.0
|         +--- com.android.support:support-annotations:26.1.0
|         \--- com.android.support:support-v4:26.1.0 (*)
+--- com.android.support.constraint:constraint-layout:1.0.2
|    \--- com.android.support.constraint:constraint-layout-solver:1.0.2

(*) - dependencies omitted (listed previously)

Якщо у вас немає контролю над зміною версії, спробуйте змусити її використовувати конкретну версію.

configurations.all {
    resolutionStrategy {
        force "com.android.support:appcompat-v7:26.1.0"
        force "com.android.support:support-v4:26.1.0"
    }
}

Силова залежність може потребувати різності залежно від того, що встановлено на 28.0.0


9

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


3
Але я хочу, щоб це було 26.
Taslim Oseni

Так, я також хочу бути в 26. будь-яке рішення @TaslimOseni
Vigneswaran A

1
@VigneswaranA, мені врешті-решт довелося дотримуватися 28 і таким чином оновити всі мої інші залежності. Я не зміг знайти рішення.
Таслім Осені

7

У мене виникла та сама проблема, додаючи API навігації по картах і вирішив цю проблему, перейшовши до: file> структура структури, а потім встановивши версію компіляції sdk та створити версію інструменту до останньої. А ось скріншот: Знімок екрана

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


6

Це тому, що реалізації compileSdkVersion, buildToolsVersion та Dependecies не відповідають. Ви повинні зробити так, як у мене тоді 28 бібліотек

compileSdkVersion 28
targetSdkVersion   28
buildToolsVersion  28.0.3
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:appcompat-v7:28.0.0'

Якщо ви використовуєте Будь-який, де менше 28, ця помилка повинна статися, тому будь ласка, спробуйте всі бібліотеки відповідностей.


6

Якщо ви працювали над додатком з декількома модулями, переконайтеся, що ви збільшуєте значення compileSdkVersionта targetSdkVersionдо 28+ у модулі, які ви також робите для інших.

Модуль працював compileSdkVersion 29і, targetSdkVersion 29поки другий модуль програми працював на compileSdkVersion 27та targetSdkVersion 27.

Змінення другого модуля для компіляції та цільової SDK версії 29 вирішило мою проблему. Сподіваюся, що це комусь допоможе.


Рада, що вам це допомогло.
Opeyemi

5

Можливо, вже пізно, але я знайшов рішення:

Вам потрібно відредагувати build.gradleабо compileSdkVersion-> to lastest (зараз це 28). Щось схоже на те:

android {
compileSdkVersion 28
defaultConfig {
    applicationId "NAME_OF_YOUR_PROJECT_DIRECTORY"
    minSdkVersion 21
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}

або ви можете змінити версію реалізації:

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    api 'com.android.support:design:27.+'
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

4

Знайшли акуратний плагін для вирішення цього питання: cordova-android-support-gradle-release

додаток cordova додайте cordova-android-support-gradle-release - змінний ANDROID_SUPPORT_VERSION = 27. + - зберегти


1

Для вирішення цього питання слід застосувати залежності, як показано нижче:

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'com.android.support:support-v4:27.1.0'
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:recyclerview-v7:27.1.0'
}

Будь ласка, не використовуйте версію:

v7: 28.0.0-alpha1


1
Якщо ви використовуєте компілювати SDK 28 та збирати інструменти 28.0.1, ви можете.
norbDEV

1

Я зіткнувся з тією ж проблемою, але успішно вирішив проблему, змінивши версію compileSdkVersion на останню, яка становить 29, і змінив версію targetSdkVersion на останню, яка становить 29.

Перейдіть у файл gradile.build та змініть компіляціюdkversion та targetdkversion.



0

У моєму випадку ця помилка сталася, коли я використовував

implementation 'com.android.support:appcompat-v7:+'
implementation 'com.android.support:design:+'

бібліотеки разом з googles

implementation 'com.google.android.material:material-components:+'

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


0
 buildscript {

    project.ext {
        supportLibVersion = '27.1.1'
        compileVersion = 28
        minSupportedVersion = 22
    }
}

і встановити залежності:

implementation "com.android.support:appcompat-v7:$project.supportLibVersion"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.