Недавно я решил включить библиотеку appcompat-v7
в мое приложение, чтобы иметь поддержку материального дизайна, а также использовать новее ActionBarDrawerToggle
, поскольку один в support-v4
устарел.Переход на Android-приложение в appcompat v7 вызывает ошибку: атрибут «цвет» уже определен
Мои compileSdkVersion
и targetSdkVersion
установлены на 23
. Варианты для support-v4
и appcompat-v7
установлены на 23.1.0
.
Однако, как только я сделал синхронизации на мой проект, я побежал в следующую ошибку:
AGPBI: {"kind":"error","text":"Attribute \"color\" has already been defined","sources":[{"file":"/Users/work/source/android/app.android.whitelabel/WhiteLabelApp/src/main/res/values/config.xml","position":{"startLine":1}}],"original":""}
Оглядевшись, я обнаружил, что многие из них столкнулись с аналогичными проблемами с различными версиями AppCompat библиотеки. И я также понимаю, что эта ошибка указывает на то, что в моем файле config.xml
есть color
, что противоречит некоторым другим файлам. Но на данный момент ошибка не дает мне никакого представления о том, какой атрибут color
противоречит друг другу. Мой файл config.xml
также имеет множество таких специфичных для проекта атрибутов color
.
Если я удалю библиотеку appcompat-v7
, эта ошибка исчезнет.
Любая помощь, пожалуйста?
Удаление всех экземпляров «цвета» из всех файлов XML кажется грубым взломом этой проблемы. Мое приложение использует варианты, из которых в настоящее время 23. Существует файл 'config.xml' для каждого варианта. Даже когда я удалил все экземпляры 'color' из файла config.xml текущего варианта, ошибка * все еще сохраняется. Я даже создал совершенно новый проект и скопировал тот же файл 'config.xml', не удаляя атрибуты' color', и этот проект скомпилирован/построен просто отлично. – anirvan
Самая неприятная вещь здесь в том, что Android даже не говорит мне, какая конкретная ссылка «color» находится в конфликте! – anirvan
Иногда все проблемы решались путем создания нового проекта и копирования всех файлов из старого. Иначе вы должны попробовать эту «грубую силу». –