免费提问

怎样修改android系统apk软件里面的代码和图片?

144
提问者 丿Mua丨月咏
2019-06-05 07:10 悬赏 0财富值 阅读 1166回答 1

最近遇到几个安卓系统下的软件需要修改,主要是想修改软件的图标,去除Android软件里面的广告,我想问问大家,怎样修改Android系统下apk软件里面的代码和图片?

当然了,我知道这个需要反编译,步骤我也知道,但是就是没用实践过,也没有思路。

1、怎么反编译Android软件?

2、怎样把修改好的Android代码及资源编译回去?

3、如果回编译成功,怎么样才能让软件在安卓系统上正常安装运行?

汇编语言
登录 后发表回答
asj
1楼 · 2019-06-05 08:25.采纳回答

你好,你的问题我算是看明白了,从你的问题可以设计三个方面,apk反编译、apk回编译以及apk签名,看来,我得从头说起了。

首先,我在这里提供下反编译Android所需的软件,当然是全套,刚刚收集整理好的,软件清单如下:

apktool2.45、Auto-Sign、dex2jar-0.0.9.15、jd-gui-0.3.5.windows,反编译套件由这四个小软件组成,当然了,JAVA环境得你自己配置,网上教程很多,下面是安卓反编译套件的下载地址:

Android反编译软件下载链接: https://pan.baidu.com/s/1vRQ1VSF1arO49_XM4X9doA   Android反编译软件提取码: 5geu


下面我们直接进入正题,今天我就从头简单的介绍一下反编译、回编译、签名这几个完整的过程。

1、首先我们安装好java环境,下载安卓反编译软件,并解压,注意全部使用英文路径,免得到时候出现一些不必要的麻烦。


2、找到某款apk软件,下载下来,把apk文件放到apktool目录下,如下图所示:

apktool


3、运行DOS窗口,进入apktook目录下,然后运行如下命令:

apktool.bat d wb.apk
//注意:wb.apk是我要反编译的软件,你写你自己的软件名就可以了
apktool -f [待反编译的apk] -o [反编译之后存放文件夹] 

反编译apk

这时候,我们已经得到了xml以及图片资源。


4、我们在把apk的后缀改成zip或者rar解压缩,在文件夹下面找到classes.dex,把这个文件复制到dex2jar-0.0.9.15文件夹下面,执行如下命令。

d2j-dex2jar.bat classes.dex

//执行完这个命令,当前文件夹会生成一个名为classes-dex2jar.jar的文件

反编译apk


5、使用jd-gui查看jar包中的Java代码,找到我们想修改的地方,完成修改,找到你想修改的图片,完成修改,最后把修改好的资源放回apktool下的wb文件夹。


6、资源修改完成之后,我们就需要回编译了,回编译执行如下命令即可。

apktool.bat b wb

//apktool.bat b 需要打包成apk的文件夹

Android回编译


7、回编译成功之后,会在wb目录下的dist文件夹下面有一个wb.apk文件,出现这个文件,说明成功了。到这里还没完,因为没签名的apk肯定是没法安装的,咱们在进行最后一步,完成修改好的apk文件的签名,执行如下命令:

java -jar signapk.jar testkey.x509.pem testkey.pk8 wb.apk wb_signed.apk

当然了,wb_signed.apk就是签名后的apk,到这里,安卓apk文件的反编译、Android修改Android回编译、Android签名讲解就结束了,不过,很多安卓系统的apk代码都是加密过的,如果你有兴趣的话,可以去搜索,也可以找我一起探讨。



网站简介 | 竞价技巧 | 网站建设 | 原创作品 | 联系我们 |

鄂ICP备17013851号-4|经营许可证:鄂B2-20160818 |互联网药品信息服务资格证: 粤20130124|鄂公网安备:42010601000001|版权登记号:2016SR017186