错误:与配置“”的资源“ attr / actionBarSize”的值重复

时间:2018-11-09 03:00:29

标签: android android-studio targetsdkversion

我正在移植当前的Android APK以符合最近的Playstore指令-“ targetSdkVersion 26”

这是我的gradle文件。我从compileSdkVersion 26开始,最后是28。因此,对于28,我不得不使用AndroidX依赖项。我卡在主题行中张贴的错误。任何帮助将不胜感激。

错误消息是

AGPBI: {"kind":"error","text":"error: duplicate value for resource \u0027attr/actionBarSize\u0027 with config \u0027\u0027.","sources":[{"file":"/Users/sk/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0.aar/34c8fa33903fb2b3203e5c70952da588/res/values/values.xml","position":{"startLine":1303,"startColumn":4,"startOffset":70911,"endColumn":68,"endOffset":70975}}],"original":"","tool":"AAPT"}
AGPBI: {"kind":"error","text":"error: resource previously defined here.","sources":[{"file":"/Users/sk/.gradle/caches/transforms-1/files-1.1/appcompat-1.0.0.aar/34c8fa33903fb2b3203e5c70952da588/res/values/values.xml","position":{"startLine":1303,"startColumn":4,"startOffset":70911,"endColumn":68,"endOffset":70975}}],"original":"","tool":"AAPT"}
:app:mergeDebugResources

    apply plugin: 'com.android.application'

    android {

    compileSdkVersion 28
    buildToolsVersion "28.0.3"


    defaultConfig {
        applicationId "pack.age.net"
        minSdkVersion 16

        //Since no updates to app can be published in Playstore beginning Nov 1, 2018  - bumping targetSdk to 26 from 19
        targetSdkVersion 26

        //Double check this before you move this to production
        versionCode 22
        versionName "3.3"

        // Enabling multidex support.
        multiDexEnabled true

        //Language resources
        resConfigs "en", "hi"



    }

    buildTypes {
        release {

            //Shrink your code
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }

        debug {
            debuggable true
        }
    }

    lintOptions {
        checkReleaseBuilds false
    }

    packagingOptions {

        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
    }

    repositories {
        mavenCentral()

        maven {
            url "http://dl.bintray.com/journeyapps/maven"
        }
    }



    useLibrary 'org.apache.http.legacy'
}

dependencies {
    //implementation 'com.android.support:support-v4:28.0.0'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'

//    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'androidx.appcompat:appcompat:1.0.0'

//    implementation 'com.android.support:design:28.0.0'
    implementation 'com.google.android.material:material:1.0.0'

    implementation 'com.google.firebase:firebase-messaging:17.3.4'
    //Hockey App for Crash Analytics
    implementation 'net.hockeyapp.android:HockeySDK:5.1.1'
    //Sundry library files
    implementation files('libs/commons-codec-1.9.jar')
    implementation files('libs/ksoap2-android-assembly-3.6.0-jar-with-dependencies.jar')
    implementation files('libs/libphonenumber-6.2.jar')
    //Mutlidex Support
    implementation 'com.android.support:multidex:1.0.0'
    //Square Picasso Image View
    implementation 'com.squareup.picasso:picasso:2.5.2'
    //Calligraphy for custom fonts
    implementation 'uk.co.chrisjenx:calligraphy:2.2.0'
    implementation 'com.squareup.okhttp3:okhttp:3.10.0'
    testImplementation 'junit:junit:4.12'
    //Apache Commons
    implementation 'org.apache.commons:commons-lang3:3.7'

    implementation 'com.github.chrisbanes:PhotoView:2.2.0'
    // Supports Android 4.0.3 and later (API level 15)
    implementation 'com.journeyapps:zxing-android-embedded:2.0.1@aar'
    // Supports Android 2.1 and later (API level 7), but not optimal for later Android versions.
    // If you only plan on supporting Android 4.0.3 and up, you don't need to include this.
    implementation 'com.journeyapps:zxing-android-legacy:2.0.1@aar'
    // Convenience library to launch the scanning and encoding Activities.
    // It automatically picks the best scanning library from the above two, depending on the
    // Android version and what is available.
    implementation 'com.journeyapps:zxing-android-integration:2.0.1@aar'
    // Version 3.0.x of zxing core contains some code that is not compatible on Android 2.2 and earlier.
    // This mostly affects encoding, but you should test if you plan to support these versions.
    // Older versions e.g. 2.2 may also work if you need support for older Android versions.
    implementation 'com.google.zxing:core:3.0.1'
    //Firebase
    implementation 'com.google.firebase:firebase-core:16.0.1'
}

apply plugin: 'com.google.gms.google-services'

4 个答案:

答案 0 :(得分:0)

我们需要更改XML布局,任何支持值都需要更改为androiddx值 android.support.v4.widget.SwipeRefreshLayout需要更改为androidx.swiperefreshlayout.widget.SwipeRefreshLayout

答案 1 :(得分:0)

PS_ANDROIDBUILDTOOLSVERSION=29.0.1
android.aapt2FromMavenOverride=${Android_home}/build-tools/29.0.1/aapt2

从Maven禁用aapt2

答案 2 :(得分:0)

正确的答案可能是将Firebase依赖项更新为已经使用androidx依赖项的版本,如果还不够,还应启用Jetfier,以防其他库引入{{1 }}依赖关系,需要重新编写。为此,请将其添加到com.android.support文件中:

gradle.properties

答案 3 :(得分:0)

你好~~我也陷入了向Androidx迁移的困境……根据google document,您应该找到gradle属性并添加这两行,这对我来说很好!

android.enableJetifier=true
android.useAndroidX=true

position in android studio

好运伙计〜