[Android]Android Debug key 的制作
Android Debug key 的制作
背景
在Android App 开发过程中,我们经常会使用一些第三方的服务,但是很多的第三方服务都会要求我们提供包名,签名安装包,这时候,我们在日常调试时,就不得不使用正式签名来打包之后才能进行调试,非常不方便,下面就介绍,如何使用正式签名的.keystore来制作自己的debugkey。
具体步骤
假设我想将一个名为 release.keystore(其中:storePassword "123456" keyAlias "release" keyPassword "123456") 的签名,改为一个叫 debug.keystore 的调试签名。
下面是流程:
- 在控制台中移动到keystore目录下输入:(修改storePassword)
keytool -storepasswd -keystore release.keystore
会提示:
输入密钥库口令:123456
新keystore password:android
重新输入keystore password: android
** 注意:** 提示中冒号后面的内容并不会显示在控制台上,不要当做没有输入。
- 修改keyAlias(参数分别为: keystore文件名,之前的keyAlias,之后的必须为androiddebugkey):
keytool -changealias -keystore release.keystore -alias release -destalias androiddebugkey
输入密钥库口令:android
输入 <release> 的密钥口令: 123456
- 修改 keyPassword:
keytool -keypasswd -keystore release.keystore -alias androiddebugkey
输入密钥库口令:android
输入<androiddebugkey>的密钥口令:123456
新<androiddebugkey>的密钥口令:android
重新输入新<androiddebugkey>的密钥口令:android
这时候我们新的keystore就制作完成了,我们将它重命名为debug.keystore就可以在调试的时候也可以使用正式版的key了(只是签名相同了,但是还是不能用来发布的)。
总结
我们不能直接用正式版的keystore来直接调试的原因是android对于debugkey的格式是有严格要求的,
必须(storePassword "android" keyAlias "androiddebugkey" keyPassword "android")才能用来调试。在第二部中的三个其实也没有先后顺序,目的就是要把三个全部修改掉就好。
在android studio中使用时,我们可以直接在主项目的build.gradle的android{} 中添加:
signingConfigs {
debug {
storeFile file("$rootDir/debug.keystore")
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
release {
storeFile file("$rootDir/release.keystore")
storePassword "123456"
keyAlias "release"
keyPassword "123456"
}
}
这样子就一切ok了。