*、在闲暇时分,突然对apk的源码进行反编译进行一些基础的改动,然后重新打包成apk使用,于是学到了以下的东东,其实这些目前算不上知识,因为并不能做到知其所以然,所以后续深入了解的话会再次更新该文
#apk反编译的环境搭建 ibotpeaches.github.io/Apktool/install/[you can] #apk反编译、修改、重新打包 反编译:apktool d -o <output_dir_name> test.apk output_dir_name 反编译后的文件夹名称 test.apk 目标apk全称 修改--汇编修改 打包:apktool b -o <new_apk_name> <input_dir_name> 详见字段名称 #查看已有apk的签名-暂时无用 找到apk项目中的MET-INF/*.rsa文件 keytool -printcert -file *.rsa即可 #通过jdk生成keystore文件 keytool -genkey -alias test -keyalg RSA -validity 40000 -keystore test.keystore -alias 别名:重要且避免中文 -validity 有效期 #给制定的apk进行签名 jarsigner -verbose -keystore aya.keystore -signedjar my_new.apk -digestalg SHA1 -sigalg MD5withRSA my.apk aya -keystore 签名的文件名 -signedjar 新签名后的apk名称 my.apk 已经反编译并进行修改编译后的apk文件 test 签名的别名,必须有且必须是别名非文件全称 #jarsigner签名及解决找不到证书链的问题 首先可能是因为keystore是中文名的原因 其次是注意指令中keystore参数应为别名,是别名 #CMD下解决中文乱码问题 chcp 936(gbk)/65001(utf-8) 选其一即可