Тип программы уже присутствует: android.support.v4.app.BackStackState $ 1

Я обновил свою студию Android .. и обнаружил много проблем в последней версии

Хотя существует много похожих вопросов, я проверил ответы на все, и ни один из них у меня не сработал!

Вот ошибка, с которой я столкнулся при компиляции кода:

Program type already present: android.support.v4.app.BackStackState$1
Message{kind=ERROR, text=Program type already present: android.support.v4.app.BackStackState$1, sources=[Unknown source file], tool name=Optional.of(D8)}

файл gradle:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

приложение Gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    buildToolsVersion "27.0.3"

    defaultConfig {
        applicationId "com.guideapp.trickapp"
        minSdkVersion 14
        targetSdkVersion 23

        ndk {
            moduleName "player_shared"
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    externalNativeBuild {
        ndkBuild {
            path '../../../Application.mk'
        }
    }
}

dependencies {
    compile 'com.google.android.gms:play-services:+'
    compile files('libs/dagger-1.2.2.jar')
    compile files('libs/javax.inject-1.jar')
    compile files('libs/nineoldandroids-2.4.0.jar')
    compile files('libs/support-v4-19.0.1.jar')
}
5
0
12 714
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Не используйте следующее:

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

потому что вы должны использовать точную версию игрового сервиса. И используйте только те API-интерфейсы сервисов Google Play, которые использует ваше приложение. Например, если вы используете местоположение, вам нужна только следующая зависимость:

implementation 'com.google.android.gms:play-services-location:15.0.1'

подробнее на Настроить сервисы Google Play

затем измените свою библиотеку поддержки на ту же версию вашего buildToolsVersion. Итак, вам необходимо изменить следующее:

implementation files('libs/support-v4-19.0.1.jar')

к

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

Удалите файл support-v4-19.0.1.jar из каталога библиотеки.

Наконец, используйте ту же версию для следующего:

  1. compileSdkVersion
  2. buildToolsVersion
  3. targetSdkVersion

Мое предложение, используйте версию 27. Итак, ваш приложениеbuild.gradle будет примерно таким:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    buildToolsVersion "27.0.3"

    defaultConfig {
        applicationId "com.guideapp.trickapp"
        minSdkVersion 14
        targetSdkVersion 27

        ndk {
            moduleName "player_shared"
        }
    }

    ...

}

dependencies {
    implementation 'com.google.android.gms:play-services-location:15.0.1'
    compile files('libs/dagger-1.2.2.jar')
    compile files('libs/javax.inject-1.jar')
    compile files('libs/nineoldandroids-2.4.0.jar')
    implementation 'com.android.support:support-v4:27.1.1'

}

Просто добавьте implementation 'com.android.support:support-v4:28.0.0'. Не забудьте изменить версию, которую вы используете.

Ты спас мне день

Alireza Noorali 07.12.2018 14:19

jsut добавил зависимости дизайна поддержки Android на уровне приложения build.gradle ...

предполагать реализация com.android.support:design:27.1.1, если это реализация 'com.android.support:appcompat-v7:27.1.1'

Другие вопросы по теме