Android 项目#对项目';进行后评估(结束):app&x27;无法在当前上下文中执行。自然反应

Android 项目#对项目';进行后评估(结束):app&x27;无法在当前上下文中执行。自然反应,android,react-native,react-native-android,Android,React Native,React Native Android,我已经在SO中尝试了现有的解决方案,但没有任何效果。。猜猜我哪里错了。我刚刚更新了gradle-wrapper.properties中的gradle distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip 这是我的android/build.gradle wrapper { gradleVersion = '5.1.1' distributionUrl = distribut

我已经在SO中尝试了现有的解决方案,但没有任何效果。。猜猜我哪里错了。我刚刚更新了gradle-wrapper.properties中的gradle

distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
这是我的android/build.gradle

wrapper {
    gradleVersion = '5.1.1'
    distributionUrl = distributionUrl.replace("bin", "all")
}
Myandroid/build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
ext {
    googlePlayServicesVersion = "+"
}
buildscript {
    ext {
        buildToolsVersion = "28.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 26
        supportLibVersion = "27.1.1"
        googlePlayServicesVersion = "15.0.1"
        googlePlayServicesAuthVersion = "15.0.1"
        firebaseVersion = "16.0.4"
    }
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.4.1'
        // classpath 'com.android.tools.build:gradle:3.1.2' // <--- use this version or newer
        classpath 'com.google.gms:google-services:4.2.0' // <--- use this version or newer
    }
}

allprojects {
    repositories {
        mavenLocal()
        google()
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
        maven { url 'https://maven.google.com' }
        maven { url "https://jitpack.io" }
    }
}

subprojects {
  project.configurations.all {
      afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion rootProject.ext.compileSdkVersion
                buildToolsVersion rootProject.ext.buildToolsVersion
            }
        }
    }
  }
}

wrapper {
    gradleVersion = '5.1.1'
    distributionUrl = distributionUrl.replace("bin", "all")
}

configurations.all {
    resolutionStrategy {
        force 'com.google.android.gms:play-services-gcm:12.0.1'
   }
}
//顶级生成文件,您可以在其中添加所有子项目/模块通用的配置选项。
分机{
googlePlayServicesVersion=“+”
}
构建脚本{
分机{
buildToolsVersion=“28.0.3”
minSdkVersion=16
compileSdkVersion=27
targetSdkVersion=26
supportLibVersion=“27.1.1”
googlePlayServicesVersion=“15.0.1”
googlePlayServicesAuthVersion=“15.0.1”
firebaseVersion=“16.0.4”
}
存储库{
jcenter()
谷歌()
}
依赖关系{
classpath'com.android.tools.build:gradle:3.4.1'

//classpath'com.android.tools.build:gradle:3.1.2'/在所有项目中移动子项目部分:

allprojects {

{...} //The rest of your config

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
        android {
            compileSdkVersion rootProject.ext.compileSdkVersion
            buildToolsVersion rootProject.ext.buildToolsVersion
        }
    }
    }
}
}

  • 在C驱动器中移动整个React本机项目。在项目内打开命令行
  • cd安卓
  • /gradlew清洁
  • cd
  • react本地运行的android
  • 问题可能是同一项目文件夹中有多个react本机项目

    希望它能起作用。

    对于RN 0.57,请尝试

    classpath 'com.android.tools.build:gradle:3.2.0'
    
    gradleVersion = '4.6'
    
    请在此处查看0.57的发行说明:

    更新:

    对于RN 0.57.2,我使用了:

    com.android.tools.build:gradle:3.1.4
    Android studio 3.1.4
    gradle 4.4
    
    对于RN 0.58.6,我使用了:

     classpath 'com.android.tools.build:gradle:3.3.0'
     gradleVersion '4.7'
     Android studio 3.1.4
    

    我不确定我是否正确我只是评论了这几行

    subprojects {
      project.configurations.all {
          afterEvaluate {project ->
            if (project.hasProperty("android")) {
                android {
                    compileSdkVersion rootProject.ext.compileSdkVersion
                    buildToolsVersion rootProject.ext.buildToolsVersion
                }
            }
        }
      }
    }
    

    工作正常…

    在Android studio中打开项目,运行
    文件->与gradle文件同步项目
    ,如果您有任何错误,请将其添加到您的问题中。@FlorinDobre感谢您的回复,更新了问题,请检查我的GistHanks,以获得相同的回复issue@Prabhakaran8737您使用的是什么版本的RN?它必须是gradle版本这是我的版本
    “react native”:“^0.57.8”,
    它显示最低版本为4.6并更改为4.6,但仍面临另一个问题错误:资源android:attr/fontVariationSettings未找到。
    android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:475:错误:资源android:attr/fontVariationSettings未找到。
    android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:475:error:resource android:attr/ttcIndex未找到
    尝试过,但相同的问题是,它显示了所需的最低版本,我使用了所需的最低版本,然后相同的问题尝试
    compileSdkVersion 28
    。您可能还必须更改targetSdkVersion作为“28”。使用28版本进行了尝试,现在已创建了不同的问题
    Android任务。当调用Android.applicationVariants、Android.libraryVariants或Android.testVariants时会发生这种情况。testVariants
    尝试了这一点,没有帮助
    subprojects { project -> 
      afterEvaluate {
            if((project.plugins.hasPlugin('android') || project.plugins.hasPlugin('android-library'))) {
                android {
                    compileSdkVersion rootProject.ext.compileSdkVersion
                    buildToolsVersion rootProject.ext.buildToolsVersion
                }
            }
        }
    }