Lollipop AppCompat-v7 21-атрибут "тема" уже определен


Я хотел обновить свой проект для поддержки Android Lollipop и API 21, поэтому я изменил версию AppCompat на ЗАВИСИМОСТИ до 21.0.0, и мой целевой SDK до 21.

но теперь, когда я пытаюсь синхронизировать проект с Gradle файлы, это дает мне 102 errors этого раньше не было:

1 ошибка "Attribute 'theme' has already defined" - дал мой ,

и еще 101 ошибка "no resources found that matches the given name..." - большинство из них являются материальными, предоставленные "build/intermediates/exploded-aar/com.android.support/appcompat-v7/21.0.0/res/values-v11/values.XML".

уже обновлены все инструменты SDK в программном обеспечении Android SDK, Использование Android Studio 0.8.9 Beta.

может кто-нибудь помочь? Спасибо.

6 69

6 ответов:

У меня тоже была первая проблема. Это можно исправить, обновив зависимость сервисов Google Play до 6.1.+.

в Gradle (который я надеюсь, что вы используете) это: компиляции в COM.гуглить.андроид.gms: play-услуги: 6.1.+ '

Что касается второй проблемы - как люди сказали в комментариях, вы должны убедиться, что все компоненты в вашей установке SDK обновлены.

у меня была та же проблема, но обновление до последних версий не помогло.

но сообщение об ошибке Attribute “theme” has already been defined изменено на Attribute “layout” has already been defined

в Google Play Services изменения я нашел это

  <declare-styleable name="WalletFragmentOptions">
         <!-- Theme to be used for the Wallet selector -->
-        <attr name="theme" format="enum">
+        <attr name="appTheme" format="enum">

и это ключ.

Если у вас есть в вашем attr.атрибуты xml тема или планировка или, может быть, что - то еще-переименовать его. Кажется, слияние не может справиться с этим.

Gradle в Android studio предлагает последнюю версию com.google.android.gms:play-services. После обновления до последней версии, проблема была решена.

compile 'com.google.android.gms:play-services:8.3.0'

иногда библиотека, которую вы используете, имеет этот атрибут. Я использовал раздвижные панели библиотека и я получил следующую ошибку во время сборки. У меня были следующие элементы в моих библиотеках зависимостей:

dependencies {
    compile 'com.android.support:appcompat-v7:20.0.0'
    compile 'com.sothree.slidinguppanel:library:+'
    // ...
}

я исправил свою проблему, удалив скользящую библиотеку : (

после добавления новой активности в мой проект, похоже, Android Studio автоматически обновил мои зависимости, после чего эта ошибка начала появляться.

Я изменил следующие зависимости для последних библиотек совместимости:

compile 'com.android.support:support-v4:21.0.3'
compile 'com.android.support:appcompat-v7:21.0.3'

к тем, которые у меня были в моем gradle.build before Studio отредактировал его, не спрашивая меня:

compile 'com.android.support:support-v4:20.0.0'
compile 'com.android.support:appcompat-v7:20.0.0'

тогда пусть студия сделает синхронизацию, и ваша сборка должна работать.

для пользователей Eclipse:

  • идете с принятый ответ от tilal6991
  • но имейте в виду, что вы должны повторно импортировать проект службы google play впоследствии

потому что если вы следовали рекомендации по установке gps, у вас есть только его копия в вашем рабочем пространстве, которая не будет обновляться.