码迷,mamicode.com
首页 > 移动开发 > 详细

Android开发必备技能——修改debug签名

时间:2016-05-04 17:26:34      阅读:418      评论:0      收藏:0      [点我收藏+]

标签:

前言

从事Android开发的小伙伴们,想必都会遇到这样的问题。当你的应用中需要集成百度地图、极光推送等第三方平台时,会去申请一个叫做AppKey的东西。与此同时,你得提供下应用签名信息的MD5或SHA1。然后就悲催的发现,只有用指定的签名文件打包时,该功能才能正常使用。如果你用的是开发工具的debug keystore签名信息,直接run一下就好,如果你用的是APP发布时候的keystore,每次测试时都得export 一个apk。心中一万只草泥马在奔腾的有木有?

楼主之前的小伎俩就是,去申请两个AppKey,分别对应debug keystore 和 release keystore。然后在心中默默地为自己的机智点个赞。然而一些比楼主更聪明的小伙伴发现,eclipse里面可以替换签名文件。于是满怀欣喜的去指定一个keystore,期待这样的画面(注意我此处的md5和sha1):

技术分享

然而看到的是这样的:

技术分享

小伙伴的内心应该是崩溃的。

签名文件(keystore)

在生成签名文件时候,输入的最重要的三条信息是:store passwordkey aliaskey password。有过用eclipse export apk 经验的童鞋应该很清楚这三个信息的作用。

此时应该很好理解之前的错误了,因为指定debug keystore时,eclipse根本没让输入以上三个信息。我也就呵呵一笑了……再看默认的debug keystore,会有一种错觉,该签名文件没有密码。

然而,事实并不是如我们所想的那样。默认的debug keystore的三个信息如下:

  1. store password:android
  2. key alias:androiddebugkey
  3. key password:android

并且,eclipse 的debug keystore只认含有这三个信息的keystore。

修改签名文件

已经知道了错误原因,那么接下来的解决方案只能尝试着去修改keystore里的这三个信息了。总不能去重新生成一个包含这个三个信息的keystore吧?然并卵……

修改之前,先查看一下keystore里的信息:

技术分享

注意此处的MD5和SHA1与之前截图的一致。

查看keystore信息:keytool -list -v -keystore “keystore 文件” -storepass “keystore 密码”

将上述三个信息,分三步修改。比较坑爹的是,此处只能用命令玩了(修改之前,记得将原有的签名文件备份)。

  1. 修改store password。
    技术分享

    命令:keytool -storepasswd -keystore “keystore 文件”。
    会提示输入旧的密码,再输入两次新密码,此时将新密码改成android。

  2. 修改key alias。
    技术分享

    命令:keytool -changealias -keystore “keystore 文件” -alias “keystore 别名” -destalias “目的别名”。
    将目的别名改成:androiddebugkey,会提示输入第一个密码,就是第一步改过的android,第二个密码是之前的key password。

  3. 修改key password。
    技术分享

    命令:keytool -keypasswd -keystore “keystore 文件” -alias “指定修改密码的别名”
    由于,一个keystore中,可以存储多个alias,因此此处需要指定修改密码的alias(这里应当是androiddebugkey),然后需要输入store password:android(修改后的)。再输入旧的key password(之前只是修改了alias :androiddebugkey)。最后输入两次新的key password:android。

最后,再次查看签名文件信息:
技术分享

输入的密钥库口令,已经是修改之后的android,alias 也已经修改成androiddebugkey。现在就可以放在eclipse里面替换了。

强大的AndroidStudio

看到这里,心很累了有木有?感觉eclipse是无比的坑爹。很好奇,AndroidStudio是怎么实现这个功能的,那么接下来的操作,也许会让你惊呆。

第一步,添加一个签名文件配置信息。选择keystore,并输入store password、key alias,key password。

技术分享

第二步,在debug模式中,选择之前添加的签名文件配置信息。

技术分享

也可以直接在gradle中配置。

技术分享

然后,就没然后了。对Studio 只有一个评价,android开发神器。没有之一……

不说了,我去卸载eclipse。

Android开发必备技能——修改debug签名

标签:

原文地址:http://blog.csdn.net/flueky/article/details/51313810

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!