Android apk重新签名

作者: Charon_Pluto | 来源:发表于2017-09-26 21:27 被阅读2976次

    引用
    http://jingyan.baidu.com/article/bad08e1ee438e109c851213d.html

    一.签名文件的生成

    如果apk需要重新进行签名,第一条你必须要一个签名文件。而这个签名文件也不同。
    这种会有两种情况:

    • 1.用以前的签名文件
    • 2.新的签名文件

    比如第三方插件百度地图sdk,如果你的签名文件不同了和以前不同了,那么生成的SHA1码也就不同了。所以这种情况下,你就必须需要用的是以前的签名文件,再把它和apk进行重新打包。

    而如果你是要生成新的签名文件的话,那就请看Android的签名文件生成两种方法,去生成签名文件。

    二.删除之前的签名文件

    1、把apk的后缀改成zip格式

    修改apk格式为zip格式

    2、用解压工具打开压缩文件android.zip,然后删除文件夹中的 META-INF目录。
    META-INF存放签名后的CERT和MANIFEST文件,用于识别软件的签名及版权。

    删除META-INF文件夹

    3.直接把android.apk文件后缀改为android.apk

    三.为APK重新生成签名

    • 1.将签名证书(一般都是jks或者keystore格式的文件)复制到与需要重新签名的apk文件相同的目录下。按住shift键,鼠标右击,选择在此处打开命令窗口
    • 2.运行以下命令行(你就可千万别换行了,我这是为了让你们更直观的看见,其实每一行是连在一起的,中间只是有个空格)

    jarsigner -verbose -keystore debug.jks
    -storepass XXXXXX
    -signedjar android_sign.apk
    -digestalg SHA1 -sigalg MD5withRSA android.apk
    key

    -jarsigner是Java的签名工具-verbose参数表示:显示出签名详细信息-keystore表示使用当前目录中的debug.jks(或者格式为.keystore)签名证书文件

    -storepass XXXXXX表示Keystore密码

    -signedjar android_sign.apk表示签名后生成的APK名称

    android.apk表示未签名的APK Android软件

    -digestalg SHA1 -sigalg MD5withRSA:这就是必须加上的参数,如果你是jdk 1.6也不受影响

    key:需要换成你的签名文件的别名

    签名进行中
    • 3.本文件夹下的android_sign.apk就是重新签名的apk


      android_sign.apk就是重新签名的apk

    相关文章

      网友评论

        本文标题:Android apk重新签名

        本文链接:https://www.haomeiwen.com/subject/fpeeextx.html