android - 程序类型已经存在 : android. support.v4.app.BackStackState$1

标签 android

我升级了我的android studio..我发现最新版本有很多问题

虽然存在许多类似的问题,但我检查了所有的答案,但没有一个对我有用!

这是我在编译代码时遇到的错误:

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)}

渐变文件:

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

allprojects {
    repositories {
        jcenter()
    }
}

应用程序等级:

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')
}

最佳答案

不要使用以下内容:

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

因为您必须使用确切版本的播放服务。并且仅使用您的应用使用的特定 Google Play 服务 API。例如,如果您使用位置,则只需要以下依赖项:

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

阅读更多信息 Set Up Google Play Services

然后将您的支持库更改为与您的 buildToolsVersion 相同的版本。因此,您需要更改以下内容:

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

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

libs 目录中删除 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'

}

关于android - 程序类型已经存在 : android. support.v4.app.BackStackState$1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50615753/

相关文章:

具有多个表的 Android 内容提供程序未知 uri 错误

显示 android.content.pm.PackageManager$NameNotFoundException : Application package com. google.android.backup 的 Android 日志猫

java - 为什么我的 fragment 不起作用

java - 无法解析符号 'activityInfo'

android - 如何从 URI 获取完整的文件路径

android - Android Studio 中的错误消息

android - 检查wifi扫描是否完成

android - 更换手机后如何恢复RSA key ?

android - 在 Java 中使用 Gradle Play Publisher 的版本名称覆盖

java - 如何从firebase存储获取imageUrl并存储在firebase实时数据库中?