Apk改之理是一款简单好用的修改安卓Apk程序修改工具。软件还自带翻译功能,占用内存小,集成了ApkTool、Dex2jar、JD-GUI等Apk修改工具,集Apk反编译、Apk打包、Apk签名,支持语法高亮的代码编辑器。
配置jdk
首次使用软件会自动查找系统中的Jre安装目录,如果没有找到会提示你配置SDK,可以点击菜单[工具]-[配置SDK]对JDK进行配置。
JDK的安装路径必须配置(如果不配置,则无法进行修改操作),Android SDK则随意(有些功能需要用到它,比如ddms等,但这些功能都无关修改工作)。
打开要修改的apk文件:
单击菜单[项目]-[打开Apk]选择要修改的Apk文件(注:文件名称必须只有字母、数字、下划线、空格、点号等组成,不能包含中文或其它亚洲字符)。
新的修改还是继续旧的工作:
在打开Apk文件时Apk改之理会先对其进行基本的解析(包括它的名称、包、权限等),然后根据该apk应用的包名生成它的同名工作目录,如果这个工作目录已经存在,Apk改之理会询问是否要重新反编译Apk。这里要注意,已有的工作目录通常是你以前修改这个Apk应用时所生成的工作目录,如果你要继续这个修改操作,则单击[否]继续使用它,否则就重新反编译得到一个全新的源代码。
提示:如果你想继续旧工作但却误点了“是”按钮,也不用担心,删除的目录被扔进了系统垃圾箱,此时我们直接去系统回收站恢复。
恢复时注意,如果你之前成功对这个应用进行过dex2jar操作(由软件在反编译apk时自动进行,但可能会因一些原因而失败),回收站中会看到二个同名的目录,选中它们右键恢复即可。
修改Apk
现在你可以使用软件的搜索、替换等功能来对源代码进行修改,这种修改包括汉化、去广告、改名、替换资源、图片、xx等等。下图中各个图标按钮都有提示文字,可以将鼠标悬浮在按钮上显示文字提示。具体的各项说明会单独写个文章来详细解释,基本上也没什么难点。
这里先提示一些没有说明的小功能:(1)在文件树上,或搜索后得到的文件列表上,按住Shift键+单击鼠标右键会直接显示操作系统菜单。 (2)在“输入输出面板组”的搜索结果面板中,搜索结果列表以标签的形式各自分开,鼠标悬浮在标签上会显示对应搜索结果的搜索条件。(3)工作目录下的第一个build目录下的文件不会被搜索(因为这个是Apktool编译时用到的,与我们的修改无直接关系)。
编译成Apk
修改完成后单击菜单[编译]-[编译生成Apk]重新将源代码打包成apk文件,新生成的apk存放在原apk的同级目录下,其名称以“ApkIDE_”开头。
获取生成的Apk
单击菜单 [编译]-[获取生成的APK] 可以直接在资源浏览器中定位到apk所在的目录。
直接测试Apk
这个需要用到菜单[ADB]下的菜单命令,如果你已经将设备连接到电脑,或者直接在电脑上打开了安卓模拟器,可以单击菜单 [ADB]-[安装生成的APK] 直接向设备或模拟器安装修改生成的apk,然后再可以使用adb logcat 来观察其运行状况。
如果发现ADB相关命令不启作用,你可以先用 adb devices 命令查看设备是否连接成功(可以直接在输入输出面板组的命令窗口输入“adb devices”),也可以使用菜单 [工具]-[Dalvik Debug Monitor Service](ddms)来测试,当然这些都是后话了,也超出了本文的范畴。
1、删除:
从 Reference 文件夹下删除不再需要的参考文档或快捷方式。
2、添加:
将要添加为参考的文档、快捷方式放到Apk改之理安装目录下的 Reference 文件夹下。
3、应用:
重新启动程序,就可以在Apk改之理 的“参考”菜单下找到参考文件的快捷打开菜单。
1、常规化更新apktool,依然有apktool和shakapktool两种选择;
2、兼容更高版本的安卓SDK程序,从SDK16-26均可完美反编译并回编译,解决高版本卡死问题,测试环境为jdk目前最新版本jdk18-144;
3、重做dex2jar,将抗干扰能力进一步增强,并新增指令,出错时仍然可以无障碍反编译成java;
4、将大量组件如aapt等全部重做;
5、将插件如oat2dex等进行完全重做,并新增安卓xml和arsc文件分析工具;
6、新增多dex批量反编译功能插件,无论多少dex,均可反编译成java,并有jdgui和luten两种不同的选择;