apk反编译修改

反编译修改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是不可读的)其文件目录如下:

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

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

a:修改app的名字

          

 

b修改其中的一个图片。

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

      

        

步骤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指令

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

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

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

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

 

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

二修改程序的逻辑

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

  这里的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

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

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

相同目录下得到源码

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

步骤5修个java后打补丁

步骤6替换源文件

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

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

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

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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: APK反编译工具是一种用于查看和修改Android应用程序的工具。使用这些工具,可以将安装在设备上的APK文件还原为其源代码,并对其进行修改APK反编译工具的使用有多种用途。首先,它可以帮助开发人员了解其他应用程序的实现细节。通过查看其他应用程序的源代码,开发人员可以学习到新的编程技巧和方法,以优化他们自己的应用程序。 此外,APK反编译工具还可以用于安全研究和漏洞分析。通过分析应用程序的源代码,安全研究人员可以发现潜在的漏洞和安全隐患,并提供有关如何修复这些问题的建议。 然而,需要注意的是,APK反编译工具的使用也可能存在一些法律和道德问题。未经授权地修改其他应用程序的源代码可能会侵犯知识产权,违反用户协议或法律法规。因此,在使用APK反编译工具时,必须遵守法律规定,并获得相关方的授权。 总而言之,APK反编译工具是一种有用的工具,可以帮助开发人员了解其他应用程序的实现细节,同时也有助于安全研究和漏洞分析。但是,使用这些工具需要遵守法律规定,并遵循道德原则。 ### 回答2: APK反编译工具是一种用于查看和修改APK文件的工具。APK文件是Android应用程序的安装包文件,其中包含了应用程序的源代码、资源文件和其他必要的文件。反编译工具允许开发者或者研究人员将APK文件解压和反编译为可读取的源代码和资源文件。 使用APK反编译工具可以帮助开发者了解和分析其他应用程序的实现方式和逻辑。通过查看反编译后的源代码,可以了解应用程序的代码结构、算法和逻辑处理。这对开发者来说是非常有价值的,可以借鉴和学习其他应用程序的实现方式,提高自己的开发水平。 此外,APK反编译工具也可以用于应用程序的逆向工程和修改。通过反编译APK文件,可以直接修改应用程序的代码或资源文件,从而实现一些自定义的功能或者修复错误。然而,需要注意的是,在修改他人的应用程序时,需要遵守相关的法律和道德规范,不能进行非法的操作,以免侵犯他人的权益。 总的来说,APK反编译工具是一个非常有用的工具,可以帮助开发者了解和学习其他应用程序的实现方式,并且在一定范围内可以对应用程序进行修改和优化。但是需要注意使用的合法性和道德规范,遵守相关法律的前提下使用该工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值