当前位置: 移动技术网 > 移动技术>移动开发>Android > Android反编译,重新打包教程

Android反编译,重新打包教程

2018年02月14日  | 移动技术网移动技术  | 我要评论

公司之前买了一套系统,由于商务原因其中一个广告的app,卖家不提供源码。上面的广告、logo和语音播报信息都是卖家的(不更改相当于变是给卖家做宣传了)。虽然app的功能比较简单,但是因为里面涉及一些后台的接口。自己写一个稍微有点麻烦。而且要改的内容也不多,只是替换掉一些图片和文本。所以采用的方案是:反编译>重新打包(不推荐我这种行为)。这里姑且当成总结写下来。

配置apktool环境:

\

反编译apk包

1、将要反编译的apk,移动到apktool.bat 同一目录,cd到这个目录,执行命令:apktool.bat d -f test.apk

\

2、反编译后文件

\

3、Ⅰ. 替换图片、logo,在res文件中找到相应资源覆盖即可;

Ⅱ. 修改文本信息,如果是写在string.xml直接修改,如果是写在代码里面需进行如下步骤:

⑴ 下载dex2jar和jd-gui

⑵ 将要反编译的APK后缀名改为.rar或则 .zip,并解压,得到其中的额classes.dex文件,将获取到的classes.dex放到之前解压出 来的工具dex2jar 文件夹内,在命令行下定位到dex2jar.bat所在目录,输入dex2jar.batclasses.dex,效果如下:

\

⑶ 使用下载好的jd-gui工具,打开classes_dex2jar.jar,效果如下:

\

⑷ 搜索找到要修改的文本的.class文件和所在的方法

\

⑸ 并找到同名的.smali 文件,因为.smali文件中文本采用unicode编码。需使用sublime打开,搜索文本unicode编码替换成要修改文本的unicode即可:

\

注:unicode<>中文转换工具

重新签名打包

1.回编译apkapktool b filename -o test.apk

\

2、重新打包的apk,是没有签名的,找个工具进行签名:

\

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网