构建失败无法找到方法signingConfigs()

时间:2017-08-19 14:33:02

标签: 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
        }
    }

在android / .gradle / gradle.properties

MYAPP_RELEASE_STORE_FILE=ezam.keystore
MYAPP_RELEASE_KEY_ALIAS=ezam
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****

4 个答案:

答案 0 :(得分:4)

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

buildTypes{
    release{
        signingConfig  // not signingConfigs without "s"
    }
}

答案 1 :(得分:1)

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

apply plugin 'com.android.application'

android {

    // (...)

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

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

由于没有意识到这一点,因此遇到了同样的错误,并将signingConfigs设为顶层元素。

这会给你一个错误:

apply plugin 'com.android.application'

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


android {

    // (...)

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

答案 2 :(得分:1)

您正在将配置添加到错误的文件。将其添加到应用程序级别build.gradle android / app / build.gradle。

请参阅https://github.com/Triple-T/gradle-play-publisher/issues/228#issuecomment-321557581

答案 3 :(得分:0)

就我而言,我必须做

buildTypes{
    release{
        signingConfig signingConfigs.release
    }
}

代替

buildTypes{
    release{
        signingConfig release
    }
}