Тип программы ошибки библиотеки материалов Google, уже присутствующий: android.support.v4.app.INotificationSideChannel $ Заглушка $ Прокси
Всякий раз, когда я добавляю implemntation 'com.google.android.material:material:1.0.0-alpha1'
когда я пытаюсь создать свой проект, Android Studio выдает:
Тип программы уже присутствует: android.support.v4.app.INotificationSideChannel $Заглушка $Прокси-сообщение {kind=ОШИБКА, text = Тип программы уже присутствует: android.support.v4.app.INotificationSideChannel $ Заглушка $ Прокси, источники = [Неизвестный исходный файл], имя инструмента = Необязательно.of(D8)}
Это мой скрипт gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 'android-P'
defaultConfig {
applicationId "it.smart.bab3"
minSdkVersion 21
targetSdkVersion 'p'
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
implementation 'com.google.android.material:material:1.0.0-alpha1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
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'
implementation 'com.android.support:design:28.0.0-alpha1'
implementation 'com.android.support:support-v4:28.0.0-alpha1'
}
Я новичок в этом типе ошибок, и я не нашел ничего с этой ошибкой. Спасибо
Переведено автоматически
Ответ 1
Я тоже весь день боролся с этой проблемой. Наконец-то мне удалось успешно скомпилировать и запустить проект.
Прежде всего, избавьтесь от этого:
implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
implementation 'com.android.support:design:28.0.0-alpha1'
implementation 'com.android.support:support-v4:28.0.0-alpha1'
Добавьте следующее в свой файл gradle.properties:
android.useAndroidX = true
android.enableJetifier = false
И, наконец, синхронизируйте проект и затем скомпилируйте.
Если это не работает, очистите проект, а затем перестройте.
PS: Я не могу заставить targetSdkVersion 'p' работать. Мой файл build.gradle заканчивается следующим образом:
apply plugin: 'com.android.application'
android {
compileSdkVersion 'android-P'
defaultConfig {
applicationId "com.github.alvarosct02.demo"
minSdkVersion 19
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.google.android.material:material:1.0.0-alpha1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
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'
}
Надеюсь, у вас тоже это сработает.
Ответ 2
Я потратил 2 дня на поиски решения. Любой, кто все еще ищет решение, может выполнить следующие действия:
Обновите Android Studio до последней версии.
Обновите ваши compileSdkVersion и targetSdkVersion до 28.
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.your.appid"
minSdkVersion 19
targetSdkVersion 28
versionCode 50
versionName "1.50"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
multiDexEnabled true
setProperty("archivesBaseName", "your-app-$versionName")
resConfigs "en"
}
}Перейдите в структуру вашего проекта и измените версию gradle на 4.10.
Сначала добавьте эту зависимость:
implementation 'com.google.android.material:material:1.0.0'
Теперь удалите все зависимости библиотеки поддержки:
implementation "com.android.support:design:$SUPPORT_LIBRARY_VERSION"
implementation "com.android.support:support-v4:$SUPPORT_LIBRARY_VERSION"
implementation "com.android.support:appcompat-v7:$SUPPORT_LIBRARY_VERSION"
implementation "com.android.support:recyclerview-v7:$SUPPORT_LIBRARY_VERSION"
implementation "com.android.support:cardview-v7:$SUPPORT_LIBRARY_VERSION"
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:multidex:1.0.3'
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
androidTestImplementation('com.android.support.test.espresso:espresso-
core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
exclude group: 'com.google.code.findbugs', module: 'jsr305'
})Теперь вставьте следующее в ваш файл gradle.properties:
android.useAndroidX = true
android.enableJetifier = trueВ файле build.gradle уровня вашего проекта:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.0'
classpath 'com.google.gms:google-services:4.1.0'
};
Для тех, кто использует Butterknife, добавьте нижеприведенные строки в файл build.gradle вашего уровня проекта:
allprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
maven { url "https://dl.bintray.com/drummer-aidan/maven/" }
maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
}
}
И в вашем модуле build.gradle файл добавьте приведенные ниже зависимости:
implementation "com.jakewharton:butterknife:9.0.0-SNAPSHOT"
annotationProcessor "com.jakewharton:butterknife-compiler:9.0.0-SNAPSHOT"
- Теперь перейдите к сборке > Перестроению проекта, тогда вы можете получать много ошибок.
- Теперь перейдите по этой ссылке.
В нем есть список всех старых (android.support) и новых (androidx. *) зависимостей.
Замените весь ваш старый импорт на новый
(используйте функцию replaceAll в Android studio [ctrl + shift + R], которая сэкономит вам некоторое время).
- Наконец, после рефакторинга всех старых библиотек на новые:
Перестройте проект еще раз, и, надеюсь, он должен работать.
Примечание: Вы также можете использовать Рефакторинг> Миграция на androidx в Android Studio, но у меня это не сработало.
Ответ 3
Я начал получать эту ошибку после обновления ButterKnife до версии 8.8.1.
Итак, я запускаю команду gradle -q dependencies
для создания отчета о зависимостях, после этого вы должны увидеть, откуда берется D8. В моем случае из библиотеки "ButterKnife":
+--- com.jakewharton:butterknife:8.8.1
| | \--- com.android.support:support-compat:d8
Также вы можете просмотреть свои зависимости от Android, перейдя в представление Android Studio Gradle (на панели инструментов Android Studio перейдите к "Просмотр / Инструментальные окна / Gradle") и выбрав целевой параметр "androidDependencies" в разделе "My-Project-Name / Задачи / android" (дважды щелкните для запуска или щелкните правой кнопкой мыши и запустите).
Чтобы решить эту проблему, я добавил этот фрагмент кода exclude module: 'support-compat'
в свой "app / build.gradle", как показано ниже:
implementation ('com.jakewharton:butterknife:8.8.1') {
exclude module: 'support-compat'
}
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
Надеюсь, это сработает у кого-то еще :] Ура!
Ответ 4
Android Studio версии v3.2+ устраняет эту проблему. Он также добавляет пункт "Перенести на AndroidX" в меню рефакторинга. Никаких обходных действий или отката не требуется.
Обновите Android Studio с бета-канала для использования версии 3.2+ или подождите, пока не будет выпущена стабильная версия.
РЕДАКТИРОВАТЬ: Android Studio версии v3.2 теперь находится в стабильном режиме. Важно, чтобы вы больше не использовали библиотеки поддержки и перешли на библиотеки AndroidX, поскольку поддержка старых библиотек поддержки закончилась.