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

相关推荐
没有了遇见3 小时前
Android 原生定位(替代高德 / 百度等三方定位)<终极版本>
android
2501_916008894 小时前
iOS 抓包工具有哪些?全面盘点主流工具与功能对比分析
android·ios·小程序·https·uni-app·iphone·webview
2501_915921434 小时前
iOS混淆工具实战 视频流媒体类 App 的版权与播放安全保护
android·ios·小程序·https·uni-app·iphone·webview
CYRUS_STUDIO4 小时前
LLVM 全面解析:NDK 为什么离不开它?如何亲手编译调试 clang
android·编译器·llvm
CYRUS_STUDIO5 小时前
静态分析神器 + 动态调试利器:IDA Pro × Frida 混合调试实战
android·逆向
g_i_a_o_giao7 小时前
Android8 binder源码学习分析笔记(一)
android·java·笔记·学习·binder·安卓源码分析
翻滚丷大头鱼7 小时前
android 四大组件—BroadcastReceiver
android
人生游戏牛马NPC1号8 小时前
学习 Android (二十) 学习 OpenCV (五)
android·opencv·学习
2501_916008898 小时前
uni-app iOS 日志与崩溃分析全流程 多工具协作的实战指南
android·ios·小程序·https·uni-app·iphone·webview
文 丰8 小时前
【AndroidStudio】官网下载免安装版,AndroidStudio压缩版的配置和使用
android