Ответ 1
У меня была такая же проблема при использовании сторонней библиотеки.
Чтобы решить эту проблему, я переместил файлы ic_launcher.png из папки с возможностью переноса в папку mipmap. И проблема решена.
Я хочу скомпилировать проект, я получил Error:Gradle: Execution failed for task ':app:processDebugResources'.
здесь исключение:
Ошибка: Gradle: Выполнение не выполнено для задачи ': app: processDebugResources'. com.android.ide.common.internal.LoggedErrorException: Не удалось выполнить команду:
D:\devtools\adt\sdk\build-tools\21.1.1\aapt.exe package -f -no-crunch -ID:\devtools\adt\sdk\platform\android-21\android.jar -ME:\code\android\TVMediaPlayer\app\build\manifestests\debug\AndroidManifest.xml -SE:\code\android\TVMediaPlayer\app\build\res\all\debug -AE:\code\android\TVMediaPlayer\app\build\assets\debug -m -JE:\code\android\TVMediaPlayer\app\build\source\r\debug -FE:\code\android\TVMediaPlayer\app\build\libs\app-debug.ap_ - -debug-mode --custom-package com.skyworth.tvmediaplayer.app --output-text-symbols E:\code\android\TVMediaPlayer\app\build\symbols\debug
Код ошибки: 1
Вывод: E:\code\android\TVMediaPlayer\app\build\res\all\debug\drawable-hdpi-v4\ic_launcher.png: ошибка: Дублирующий файл. E:\code\android\TVMediaPlayer\app\build\res\all\debug\drawable-hdpi\ic_launcher.png: Оригинал здесь. Может быть подразумевается спецификатор версии.
вот файл gradle:
android {
compileSdkVersion 21
buildToolsVersion "21.0.2"
defaultConfig {
applicationId "com.jerrellmardis.amphitheatre"
minSdkVersion 21
targetSdkVersion 21
versionCode 1
versionName "1.0"
renderscriptTargetApi 19
buildConfigField "String", "TMDB_API_KEY", "\"${loadSecret("TMDB_API_KEY")}\""
}
......
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:recyclerview-v7:21.0.0'
compile 'com.android.support:leanback-v17:21.0.0'
compile 'com.android.support:appcompat-v7:21.0.0'
compile 'com.android.support:palette-v7:21.0.0'
compile 'com.squareup.picasso:picasso:2.3.4'
compile 'com.squareup.retrofit:retrofit:1.7.1'
compile 'com.google.code.gson:gson:2.3'
compile 'org.apache.commons:commons-lang3:3.3.2'
compile 'org.apache.commons:commons-collections4:4.0'
compile 'com.jakewharton:butterknife:6.0.0'
compile 'com.github.satyan:sugar:1.3'
}
Я озадачен сообщением об ошибке, помечен ли неправильный файл png или неправильный файл конфигурации gradle?
У меня была такая же проблема при использовании сторонней библиотеки.
Чтобы решить эту проблему, я переместил файлы ic_launcher.png из папки с возможностью переноса в папку mipmap. И проблема решена.
Вы должны убедиться, что ваши gradle и buildToolsVersion идентичны в вашем проекте и используемых арах.
Свяжитесь с автором или проверьте источники самостоятельно. В некоторых библиотеках есть неиспользуемые значки запуска, которые вызовут этот конфликт. Удаление этих значков поможет решить вашу проблему. Идентичные источники (например, menu.xml) также могут вызвать эту проблему в редких случаях. Легким обходным решением было бы переименование вашего ресурса.
Simply Rename
the Image
(Rightclick on the Image, Select Refactor and select Rename
). Он решает проблему, поскольку проблема возникает, поскольку один из library/Module
также использует image with the same name
.
Добавление aaptOptions.cruncherEnabled = false
в app.gradle разрешено.
Если у кого-то еще есть эта проблема, и ни один из упомянутых ответов не решил вашу проблему, вы можете добавить эту строку в свой файл AndroidManifest.xml в теге приложения:
tools:replace="android:icon
Вам также нужно пространство имен инструментов в теге манифеста
xmlns:tools="http://schemas.android.com/tools"
Итак, это будет выглядеть так:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.sqlite" >`
<application
android:allowBackup="true"
android:label="@string/app_name"
android:theme="@style/AppTheme"
tools:replace="android:icon"
android:icon="@mipmap/ic_launcher"
android:name="com.orm.SugarApp">
У меня также есть зависимость com.github.satyan:sugar:1.3
, я полагаю, что библиотека импортирует другую иконку в свой собственный манифест, тем самым вызывая конфликт.