Gradle signing app with packageRelease “specified

2019-01-17 16:45发布

问题:

I am trying to test an app with Build Variant in release mode in Android Studio with a project using Gradle.

build.gradle:

(omitted dependencies and repositories)

android {
    apply plugin: 'android'
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 16
        versionCode 1
        versionName "1.0"
    }

    signingConfigs {
        release {
            storeFile file("release.jks")
            storePassword "password"
            keyAlias "MobileAndroid"
            keyPassword "password"
        }
    }

    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.release
        }
    }
}

If the Build Variant is release Gradle returns an error

A problem was found with the configuration of task ':app:packageRelease'.

File '/Users/andre/workspace/MobileAndroid/app/release.jks' specified for property 'signingConfig.storeFile' does not exist.

Removing "signingConfig.storeFile" returns an Android Studio message box error:

Application Installation Failed

Installation failed since the APK was either not signed, or signed incorrectly. If this is a Gradle-based project, then make sure the signing configuration is specified in the Gradle build script.

release.jks exists and using the Android Studio wizard "Build > Generate Signed APK..." I can generate an app.apk signed.

How do I solve this error in Gradle?

回答1:

Please double-check that the file exists at the place the error message is looking (Users/andre/workspace/MobileAndroid/app/release.jks) and that there are no permissions problems preventing the files from being read.



回答2:

For me it was because i was entering in just the name of the key when it was asking for the full path.



回答3:

For me: I just indicated the .jks file from the explorer.



回答4:

Might be helpful for someone - I was getting the same message "specified for property 'signingConfig.storeFile' does not exist”

Somehow in my case when i changed laptops keystore files got corrupted/tempered while transferring it from one to another. I would suggest not to zip the file, Just transfer it as it is.

When i transferred again without zipping, It worked like a charm!!!



回答5:

If you want to create signed version of apk then it requires release. If you don't want to, choose the debug mode and run the unsigned apk file.