安卓多渠道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会插入默认签名,替换掉渠道的签名。

相关推荐
警醒与鞭策10 小时前
Codex桌面版与Claude桌面版使用设置
android·unity·ai·性能优化
传奇开心果12 小时前
【Compose Multiplatform跨端声明式UI实用技术】第19课:多平台部署与发布
android·kotlin
红尘伴蝶舞13 小时前
加密拦截器让抓包失效,我只能从 4KB 的 logcat 碎片里拼回 JSON
android·kotlin·ai编程
booboosui13 小时前
219 个还是 0 个:读不到微信界面时,我只加不删
android
Android打工仔13 小时前
Compose 中何时该用 padding,何时该用 offset
android·android jetpack
二流小码农13 小时前
HarmonyOS开发助手,0代码让元服务从开发到上架
android·ios·harmonyos
limit007513 小时前
三维 WebGIS 工具选型:加载、样式、分析、交付,一套界面能做完什么
android·前端·web3·安卓·webgl
骑着蜗牛撵大象32714 小时前
让 Codex 值夜班:把告警排查与巡检接成可回滚的自动化链路
android·java·运维·ai·自动化·codex·智能体
2401_8858850415 小时前
芬兰语音通知接口怎样对接?语音提醒接入流程
android·前端·python·php·语音识别
程序猿老A15 小时前
轻量应用服务器怎么用phpcms搭建网站?
android