Ubantu 反编译 apk

本文介绍如何使用apktool进行APK反编译及重新打包,利用keytool和jarsigner完成APK签名的过程,并提供修改APK中HTTPS连接的方法。此外还涉及dex2jar工具将DEX文件转换为JAR文件的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[转载]      http://kyleyan.net/?p=360

 

环境

JDK 1.5 以上

1.apk反编译与打包


工具:apktool

Requirements: JRE 1.6 (Java Runtime Environment)

aapt command in a PATH

basic knowledge of what is SDK, aapt, PATH, smali and Google search engine may be useful

Installation for noobs:

Linux:Download apktool-install-linux-* file

Download apktool-* file

Unpack both to /usr/local/bin directory (you must have root permissions)

反编译:

apktool d test.apk 存放路径


打包:


sudo apktool b

2.使用keytool和jarsigner签名


生成了签名文件my.keystore:

keytool -genkey -alias my.keystore -keyalg RSA -validity 20000 -keystore my.keystore

签名:

jarsigner -verbose -keystore my.keystore -signedjar TEST-signed.apk TEST.apk my.keystore

TEST.apk:待签名的apk

TEST-signed.apk:要生成的签名apk

3.google reader修改为https连接(来源)


修改smali/com/google/android/apps/reader/net/ReaderUri.smali

将第51行的 http://www.google.com/reader/ 修改为 https://www.google.com/reader/
4.其他

签名时,生成的签名文件使用默认的my.keystore,可以签名成功,并安装成功,但无法运行,直接报错;尝试改为其他名字(改成ANDROID),一切正常。

好奇怪。。

 


 

dex2jar

1. 首先找到Android 软件安装包中的class.dex
apk 文件改名为.zip ,然后解压缩其中的class.dex 文件,它就是java 文件编译再通过dx 工具打包成的, 所以现在我们就用上述提到的2 个工具来逆方向导出java 源文件;
2.
class.dex 拷贝到dex2jar.bat 所在目录。
运行dex2jar.bat class.dex ,生成classes.dex.dex2jar.jar


Ubuntu 系统下:
在终端下定位到dex2jar.sh所在目录,运行
sh dex2jar.sh classes.dex
则可生成classes.dex.dex2jar.jar


GUI-JD

 

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值