apk反编译修改

apk反编译修改反编译修改apk此文档仅供参考,谢绝下载传播!所用软件                                                                  Jdkdex2jar  (例子版本dex2jar-0.0.9.15) 用于修改java文件ApkTool反编译apkXJadelise(主要用于生成单个的jar文件)为

反编译修改apk

所用软件                                                          

Jdk

dex2jar   (例子版本dex2jar-0.0.9.15) 用于修改java文件

ApkTool 反编译apk

XJad

eclise (主要用于生成单个的jar文件)

为了叙述方便以激活成功教程test.apk为例。

一修改展现界面

步骤1test.apk命名为123.apk放在ApkTool文件目录下运行APKTool.cmd文件,按提示选择1按回车键。ApkTool会把123.apk反编译出来放在APK目录下,这里的xml是可读的(直接解压apk文件的xml是不可读的)其文件目录如下:

apk反编译修改

步骤2找到要修改的界面布局的xml或图片进行修改。(做过android开发的人应该很熟悉)

        这里举例我们修改两个位置:

a:修改app的名字

           apk反编译修改

 

b修改其中的一个图片。

   找到要修改文件的位置我替换的是:APK\assets\data\res\ui下的

      

        apk反编译修改

步骤3修改完后进行回编。

运行APKTool.cmd文件,这是我们选择2(虽然3是回编并签名,这里我们不选择,我试过没有正确签名,原因没有细究)

之后在build文件下回生成一个:已编译(未签名).apk 文件(如果你没有看到在APKTool.cmd下按个回车)

步骤4签名修改后的apk(签名是jdk的功能)

  a :运行cmd 执行cd指令指向我们要签名的apk所在文件目录。

 b :先用keytool生成keystore

执行keytool-genkey -keystore mykeystore -alias mykeystore -validity 999指令

apk反编译修改

执行完后会在当前目录下生成一个mykeystore文件

c : 再用jarsigner 签名
jarsigner -verbose -keystore mykeystore –signedjar 已编译(已签名).apk  已编译(未签名).apk mykeystore

  执行后生成:已编译(已签名).apk这个是可用的。

步骤5界面的修改已经完成。安装测试

 apk反编译修改

可以看到我们修改的两个位置都已经变化了。

二修改程序的逻辑

步骤1修改 test.apktest.zip 用解压工具解压得到的文件目录结构如下:

apk反编译修改

  这里的xml是打不开的。

步骤2修改java文件(应用的逻辑)

运行cmd cd指令指向dex2jar文件夹目录

调用指令:d2j-dex2jar.bat  C:\Users\Administrator\Desktop\over\temp\classes.dex

把步骤1中的classes.dex文件转换为jar文件,转换后的jar文件放在dex2jar目录下(因为没有指定)名字为:classes-dex2jar.jar

apk反编译修改

可以用java的反编译工具修改classes-dex2jar.jar文件

步骤3打开XJad.exe 选择反编译jar文件

apk反编译修改

相同目录下得到源码

步骤4eclipse中新建一个android项目把源码拷贝过去。

apk反编译修改

步骤5修个java后打补丁

apk反编译修改

步骤6替换源文件

apk反编译修改

步骤7 调用d2j-jar2dex.bat指令把修改后的jar回编为dex文件

步骤8替换apk中的classes.dex文件,并删除META-INF文件夹

步骤9重新签名,即可以安装使用了

声明:此文档仅供学习,参与违法行为与笔者无关。 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/34356.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注