• apk签名(不打包)


    apk提交给应用市场加固后,需要重新签名

    签名工具:360签名

    下载地址:http://yunpan.cn/cm8GqVWL7Y8Eh

    签名步骤:http://jiagu.360.cn/qcms/help.html#!id=84

    命令行签名步骤:

    利用标准的java工具keytool.exe(位于jdkjrein目录下)创建key,利用jarsigner.exe工具使用生成的key来生成证书和给程序签名(位于jdkin目录下)。
    Win +R 运行cmd,进入目录D: emp(注:使用该目录为示例工作目录)
    1)、创建可以,运行如下命令

    keytool -genkey -alias demo.keystore -keyalg RSA -validity 20000 -keystore demo.keystore
    /*说明:keytool工具是Java JDK自带的证书工具
    -genkey参数表示:要生成一个证书(版权、身份识别的安全证书)
    -alias参数表示:证书有别名,-alias demo.keystore表示证书别名为:demo
    -keyalg RSA表示加密类型,RSA表示需要加密,以防止别人盗取
    -validity 20000表示有效时间20000天( K3
    -keystore demo.keystore表示要生成的证书名称为demo
    */

    2)、删除之前的签名文件
    方法一:用解压缩工具解压缩apk文件(如:解压到D: empDemo;找到下面的目录META-INF,删除目录META-INF。将整个Demo文件夹用zip工具,重新打包成zip压缩包,然后更改后缀为apk (注意:产生的Demo.zip中没有二级根目录)
    方法二:用解压缩工具直接打开apk(注:不要解压),直接删除目录META-INF。
    压缩包内容解析:
    META-INF目录:存放签名后的CERT和MANIFEST文件,用于识别软件的签名及版权。
    Rres目录:存放各种Android原始资源,包括:动画anim、图片drawable、布局layout、menu菜单、xml等等
    AndroidManifest.xml编码后的Android项目描述文件,包括了Android项目的名称、版本、权限、程序组件描述等等
    aclasses.dex编译后Class被dx程序转换成Dalvik虚拟机的可执行字节码文件
    qresources.arsc所有文本资源的编译产物,里面包含了各Location对应的字符串资源。

    3)、使用生成的key对apk签名,运行如下命令:

    jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore
    /*说明:jarsigner是Java的签名工具
    -verbose参数表示:显示出签名详细信息
    -keystore表示:使用当前目录中的demo.keystore签名证书文件。
    -signedjar demor_signed.apk demo.apk demo.keystore 正式签名,三个参数中依次为签名后产生的文件demo_signed,要签名的文件demo.apk和密钥库demo.keystore.
    */
    (注:查看某个apk是否经过了签名方法,jarsigner –verify demo.apk。优化:签名后需要做对齐优化处理zipalign -v 4 your_project_name-unaligned.apk your_project_name.apk )

     

  • 相关阅读:
    c++学习记录(七)
    c++学习记录(六)
    c++学习记录(五)
    c++学习记录(四)
    2020面向对象寒假作业(二)
    2020面向对象寒假作业(二)
    HTML学习记录(一)
    我罗斯方块
    我罗斯
    面向对象程序设计3
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/5895871.html
Copyright © 2020-2023  润新知