[Android]Android Debug key 的制作

Android Debug key 的制作

背景

在Android App 开发过程中,我们经常会使用一些第三方的服务,但是很多的第三方服务都会要求我们提供包名,签名安装包,这时候,我们在日常调试时,就不得不使用正式签名来打包之后才能进行调试,非常不方便,下面就介绍,如何使用正式签名的.keystore来制作自己的debugkey。

具体步骤

假设我想将一个名为 release.keystore(其中:storePassword "123456" keyAlias "release" keyPassword "123456") 的签名,改为一个叫 debug.keystore 的调试签名。
下面是流程:

  1. 在控制台中移动到keystore目录下输入:(修改storePassword)
keytool -storepasswd -keystore release.keystore

会提示:

输入密钥库口令:123456
新keystore password:android
重新输入keystore password: android

** 注意:** 提示中冒号后面的内容并不会显示在控制台上,不要当做没有输入。

  1. 修改keyAlias(参数分别为: keystore文件名,之前的keyAlias,之后的必须为androiddebugkey):
keytool -changealias -keystore release.keystore -alias release -destalias androiddebugkey
输入密钥库口令:android
输入 <release> 的密钥口令: 123456
  1. 修改 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了。

posted @ 2016-05-15 01:39  diql  阅读(2105)  评论(0编辑  收藏  举报