授人以鱼,不如授人以渔!本教程图文并茂,步骤非常详细,偏小白向,大佬请自觉屏蔽。使用工具:MT管理器免费版被修改的软件:Apktool M_v2.4.1如果想跟着教程一起实操,感受一下反编译带来的,修改成功之后油然而生的,可以下载本软件练练手,链接我放在文末了。温馨提示:初次看本人教程的小伙伴,建议配合上期教程一起操作效果更佳,本篇教程属于上期教程的拓展和进阶。往期图文逆向教程:①逆向教程之-反编译apk修改菜单默认设置(一)言归正传,接下来教程正式开始
首先打开Apktool M→进入设置,会看到“程序更新”,现在我们不想要这个菜单功能了,接下来就通过反编译进行修改,把它完全删除掉,让它永远在设置里面消失。请记住“程序更新”关键词。
1.使用MT管理器点击Apktool M_v2.4.1.apk文件→选择查看
2.选择resources.arsc文件→通过Arsc编辑器打开
3.点击搜索资源值→输入“程序更新”关键词→搜索类型选择字符串→点击确定进行搜索
4.会看到出现了1个搜索值→长按这个搜索值→会弹出菜单点击复制ID,这里复制的ID是“7F07011C”,然后按两次返回
5.点击右上角三个点→会弹出菜单功能→选择XML搜索→内容栏粘贴之前复制的ID“7F07011C”→搜索类型选择十六进制→点击确认进行搜索
6.会看到1个搜索结果→点击它会进入指定的路径找到该文件→点击文件(这个文件控制着整个设置的主菜单)
7.打开方式选择反编译→进入编辑界面→点击右上角三个点→会弹出菜单 →选择搜索→查找内容输入ID“7F07011C”进行搜索→会看第26行后面的那一串ID黄色高亮显示, 就是我们要找的结果,这就说明24~28行的内容,就是对“程序更新”这个菜单的定义
8.这时候我们把24~28行的内容,全部选中并删除,点击保存,然后返回,会出现提示,勾选自动签名,让它回编译即可
9.接着我们看到preference_updater.xml文件,这个文件是我们上一期教程,修改过的xml文件, 它其实是控制着整个“程序更新”的子菜单,现在我们把程序更新的菜单都删除了,这个子菜单的文件也可以删除了,然后一路返回。
10.选择classes.dex文件→通过Dex编辑器++打开
11.点击搜索→发起新搜索→查找内容输入ID“7F07011C”→路径默认→搜索类型选择“代码”→勾选搜索子目录→点击确定进行搜索
12.会看到出现了1个搜索值,这个搜索结果就是我们要找的ID→点击它进入文件进行修改,然后看到它是在第451行,这里定义的就是“程序更新”调用的代码。
13.这时候我们把451行的内容,全部选中并删除,点击保存,然后返回,会出现提示,选择保存并退出,让它回编译即可
反编译完成之后,重新安装修改过的包,然后再打开软件,这时候在设置里面,就找不到“程序更新”的菜单功能了。它已经被彻底删除掉了。
写到这里教程就结束了,其实这篇教程的目的,只是为了记录一下自己反编译的一个过程。分享给大家,提供的只是一个反编译的思路。从我的角度来说,过程相对过于简单,但是我相信对于刚接触反编译的小白而言,能起到一个很好的启蒙作用。声明一下:本篇教程只是以“程序更新”为例,实现菜单功能的精简,并不是说只能删除这个菜单功能,而是提供的一个思路。可以按照这个反编译的思路,去精简掉更多其它的菜单功能。当然,反编译不仅仅于此,聪明的你可以根据本教程,举一反三,对apk进行更深层次的修改!接下来上干货了,为了满足部分伙伴的需求,方便他们按照教程实操时,省得还要到处去找使用工具。在这里为大家一并提供了教程中使用的同款,MT管理器和修改的软件素材,请外链自取。MT管理器:https://www.lanzoui.com/i80NBitkr6f 密码:99gnApktool M_2.4.1:https://www.lanzoui.com/iuvxtir6wdg 密码:epdc如果本教程能帮到您,记得三连哦!顺便免费评分走一波,感谢支持!
您的支持,将是对我最大的鼓励!
后续会继续分享更多逆向反编译教程,咱们下期再见