我想为新应用尝试databinding,但遇到了一些问题。当我尝试运行我的应用程序时,总是收到class file for android.support.v4.app.ActivityCompatApi23 not found这个错误,我做了一些研究,发现this与我的问题有关的问题。但是我找不到任何能解决我问题的答案。

android {
    compileSdkVersion 27
    buildToolsVersion "27.0.3"
    flavorDimensions ""

    defaultConfig {
        minSdkVersion 19
        targetSdkVersion 22
        versionCode 24
        versionName "1.0"
        versionNameSuffix ""
    }

    buildTypes {
        release {
            minifyEnabled false
        }
        debug {
            minifyEnabled false
        }
    }

    dataBinding {
        enabled = true
    }

    lintOptions {
        disable 'InvalidPackage'
        baseline file("lint-baseline.xml")
        abortOnError false
    }

    task printLintResultsIfFailed {
        doLast {
            if (lintRelease.state.failure != null) {
                def report = new File(project.buildDir, "reports/lint-results-release.xml")
                print report.text
            }
        }
    }

    tasks.all {
        task -> if (task.name == "lintRelease") task.finalizedBy 'printLintResultsIfFailed'
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

task sourceJar(type: Jar, dependsOn:[assemble]) {
    from android.sourceSets.main.java.srcDirs
    classifier "source"
}


dependencies {

    implementation project(path: ':integration')

    kapt 'com.android.databinding:compiler:3.1.1'
}

这是完整的错误
错误:
cannot access ActivityCompatApi23
public abstract class NetworkActivity<T extends java.lang.Object> extends android.support.v4.app.FragmentActivity implements courier.Hub, courier.Receiver<eu.myapp.registration.network.HttpResult<T>> {
                ^
  class file for android.support.v4.app.ActivityCompatApi23 not found

我一删除这行
dataBinding {
        enabled = true
    }

我不会得到那个错误

所以我做错了什么?

最佳答案

configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
    def requested = details.requested
    if (requested.group == 'com.android.support') {
        if (!requested.name.startsWith("multidex")) {
            details.useVersion '25.3.0'
        }
    }
}

我从这个得到的:Error:(59, 8) error: cannot access ActivityCompatApi23 class file for android.support.v4.app.ActivityCompatApi23 not found

08-04 08:04