取决于调试或发布的apk文件的不同archivesBaseName未按预期应用

时间:2016-05-12 10:49:52

标签: android gradle apk

在构建我的Android应用程序时,我尝试根据调试或发布模式提供不同的基本名称。但它永远不会像我期望的那样,我无法弄清楚如何解决它。

我的gradle中有一个android-part看起来像这样:

def applicationVersionCode() {
    return 14;
}

def applicationVersionName() {
    return "1.5";
}

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"
    useLibrary 'org.apache.http.legacy' // fix for https://github.com/loopj/android-async-http/issues/830
    }

defaultConfig {
    applicationId defaultApplicationId
    versionCode applicationVersionCode()
    versionName applicationVersionName()

    project.ext.set("archivesBaseName", "AppName-" + applicationVersionName() + applicationVersionCode())

    minSdkVersion 16
    targetSdkVersion 17
}

buildTypes {
    debug {
        minifyEnabled false
        versionNameSuffix "." + applicationVersionCode() + "-SNAPSHOT"
        applicationIdSuffix ".debug"
    }

    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}
}

在构建调试模式时,应用程序会获取名称:

AppName-1.14-debug.apk

当我添加:

project.ext.set("archivesBaseName", "AppName-" + applicationVersionName() + applicationVersionCode())

它得名:

AppName-1.14-SNAPSHOT-debug.apk

然后发布版本获得此名称:

AppName-1.14-SNAPSHOT-release.apk

我想apk的不同名称是:

AppName-1.14-SNAPSHOT.apk
AppName-1.14-release.apk

我错过了什么?

0 个答案:

没有答案