zoukankan      html  css  js  c++  java
  • 修改Android签名证书keystore的密码、别名alias以及别名密码

    命令行生成keystore

    dos下进入JDK的bin目录

    运行如下命令:

    keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore

    (-validity 20000代表有效期天数),命令完成后,bin目录中会生成android.keystore

    查看命令keytool -list -keystore "android.keystore" 输入你设置的keystore密码

    之前在测试Eclipse ADT的Custom debug keystore自定义调试证书的时候,发过一篇关于调试证书规格的博文:Eclipse ADT的Custom debug keystore所需证书规格,提到过自定义调试证书的密码和alias命名以及alias密码都是有规矩的。其实Android应用开发接入各种SDK时会发现,有很多SDK是需要靠package name和keystore的指纹hash来识别的(百度地图SDK、Facebook SDK等等…),这样如果使用默认自动生成的debug keystore的话就会给开发调试工作带来一些麻烦。这时可以通过修改正式的release keystore,生成一份“遵守规矩”的临时自定义调试证书给开发时用,就方便多了,具体方法如下:

    1. 首先当然是先复制一份正式证书出来作为要修改为的临时调试证书。

    2. 修改keystore密码的命令(keytool为JDK带的命令行工具):

    keytool -storepasswd -keystore my.keystore

    其中,my.keystore是复制出来的证书文件,执行后会提示输入证书的当前密码,和新密码以及重复新密码确认。这一步需要将密码改为android

    3. 修改keystore的alias:

    keytool -changealias -keystore my.keystore -alias my_name -destalias androiddebugkey

    这一步中,my_name是证书中当前的alias,-destalias指定的是要修改为的alias,这里按规矩来,改为androiddebugkey!这个命令会先后提示输入keystore的密码和当前alias的密码。

    4. 修改alias的密码:

    keytool -keypasswd -keystore my.keystore -alias androiddebugkey

    这一步执行后会提示输入keystore密码,alias密码,然后提示输入新的alias密码,同样,按规矩来,改为android!

    以上几个操作执行后,my.keystore就是符合规矩的debug keystore了,接着在Eclipse的ADT设置中选中这个custom debug keystore即可,如下:

    sdk-an5

    同时还可以看到证书的MD5以及SHA1指纹。

    PS:以上3步命令行并没有先后顺序。

    不过有个问题就是,原在手机上装了这个APP,当修改了密码后,再导出,然后安装,手机会提示已存在签名冲突的应用,
    这个好像必须要把原APP卸载,再重安装新的才行.

    这个修改也会改变指纹hash,会被判定为签名冲突

  • 相关阅读:
    Javascript中得到中英文混合字符串的长度
    通往幸福之路之贷款篇
    骠叔
    神医
    买酱油与软件工程阶段划分
    XSLT中用normalizespace函数来清除元素的前后空格
    论屎
    Web程序中利用web.config解决无法输出excel页面的问题
    项目打单时该写什么文挡
    天桥底下是我家
  • 原文地址:https://www.cnblogs.com/exmyth/p/4722695.html
Copyright © 2011-2022 走看看