web-dev-qa-db-fra.com

Type de programme déjà présent: Android.support.v4.app.BackStackRecord

J'ai mis à niveau mon studio Android .. et j'ai trouvé de nombreux problèmes dans la dernière version

Bien qu'il existe de nombreuses questions similaires, j'ai vérifié les réponses à toutes et aucune n'a fonctionné pour moi!

Voici l'erreur que je rencontre lors de la compilation du code: 

Type de programme déjà présent: Android.support.v4.app.BackStackRecord $ Op Message {kind = ERROR, text = Type de programme déjà présent: Android.support.v4.app.BackStackRecord $ Op, sources = [fichier source inconnu], outil name = Facultatif.of (D8)}

Voici mon dossier

projet:

// Top-level build file where you can add configuration options common to 

all sub-projects/modules.

buildscript {

repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.Android.tools.build:gradle:3.1.0'


    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    }
 }

 allprojects {
 repositories {
    google()
    jcenter()
    maven {
        url "https://jitpack.io"
          }
     }
}

task clean(type: Delete) {
delete rootProject.buildDir
}

app:

apply plugin: 'com.Android.application'

Android {
compileSdkVersion 27
defaultConfig {
    applicationId "com.alcantara.bugismart"
    minSdkVersion 15
    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.Android.support:appcompat-v7:27.1.1'
    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.github.ViksaaSkool:AwesomeSplash:v1.0.0'
}

Vous pouvez me dire s'il y a quelque chose à ajouter pour comprendre ce que je fais ou ce que je me trompe.

43

Le problème est probablement dû à une bibliothèque de support dupliquée. Cette dépendance:

implementation 'com.github.ViksaaSkool:AwesomeSplash:v1.0.0'

utilise l'ancienne version de la bibliothèque de support. Essayez d'exclure la bibliothèque de support avec:

implementation ('com.github.ViksaaSkool:AwesomeSplash:v1.0.0') {    
    exclude group: 'com.Android.support'
    exclude module: 'appcompat-v7'
    exclude module: 'support-v4'
}

Vous devez vérifier vos dépendances avec la commande suivante:

./gradlew app:dependencies
71

Ajoutez ceci dans votre build.gradle (Module: app)

implementation 'com.Android.support:support-v4:27.1.1'

30
keval koria

Ajoutez cette ligne de code dans la section des dépendances de votre fichier gradle 

implementation 'com.Android.support:support-v4:28.0.0'
8
Areeba Qurashi

Une alternative à la réponse acceptée consiste à indiquer à gradle de forcer la nouvelle version:

final SUPPORT_LIB_VER = '27.1.1'

configurations.all {
    resolutionStrategy { 
        force "com.Android.support:appcompat-v7:${SUPPORT_LIB_VER}"
        force "com.Android.support:support-v4:${SUPPORT_LIB_VER}"
    }
}

Cela peut être plus pratique lorsque vous avez plusieurs dépendances.

voir aussi: Réponse à "Comment puis-je forcer Gradle à définir la même version pour deux dépendances?"

8
TmTron

Vérifiez également votre dossier libs car 

implementation fileTree(dir: 'libs', include: ['*.jar'])

va choisir tous les pots à partir de là aussi. Vous pourriez avoir des bocaux se dupliquant les uns les autres ou vos implémentations inférieures.

J'ai eu des doublons dans mes bibliothèques et j'ai eu ce problème.

1
Boris Gafurov

multiDexEnabled true ajouter la ligne ci-dessus dans le bloc Android dans gradle-app son travail pour moi ...

1
Monem

remplacez-vous les dépendances par elle.

implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.Android.support:appcompat-v7:28.0.0-alpha1'
    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'
0
Vijay Kumar

enter image description here J'ai essayé ceux-ci:

  • nettoyer/reconstruire
  • Invalide cash et redémarre
  • Exclure les dépendances de ma bibliothèque dans mon app.gradle (voir ci-dessous)

implementation (project (': libxmiimp')) {groupe d'exclusions: 'com.Android.support', module: 'support-v4'}

  • Jouer avec les réglages de dégradé (des choses comme multiDex enable true et autres)

Mais mon problème était que Android-support-v4.jar était en quelque sorte entré dans le dossier lib de ma bibliothèque Android locale .... La supprimer a résolu mon problème.

0

Ajouter ce code à gradle (selon "SdkVersion")

 implementation 'com.Android.support:support-v4:28.0.0-beta01'

par exemple, mon SDKVersion a 28 ans et j'utilise ce code:

implementation 'com.Android.support:appcompat-v7:28.0.0-beta01'
implementation 'com.Android.support:support-v4:28.0.0-beta01'
0
Masoud Siahkali