生成失败找不到方法signingConfigs()

Pan*_*suk 5 android react-native

我在官方网站上关注:https : //facebook.github.io/react-native/docs/signed-apk-android.html

它说:128错误是 signingConfigs signingConfigs.release

在android / app / build.gradle中

 signingConfigs {
        release {
            if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
                storeFile file(MYAPP_RELEASE_STORE_FILE)
                storePassword MYAPP_RELEASE_STORE_PASSWORD
                keyAlias MYAPP_RELEASE_KEY_ALIAS
                keyPassword MYAPP_RELEASE_KEY_PASSWORD
            }
        }
    }
    buildTypes {
        release {
            minifyEnabled enableProguardInReleaseBuilds
            proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
            signingConfigs signingConfigs.release
        }
    }
Run Code Online (Sandbox Code Playgroud)

在android / .gradle / gradle.properties中

MYAPP_RELEASE_STORE_FILE=ezam.keystore
MYAPP_RELEASE_KEY_ALIAS=ezam
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****
Run Code Online (Sandbox Code Playgroud)

And*_*erd 7

signingConfigs元素必须是该元素的子android元素

apply plugin 'com.android.application'

android {

    // (...)

    signingConfigs {
        release {
            // (...)
        }
    }

    buildTypes {
        release {
            // (...)
            signingConfig signingConfigs.release
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我遇到了同样的错误,因为我没有意识到这一点,并制作signingConfigs了一个顶级元素。

这会给你一个错误:

apply plugin 'com.android.application'

signingConfigs {
    release {
        // (...)
    }
}


android {

    // (...)

    buildTypes {
        release {
            // (...)
            signingConfig signingConfigs.release
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!这救了我的命,这应该在文档中更好地指出。 (2认同)

小智 6

诚实地在此问题上花费3个小时

buildTypes{
    release{
        signingConfig  // not signingConfigs without "s"
    }
}
Run Code Online (Sandbox Code Playgroud)