二次打包签名apk(android)

    第一次写博客,有点紧张,不过没关系,每天记录自己的技术。

    今天运营部上传360应用市场的时候失败,结果我跟他们沟通,得知上传到360需要经过他们的加固。也就是说再360应用市场加固之后返回的apk给我们,让我们再次签名才给上传,否则上传不成功(绝逼是坑)。

    二次签名打包步骤


    第一步:需要删除apk包中的签名文件,META-INF(貌似用Android Studio混淆打包的apk没有这个签名文件)。其实apk就是一个压缩包,可以把apk改后缀名为.zip再打开,如果里面有签名文件,就把里面的签名文件删了,再改后缀名回来.apk格式;

    

    第二步:将你用来签名apk的签名证书和需要签名的apk文件复制到同一个目录下,例如D:/sign目录下.


    第三步:进入cmd管理模式,进入刚刚存放签名证书和apk的目录下(D:/sign),运行一下代码(华丽的分割线里面):

===================================

jarsigner -verbose -keystore mystore.keystore -storepass 123456-signedjar test_signed.apk -digestalg SHA1 -sigalg MD5withRSA test.apk testalias

===================================

解释:

-verbose参数表示:显示出签名详细信息
-keystore表示使用当前目录中的mystore.keystore签名证书文件
-storepass 密码:“123456”,此密码是对应的mystore.keystore的密码
-signedjar test_signed.apk表示签名后生成的APK名称(二次签名后生成的apk)
test.apk表示未签名的APK Android软件(需要二次签名的apk)
-digestalg SHA1 
-sigalg MD5withRSA:这就是必须加上的参数,如果你是jdk 1.6也不受影响
-testalias表示Key别名,你的签名文件里面的alias里面的值(签名文件的别名)

最后如图所示:

二次打包签名apk(android)_第1张图片

你可能感兴趣的:(二次签名)