android那些事--初识反编译

一直比较喜欢反编译之类的操作,没有不尊重原创的意思.就是感觉好玩,或者向别人说的想看下别人怎么实现的.

对于android反编译重要的是这么两步,java代码的反编译,资源文件的反编译.这个由apk的解压结果可以看出来.

这里写图片描述

由这个结论也就引出了反编译所需要的工具, dex2jar和apktool

java代码的处理

得到jar文件

解压的内容有个classes.dex文件.

  1. dex文件是android平台上的可执行文件.这个里面就是处理后的java代码.
  2. 所以想要看到java代码只要对这个文件处理可以了
  3. 所需要的工具就是dex2jar
使用方法就是命令行输入 d2j-dex2jar dex文件
需要注意的是你的电脑系统window的执行 d2j-dex2jar.bat
mac 的执行 d2j-dexjar.sh
因此这里执行的命令格式为 sh d2j-dex2ajr.sh dex文件
这里写图片描述

这里写图片描述

到这里已经得到了jar文件,是不是非常简单.如果想看jar文件这里就需要另外一个工具了jd-gui可以根据不同的系统区下载相应的工具

查看jar文件内容

jd-gui 就是查看jar文件的java代码的可视化工具直接将jar文件
拖进工具就可以看到结果.
这里写图片描述

xml文件的处理

上面就已经看到了java代码,另外对于引用的图片资源,在我们解压后打开相应的文件夹就可以看到

这里写图片描述

同样的方式那么布局文件也是这样的,有一点不同的是布局文件打开是乱码的这个时候就需要另外一个工具apktool

这里写图片描述

下载apktool

下载apktool后按照说明,将apktool和apktool.jar(window平台的是apktoo.bat 和apktool.jara)放到同一个文件夹,然后就可以执行下面的相关步骤了.

这里写图片描述

为了方便处理,我将apk文件也放到该目录下

1.执行命令 apktool d release.apk 的到一个编译后的文件夹结果


这里写图片描述

2.打开release 文件夹 进入相关文件夹内 再次找到原来乱码的xml文件打开发现已经看到正常的布局文件了,其他的xml文件也一样


这里写图片描述

3.通过这种方式的到的结果中还有一个smali文件夹,这个里面放的也是处理后的java代码,smali文件还是有必要学习一下的.

重新打包

如果我们修改了布局之后,如何重新打包呢?同样的还是apktool来完成,因为不会修改java代码所以革命的学习路线还是遥远的.

通过如下命令
apktool b release -o new_file.apk
这里写图片描述

可以看到新的apk已经得到了,正常情况下现在的这个apk还不能安装,因为需要重新签名.
另外在开发者模式下,通过adb命令可以将目前的这个apk安装,但是不建议这么区做.android系统为了安全考虑,规定每个软件或者ROM都要签名,如果没有签名系统会认为那对系统有害,无法安装.

对新文件进行签名安装

通过如下格式命令进行签名
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore 签名文件名 -storepass 签名密码 待签名的APK文件名 签名的别名

这里写图片描述

线路如图
这里写图片描述

相关工具的下载

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,743评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,296评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,285评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,485评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,581评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,821评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,960评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,719评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,186评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,516评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,650评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,329评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,936评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,757评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,991评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,370评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,527评论 2 349

推荐阅读更多精彩内容

  • apk是安卓工程打包的最终形式,将apk安装到手机或者模拟器上就可以使用APP。反编译apk则是将该安卓工程的源码...
    隋胖胖LoveFat阅读 66,600评论 6 56
  • 声明:本文作者授权微信公众号Android程序员(AndroidTrending)在微信公众号平台原创首发。 最近...
    ec95b5891948阅读 14,627评论 14 165
  • 前言 处理反编译,首先先要了解apk文件的结构,然后是编译过程,最后是反编译。反编译Apk的目的就是Apk拆成我们...
    yzzCool阅读 5,700评论 0 8
  • 1. 为什么要反编译? 场景一 产品经理:xxx,反编译xxx的播放器,看看他们是怎么实现的? 场景二 测试:这个...
    伤口不该结疤阅读 12,119评论 7 51
  • 这样的文字也许心生感悟 这样的形式大概无人超越 也许曾经的努力化为了乌云 那是因为你的无心 在某日你成为无人超越的...
    半分微凉阅读 167评论 0 3