Jenkins Android gradle只能打包app-release-unsigned.apk

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins Android gradle只能打包app-release-unsigned.apk相关的知识,希望对你有一定的参考价值。

最近在通过jenkins自动打包安卓apk,但是测试打包的时候发现只能生成app-release-unsigned.apk,这个发到安卓手机因为缺少证书不能安装。解决办法是
1.在app/build.gradle文件中增加signingConfigs字段

apply plugin: ‘com.android.application‘

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.0"
    defaultConfig {
        applicationId "com.test.example"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }

    signingConfigs {
        debug {
            File strFile = new File("../../Keystore/Debug/debug.jks")
            storeFile file(strFile)
            storePassword "storeDebug1234567890"
            keyAlias "debugkey"
            keyPassword "aliasDebug1234567890"
            //println strFile.absolutePath;
        }
        release {
            File strFile = new File("../../Keystore/Release/release.jks")
            storeFile file(strFile)
            storePassword "storeRelease1234567890"
            keyPassword "keyRelease1234567890"
            keyAlias "releasekey"
            // println strFile.absolutePath;
        }
    }

    buildTypes {
        release {
            signingConfig  signingConfigs.release   #缺少这段,或者buildtypes在signingconfigs签名
            runProguard false
            proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘
        }
    }
}

ps:注意这段的证书路径以及密码根据自己的实际情况进行修改

我们这里就时配置了证书,但是发现还是不能打包release,其实是缺少了signingConfig signingConfigs.release
重新打包就可以正常生成app-release.apk了。

以上是关于Jenkins Android gradle只能打包app-release-unsigned.apk的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins+Gradle+Docker打docker镜像包上传至s3

linux下jenkins打包APK

jenkins+gradle+上传蒲公英(Android持续集成)

android--jenkins+gradle+android自动化构建apk步骤(转)

Jenkins + Gradle + pgyer + Android自动发布

jenkins+gradle+android环境变量配置