apk文件编译、修改、反编译和签名

来源:互联网 发布:数据库笛卡尔积图解 编辑:程序博客网 时间:2024/05/16 05:37

有些情况下我们需要参考一下别人的app好的创意,就像看看app的源码,甚至一些人会想修改一下别人的敏感的信息使其变成自己的。简单记录一下具体的实现步骤,做个笔记:

使用apktool编译与反编译apk。

1 首先下载apktool并安装   https://ibotpeaches.github.io/Apktool/install/

2. apktool d testapp.apk 反编译apk


3.修改smali

4.apktool b testapp 编译文件得到apk  在testapp/dist下得到重新编译的apk文件


5.给apk文件签名

签名方法一:

用压缩软件同时打开原始文件(1.apk)和反编译后文件(2.apk)

我们需要把两类文件从2.apk拉到1.apk中替换,

第一类是:刚才反编译后,你所替换过,或者修改过的所有文件
第二类是:resources.arsc这一个文件
所有文件一个都不能替换少了
PS:记得要放到相同的目录下哦!!
PSP:我们最后要的是1.apk这个文件!!!

签名方法二:

通过jarsigner命令使用keystore前面文件

jarsigner -verbose -keystore demo.keystore 2.apk demo.keystore




6,对签名后的apk包做对齐操作

  1. zipalign -v 4 test.apk test_aligned.apk  
将zipalign加入到环境变量中,zipalign在Android SDK的build tool下


结束!!!!