安卓多渠道apk配置不同签名

一般签名都是放在buildTypes里面:

groovy 复制代码
...
android {
    ...
    defaultConfig {...}
    signingConfigs {
        release {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}

但是多渠道时,使用配置的优先级从高到低分别是buildTypes、productFlavor、defaultConfig,如果按上面配置的话,根本修改不了签名。所以修改成以下:

groovy 复制代码
android {
    ...
    signingConfigs {
        release {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
        demo {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    defaultConfig {
        signingConfig signingConfigs.release //默认签名
    }
    buildTypes {
        debug{
            signingConfig null //这里一定要置null,否则gralde会插入默认签名
        }
        release{...}
    }
    // Specifies one flavor dimension.
    flavorDimensions "version"
    productFlavors {
        demo {
            dimension "version"
            applicationIdSuffix ".demo"
            versionNameSuffix "-demo"
            signingConfig signingConfigs.demo //渠道签名
        }
        full {
            dimension "version"
            applicationIdSuffix ".full"
            versionNameSuffix "-full"
        }
    }
}

按上面配置完后,渠道可以按照自己需求替换签名了。特别注意debug类型那里要置signingConfig null,否则编译debug版本时签名会不生效,因为gradle会插入默认签名,替换掉渠道的签名。

相关推荐
双鱼大猫4 分钟前
深入解析adb install安装全流程
android
顾林海22 分钟前
Flutter Dart 运算符全面解析
android·前端
小白马丶24 分钟前
Jetpack源码解读(一)——Lifecycle
android·android jetpack
&有梦想的咸鱼&41 分钟前
Android Glide 请求构建与管理模块原理深入剖析
android·glide
苏苏码不动了43 分钟前
Android MVC、MVP、MVVM三种架构的介绍和使用。
android·架构·mvc
万里鹏程转瞬至1 小时前
开源项目介绍:Native-LLM-for-Android
android·深度学习·开源·大模型
QING6183 小时前
Android_BLE 基于Jetpack Bluetooth实现文件传输指南。
android·kotlin·app
_一条咸鱼_4 小时前
Android Glide 的显示与回调模块原理分析
android
_一条咸鱼_5 小时前
Android Glide 图片解码与转换模块原理分析
android
QING6185 小时前
Android_BLE开发——扫描
android·kotlin·app