安卓反编译

1,安卓apk反编译需要的东西:jdk 安卓sdk  apktool

下载地址:jdk当然是oracle官网http://www.oracle.com/technetwork/java/javase/downloads/index.html

安卓sdk谷歌安卓官网http://developer.android.com/sdk/index.html

apktool http://code.google.com/p/android-apktool/

下载完成后安装配置相应的环境变量 然后将apktool解压到硬盘某盘英文路径下

2,如果想查看apk里面的java文件的话可以直接将apk修改后缀名因为apk本身就是zip格式的可以直接打开如果采用安卓原生api编写的应用一般都可以直接拿到资源文件,但是如果使用ndk或者其他的资源文件局有可能直接被打包成二进制文件,解压后可以将class.dex采用dex2java工具直接反编译成java的jar文件 使用jd-gui-0.3.5.windows反编译成可以见的java文件但是java文件也是混淆过的只有动态调试的时候比对着调试。

3,windows cmd进入到apktool文件夹内将要反编译的apk放到对应的目录下 采用命令 apktool d - d  ***.apk out进行反编译out为输出文件夹 具体参数是否反编译资源文件 可以参考相应的参数一般报错有可能就是apktool的jar包有问题或者资源文件加密了可以使用apktool -r -d *.apk不反编译资源文件,out里面为反编译的输出文件夹  如果对smali语法比较熟悉的话可以查看对应的smali文件夹下文件   也可以加入自己的调试代码进去 然后再使用命令apktool b -d out 可以打包将反编译出来的文件在打包成apk 生成的apk在dist文件夹下。

这样的apk是不能直接安装的需要签名 使用安卓sdk自带的debugkey签名 具体命令可以参考网上的  我一般使用自动签名工具Auto-sign直接可以签名了 这样就可以了 可以采用netbeans对程序进行动态调试 这也是smali官网上推荐的工具

ps:以上内容虽经过实践但是纯手工敲出来可能会有问题欢迎指正

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值