signingConfigs——安卓 gradle

目录
一、前言
二、signingConfigs
三、signingConfig 结构解析
四、signingConfig 属性
五、一些建议
六、写在最后

一、前言

今天分享 signingConfigs 配置,从字面知道有 “签署配置” 的意思。该配置的作用,就是为编译出来的apk签上我们的“名字”,这样才能将apk发布安装到用户的设备上。

设备(手机、TV等)对 apk 的唯一认定,并不只是包名,而是 包名和签名,其中一项不同,都会认为这个 apk 包是不同的。

包名的不同,表现为多个应用。签名的不同,在应用升级时表现为无法安装,如果是第一次安装,则不会有问题。

二、signingConfigs

signingConfigs 下能够配置多个 signingConfig,例如下面代码中的 sign1 和 sign2。可以供我们变体选择需要的签名。

signingConfigs {
	sign1 {
	//....
	}
	sign2 {
		//....
	}
}

三、signingConfig 结构解析

1、signingConfig 的存在位置

signingConfig 会映射为 com.android.build.gradle.internal.dsl.SigningConfig 类,继承结构如下:

SigningConfig
DefaultSigningConfig
com.android.builder.model.SigningConfig
Named
CoreSigningConfig

2、如何运行

signingConfig 主要是用于打包时的签名,所以我们需要的是进行apk的打包编译。

// app:clean 为了先清空之前的文件
// app:aR 进行编译 release 包
// mac 使用 ./gradlew 
// window 使用 gradlew 
./gradlew app:clean app:aR

四、signingConfig 属性

4.1 keyAlias

  • 类型:String
  • 描述:我们所使用的签名别名。
  • 使用方法:
sign1 {
	keyAlias 'gradleStudy'
	//...其他属性
}

4.2 keyPassword

  • 类型:String
  • 描述:签名的密码
  • 使用方法:
sign1 {
	keyPassword '123456'
	// ...其他属性
}

4.3 storeFile

  • 类型:File
  • 描述:使用的签名文件,如果使用相对路径,是相对于我们设置该属性的gradle文件所处位置。
  • 使用方法:
sign1 {
	storeFile file('../key/gradleStudy.jks')
	// ...其他属性
}

4.4 storePassword

  • 类型:String
  • 描述:签名文件的密码
  • 使用方法:
sign1 {
	storePassword 'gradleStudy'
	// ...其他属性
}

4.5 storeType

  • 类型:String
  • 描述:签名类型。当我们不填时,默认为 jks 类型。
  • 使用方法:
sign1 {
	storeType 'jks'
	// ...其他属性
}

4.6 v1SigningEnabled

  • 类型:boolean
  • 描述:是否使用 v1 类型的签名方案。默认为true,即开启状态。如果我们将其置为false,则会导致在 7.0 以下版本,无法正常安装。
  • 使用方法:
sign1 {
	v1SigningEnabled false
	// ...其他属性
}

4.7 v2SigningEnabled

  • 类型:boolean
  • 描述:是否使用 v2 类型的签名方案。默认为true,即开启状态。v2在 7.0 版本之后才支持。
  • 使用方法:
sign1 {
	v2SigningEnabled true
	// ...其他属性
}

略带一提,v1、v2、v3 的签名方案在此处就不展开了,有兴趣的同学可以移步官方的文档查看,请进传送门

五、一些建议

因为签名文件和信息对于个人或是公司来说都是很重要的,官方并不建议直接写在gradle中,而是在根目录下建一个 keystore.properties 文件,存放我们的签名配置,然后在 gradle 中将其引入。


具体代码可以查看小盆友的另一个项目,多渠道打包

六、写在最后

Gradle项目地址:Github传送门

本篇博文的 signingConfigs 配置,请进传送门

如果觉得本篇博文对你有所启发或是解决了困惑,给个赞或关注我呀,小盆友会继续分享更多的优质文章。

或是请我喝杯咖啡吧,小盆友会更加信心百倍的写下去

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值