写文章仅仅是为了整理,分享希望得到大神们的评论指点,让自己得到更好的提升。
dex:直rar等解压apk 获得dex文件,或用apktool.jar反编译。
java -jar apktool.jar d xxx.apk
jar:用dex2jar工具把dex文件转换成jar包,jar文件可以用jd-gui工具直接打开查看java代码。
smali:androidkiller可以把dex文件直接转换为delivk 汇编smali文件(jeb工具它可以直接将smali源码翻译成java代码)。
xml、其他资源文件:通过上面的apktool.jar反编译时得到。
so:直接用rar等解压软件解压。(然后可用ida软件直接打开,可以看到arm汇编或c的伪代码)
apk :用反编译得到的smali源码、xml资源文件等回编译,并签名获得(signapk.jar是签名工具),可以用下面的命令完成(也可以借助androidkiller工具apkIDE等)。
===================
cd C:\Users\czg\Desktop\apktools\apktool_2.0.0rc4
java -jar apktool.jar b -d myLoc -o debug.apk (myLoc是反编译得到目录,这个命令会得到一个没有签名的apk)
java -jar .\sign\signapk.jar .\sign\testkey.x509.pem .\sign\testkey.pk8 debug.apk debug.sig.apk(给之前的apk签名,testkey是系统默认的签名文件,我们用esclpse 或android studio 等ide工具开发项目时,就是用这个默认的签名文件进行签名)
adb uninstall com.younghare.controller(手机中卸载已经安装的apk)
adb install debug.sig.apk(安装apk到手机)
adb shell am start -n com.younghare.controller/.Loading(启动apk的启动activity)
注:
当然还有其他不少工具,比如APK Multi Tool(非常强大)
签名文件可以在......\android_project\build\target\product\security中找到,包括media.pk8、media.x509.pem、platform.pk8、platform.x509.pem、shared.pk8、shared.x509.pem、testkey.pk8、testkey.x509.pem等签名文件
分享是一种美德,牵手是一种生活方式。