配置 Android 签名的 gradle 插件

使用本插件可以让所有的开发机以及持续交付设备使用完全相同的代码进行工作.
避免陷入本地配置兼容性的泥淖中, 防止私密信息泄露. github

解决的问题

  • 签名文件路径这样的本地信息独立配置
  • 签名文件密钥与代码仓库隔离, 与开发隔离
  • 便于持续交付

优点

  • 一次配置, 再无后患
  • 便于扩展, 再多的签名文件也不怕
  • 以插件的形式使用, 使用 dependency 的版本管理机制保证配置的可复现. 以后随时切换回这个版本的代码都能有效运行.

使用方法

1. 写一个 xml 文件描述你的签名

文件路径是 ~/.android_key_store.xml 按照这样写就行了

<keystores>
    <keystore>
        <store-name>keystore1</store-name>
        <store-path>~/keys/keystore1.key</store-path>
        <store-password>password</store-password>
        <aliases>
            <alias>
                <alias-name>alias1</alias-name>
                <alias-password>password</alias-password>
            </alias>
        </aliases>
    </keystore>

    <keystore>
        <store-name>keystore2</store-name>
        <store-path>~/keys/keystore2.key</store-path>
        <store-password>password</store-password>
        <aliases>
            <alias>
                <alias-name>alias1</alias-name>
                <alias-password>password</alias-password>
            </alias>
            <alias>
                <alias-name>alias2</alias-name>
                <alias-password>password</alias-password>
            </alias>
        </aliases>
    </keystore>
</keystores>

2. 配置 classpath 使用 plugin

在 top level buid.gradle 文件中加入 classpath 'org.quanqi:android-signing:0.1.3' 如下

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'
        classpath 'org.quanqi:android-signing:0.1.3'
    }
}

apply plugin: 'com.android.application' 后面加入
apply plugin: 'org.quanqi.android-signing'

3. 现在在 android.signingConfigs 里面这些签名可用了:

  • keystore1_alias1
  • keystore2_alias1
  • keystore2_alias2

4. Enjoy

欢迎 fork star and pr :github

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容