apktool使用方法
【转】一步一步带你反编译apk,并教你修改smali和重新打包

【转】⼀步⼀步带你反编译apk,并教你修改smali和重新打包⼀、⼯具介绍:1.apktool:aapt.exe,apktool.bat,apktool.jar;三个在同⼀⽬录结合使⽤,⽤来反编译apk,apk重新打包;2.dex2jar:该⼯具作⽤是将classes.dex⽂件,反编译出源码(如果apk未加固),反编译出⽂件,使⽤jd-gui⼯具进⾏查看;3.Auto-Sign:⾃动签名⼯具,将重新打包的apk进⾏签名,如果不签名,⽆法安装使⽤。
⼯具下载地址:(需要3CSDN积分,原本我设置3积分的,不知道为什么涨到16积分了......)使⽤场景:项⽬源码丢失,只有线上apk,并且没有加固,要求修改apk接⼝地址,并且重新打包,再发布。
⼆、⼯具使⽤:解压后⼯具包如图:1.思路:使⽤⼯具dex2jar反编译,并⽤jd-gui⼯具进⾏查看项⽬结构,查看源码,并且找到接⼝地址类,修改接⼝地址;步骤⼀:下载好⼯具,将需要反编译的APK后缀名改为.rar或则 .zip,并解压,如图:得到其中的classes.dex⽂件(它就是java⽂件编译再通过dx⼯具打包⽽成的),将获取到的classes.dex复制到解压出来的⼯具dex2jar-0.0.9.15 ⽂件夹内,在命令⾏下,进⼊到dex2jar.bat所在⽬录,输⼊命令:dex2jar.bat classes.dex效果如下:步骤⼆:运⾏结束后,在该⽬录下会⽣成⼀个classes_dex2jar.jar的⽂件,如图:然后打开⼯具jd-gui⽂件夹⾥的jd-gui.exe,⽤该⼯具打开⽣成的classes_dex2jar.jar⽂件,便可以看到源码了,效果如下:2.思路:apktool,反编译修改smali⽂件,进⾏重新打包,通过⽤jd-gui⼯具找到接⼝地址类后,与相应的smali⽂件进⾏对⽐,修改接⼝地址;下载上述⼯具中的apktool,解压得到3个⽂件:aapt.exe,apktool.bat,apktool.jar ,将需要反编译的APK⽂件放到该⽬录下,如图:打开命令⾏界⾯(运⾏-CMD),定位到apktool⽂件夹,输⼊以下命令:apktool.bat d -f test.apk -o testapktool -f [待反编译的apk] -o [反编译之后存放⽂件夹]如图:反编译之后会得到test ⽂件夹,打开test⽂件夹,⾥边就是反编译出来的各种资源⽂件使⽤jd-gui查看源码找到地址类,然后在smali⽂件⾥找到地址的smali⽂件,更改smali⽂件内接⼝地址。
用安卓apk反编译利器Apktool

用安卓apk反编译利器Apktool,教你去掉软件里的广告(只用于学习交流。
)给大家介绍下windows环境下使用Apktool的方法。
安装:1.先装JAVA环境,JDK/JRE都行,官网下载装过的就跳过吧!2.下载apktool.jar及相关文件,这里下apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip3.解压apktool.jar到C:Windows 解压apktool-install-windows.zip到任意文件夹(例如:E:Android学习工具反编译ApkTool)4.Win+R 运行CMD,用cd命令转到apktool-install-windows所在文件夹,输入apktool看看。
会列出一些帮助的话就成功了。
Apktool命令:apktool d XXX.apk PATH //反编译XXX.apk到文件夹PATHapktool b PATH //从文件夹PATH重建apk到PATHdistout.apk//============================================================ ========================//案例:“超级指南针”的顶部有一条广告区,我们的目的就是把它去掉。
运行cmd进入Apktool所在目录(我的是:“E:Android学习工具反编译ApkTool”)后,使用Apktool命令操作,如下现在在“E:Android学习.工具反编译新建文件夹指南针”目录下就得到了反编译后的文件,用记事本打开其中的AndroidManifest.xml,找到与下面类似的代码段:也就是找到有一连串字符序列的地方,如上CD0E46BC8B9DF1394F1E5F6030067A71和DEE43EDE-D2DF-4B4D-A754-894C9E7F960E两处,这两处分别是架势广告与admob提供的id地址。
apktool使用教程

apktool使用教程1.APKTool使用环境配置APKTool是GOOGLE提供的APK编译工具,需要JAVA运行环境,最新版本为JDK1.8。
安装后设置环境变量以方便其他程序能够调用JAVA:以WIN7为例,在桌面上右键点击计算机——>属性——>高级系统设置——>环境变量——>在下边的系统变量里新建一个变量,变量名为JAVA_HOME,值为JAVA的安装路径,比如我的是C:\Program Files (x86)\Java\jdk1.7.0_67 然后添加CLASSPATH .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\ tools.jar ;PATH %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin2.APKTool的使用apktool文件夹放在D盘根目录,应用改名为f.apk放在此文件夹下win+R然后输入cmd输入D:然后回车。
(D是说apktool所在的盘)输入cd apktool 然后回车(这个命令式说打开apktool这个文件夹)输入apktool if f.apk 然后回车(这个命令式说在CMD模式安装f.apk)输入apktool d f.apk 然后回车(这个命令是说反编译f.apk d 就是反编译的命令)然后apktool文件夹就会出现一个f的文件夹(接下去还要用到cmd,先不要关掉。
)f文件夹里面就是反编译出来的文件了,这样就可以用修改代码了(将xml修改为txt即可)。
修改文件名字: value/string/app_name修改完成后,就要回编译,在命令提示符中继续输入apktool b f (这个命令就是说回编译f文件夹,b是回编译,f是指F 文件夹)成功后,f文件夹中会出现一个dist的文件夹,里面有一个f.apk (有就是成功了,没有就是失败了)用APKSign给编译出来的文件签名即可安装。
AndroidAPK反编译apktool使用教程

AndroidAPK反编译apktool使⽤教程2017年棋牌游戏突然就⽕了,正所谓春江⽔暖鸭先知本猿处在软件⾏业中就能清晰的感受到市场的变化,最近⽼家那边也是玩的风⽣⽔起,于是最近闲暇时光想到反编译下这些棋牌软件,看看代码实现的思路(注:反编译不是让各位开发者去对⼀个应⽤破解搞重装什么的,主要⽬的是为了促进开发者学习,借鉴好的代码,提升⾃我开发⽔平。
)⼯具介绍:apktool作⽤:主要查看res⽂件下xml⽂件、AndroidManifest.xml和图⽚。
(注意:如果直接解压.apk⽂件,xml⽂件打开全部是乱码)dex2jar作⽤:将apk反编译成Java源码(classes.dex转化成jar⽂件)jd-gui作⽤:⽤来查看APK中classes.dex转化成出的jar⽂件,即源码⽂件2017年12⽉1⽇新版本apktool⽤法:1.下载两个⽂件apktool.bat和apktool.jar(这个如果你下载的⽂件有版本号,⽐如apktool_2.3.0.jar,就要改名字为apktool.jar),这⾥我已经打包好了传到了我的CSDN(),直接下载就OK了;2.然后把上⾯两个⽂件解压放到C:\Windows下⾯,放到这⾥是可以全局进⾏使⽤(我是windows系统,其他系统按照⾃⼰的来)如下图:3.使⽤⽅法把要解压的apk⽂件放在⾃⼰任意⼀个盘的⽬录下,在apk的⽬录下,按住shift+⿏标右键打开cmd⿊窗⼝如下图:接下来输⼊官⽅给的命令//当输⼊完这两个命令后apktool d test.apkapktool b test//出现如下图⼀样的说明就反编译成功了,在他的同级⽬录下就多出了⼀个⽂件夹,⾥⾯就是反编译出来的源码,具体有啥我就不细说了哈,⾃⼰慢慢研究吧!4.Apk反编译得到Java源代码下载上述⼯具中的dex2jar() 和 jd-gui() ,解压将要反编译的APK后缀名改为.rar或则 .zip,并解压,得到其中的额classes.dex⽂件(它就是java⽂件编译再通过dx⼯具打包⽽成的),将获取到的classes.dex放到之前解压出来的⼯具dex2jar-2.0⽂件夹内,在命令⾏下定位到d2j-dex2jar.bat所在⽬录(现在这个⽬录增加了许多命令,⼀定要看清楚哦),输⼊d2j-dex2jar.bat classes.dex效果如下:说明就成功了会看到同级⽬录下会⽣成⼀个classes_dex2jar.jar的⽂件,然后打开⼯具jd-gui⽂件夹⾥的jd-gui.exe,之后⽤该⼯具打开之前⽣成的classes_dex2jar.jar⽂件,便可以看到源码了,效果如下:通过反编译,你可以获知该应⽤⽤到了什么第3⽅的库⽂件,它的代码是如何编写的等等。
APK破解

简单的总结几个关键步骤:一、工具准备:apktool , dex2jar , jd-gui二、使用dex2jar + jd-gui 得到apk的java源码1.用解压工具从apk包中取出classes.dex 文件用命令(dex2jar.bat classes.dex )得到一个jar文件2.用jd-gui反编译工具将得到.jar文件反编译成.java文件三、使用apktool得到apk的xml文件1.用命令(apktool d xxx.apk xxx_xml )反编译xxx.apk包2.从xxx_xml 文件夹得到xml文件四、第二步得到的程序源代码和第三步得到的xml文件组合下,即可得到完整的apk源码。
五、汉化/去广告,加values-zh-rCN, values-zh-rTW, values-de, values-fr1.在步骤三的文件夹里建文件夹: values-zh-rCN,values-zh-rTW2.1复制values\strings.xml 到 values-zh-rCN 并翻译.2.2 去广告见:/wangjianh ... /07/05/2098563.html3.重建APK,用命令(apktool b xxx ) ,输出到ABC/dist/out.apk或命令( apktool b xxx out.apk )六、签名1.把未签名的apk 复制到sign.bat 目录下。
2.打开cmd, 进入到sign.bat 目录下, 输入命令:sign out.apk out_signed.apkout.apk 即为没签名的apk, out_signed.apk 为签名的sign.bat 要改下:@echo OFFjava -jar signapk.jar testkey.x509.pem testkey.pk8 %1 %2--------------------------------- 以下是整理/摘选的---------------------------------在官网下载apktools 工具/p/android-apktool/apktool1.4.3.tar.bz2 和apktool-install-windows-r04-brut1.tar.bz2解压分别得到apktool.jar 和 apktool.bat , aapt.exe .把这3个文件复制到系统文件夹下面, 一般是C:\Windowsjd-jui: http://java.decompiler.free.fr/?q=jdguidex2jar : /p/dex2jar/downloads/list=================================================部分内容摘自: /afirefly/archive/2011/10/12/2208461.html一、工具准备:apktool , dex2jar , jd-gui工具包也可以在这里下载。
apktool反编译详细使用教程

apktool反编译详细使⽤教程安装反编⼯具地址apktool⼯具包下载地址apktool.rar1.⾸先安装需要JAVA环境,先下载JDK/JRE,已经有JAVA环境的可跳过此步java JDK:java JRE:还得设置JAVA环境变量CLASSPATH .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jarJAVA_HOME C:\Program Files\Java\jdk1.6.0_10 解释JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径Path %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin环境变量配置好了,我们就可以反编译了,(如果有不明⽩的有两种⽅法,1,请教我,2在论坛搜搜怎么设置JAVA环境变量)反编译的使⽤反编译⼯具,⽹上有很多,有APKTOOL,Doapk ,apkmanage..........,你们可以随便下载⼀个,地址我就不提供了,你们⾃⼰搜索⼀下,上百度,上论坛上搜都有的,但apkTOOL⼯具必须包含⼀下⼏个下载完成反编译⼯具后,验证是否安装成功,点击开始菜单,运⾏,输⼊CMD回车按⼀下回车出现,在输⼊APKTOOl,输⼊apktool,要看腻把apkTOOL安装在哪个盘,举例我的,我是安装在D盘APkTOOL⽂件下,先在cmd下输⼊D:回车,在输⼊CD apktool,转⼊apktool⽂件夹下,输⼊apktool 出现如下反应,,说明你安装成功了,可以进⾏APK反编译了,下⾯我已反编译SystemUI.apk为例。
⾸先的知道⼀下⼏条指令的意思1,apktool d SysteUI.apk 12意思是将SystemUI.apk解包到12⽂件下,12⽂件夹不⽤创建,会⾃动⽣成2,apktool b 12打包12⽂件夹(将会⾃动把12⽂件夹⾥的修改过得APK解包后修改完后⾃动打包,⽣成resources.arsc,⽂件,这就是我们反编译的主要⽬的,当然还有其他⽬的,后⾯将会说明怎么apktool需要反编译的⽬的,⽣成的⽂件。
APK反编译相关

APK反编译相关下面就来说说如何将一个apk反编译出来。
一、准备必要工具工欲善其事,必先利其器,首先我们要下载好反编译apk时需要的相关工具1.1、使用工具1.apktool (资源文件获取)2.dex2jar(源码文件获取)3.jd-gui (源码查看)1.2、工具介绍apktool作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看dex2jar作用:将apk反编译成java源码(classes.dex转化成jar文件)jd-gui作用:查看APK中classes.dex转化成出的jar文件,即源码文件1.3工具下载apktool下载地址:https:///iBotPeaches/apktool/downloads 下载好之后得到一个如下图所示的jar文件dex2jar下载地址:/projects/dex2jar/files/下载完成之后,得到一个如下图所示的压缩包jd-gui下载地址:http://jd.benow.ca/下载完成之后,得到一个如下图所示的压缩包:到此,需要使用到的3个相关工具都下载好了,在这里说明一下jd-gui的下载,我从官方网站上点击下载时会经常出现如下图所示的问题但是多试几次又可以下载了,所以如果有遇到这个问题的朋友们不妨多试几次,或者从别的地方下载jd-gui,jd-gui算是做Java开发的一个必备工具了,用它来将class反编译成java源代码是非常方便的,网上搜索一下一般都可以下载到,只不过版本不一定是最新的。
二、Apk反编译流程为了方便进行反编译,我们将上述下载好的3个工具统一放到一个文件夹中,例如:然后将【dex2jar-2.0.zip】和【jd-gui-windows-1.3.0.zip】分别解压到当前文件夹,如下图所示:2.1、使用apktool反编译apk得到图片、XML配置、语言资源等文件进入CMD命令行,如下:切换到上述的3个工具的所在目录,如:E:\AndroidDevelopTool\Android反编译工具包接下来我们要做的就是运行apktool_2.0.1.jar这个jar文件来将apk文件进行反编译,在java 中,运行可执行jar包的命令是:java -jar jar包名.jar使用如下的命令运行apktool_2.0.1.jar反编译MMTS-release-1.0.2.apkjava -jar apktool_2.0.1.jar d -f E:\AndroidDevelopTool\Android反编译工具包\测试apk\MMTS-release-1.0.2.apk -o MMTS这个命令是启动apktool_2.0.1.jar将位于【E:\AndroidDevelopTool\Android反编译工具包\测试apk\】目录下的"MMTS-release-1.0.2.apk"这个apk反编译,然后将反编译生成的文件存放到当前目录(apktool_2.0.1.jar所在的目录,也就是"E:\AndroidDevelopTool\Android反编译工具包"目录)下的一个【MMTS】文件夹中。
反编译操作方法

1、需要下载apktool1.4.1.tar.bz2,apktool-install-windows-r04-brut1.tar.bz2,dex-translator-0.0.9.3.zip,jd-gui-0.3.3.windows.zip。
2、解压apktool1.4.1.tar.bz2,apktool-install-windows-r04-brut1.tar.bz2,将apktool.jar放进apktool-install-windows-r04-brut1.tar.bz2的解压文件中。
3、打开doc窗口,打开apktool-install-windows-r04-brut1.tar.bz2文件,输入apktool测试是否安装成功。
安装成功后。
A2. AXMLPrinter2.jar将它放到android-sdk-windows-1.5_r3/tools文件夹中运行cmd,进入tools目录,运行java -jar AXMLPrinter2.jar main.xml > main.txt;于是我们就得到了反编译后的XML文件;经历了这么多,我们得到的只是部分布局文件和资源文件,但java文件还是"犹抱琵琶半遮面"。
下面,让我们掀起她的红盖头来:B. dex2jar下载:/p/dex2jar/downloads/list方法:1.首先找到Android软件安装包中的classes.dex (解压得到);它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件2.把classes.dex拷贝到dex2jar.bat所在目录;在命令行模式下定位到dex2jar.bat所在目录,运行dex2jar.bat classes.dex,生成classes.dex.dex2jar.jar,成功了一半!4、解压jd-gui-0.3.3.windows,运行里面的exe文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意,如果你编译后找不到文件。
请看这段
最近使用 Dodo APKTools 修改 Zinio.apk,反编译提示成功,修改xml文档后,重新编译也提示成功,但是找不到apk文件,原因不明。
联系 apktool GUI 作者反映了问题,使用新版仍然有这个问题。
索性到 apktool 官网下载了最新的版本,用命令行反编译,还是出现同样的问题,提示也类似。
既然提示使用了一个 resource table 文件,我删除掉让命令行重新生成,再次使用命令行反编译竟然成功。
反过来,重新使用 Dodo APKTools 修改apk也成功了。
说明 apktool 使用过程中释放了一些文件,这些文件不会随着 apktool 的升级而自动重新生成,必须先清除掉旧版本的文件,才能自动产生新版本文件。
因此,建议使用 apktool 包括以其为内核的软件,在升级 apktool 时,将系统用户目录\apktool\framework(以 Win7 举例:C:\Users\用户名
\apktool\framework)中的文件清除,保证使用新的文件。
注意这个是安装在电脑上的哦
现在越来越多的人们开始使用谷歌andriod系统手机也就是我们所说的安卓系统。
因为安卓系统是开源的所以给我们自己个性化手机带来了很大的便利。
不需要进行复杂的破解等操作甚至只需要几个简单的小软件我们就可以制作一个属于自己的ROM。
我们平常下载的android软件基本上都是中文版的有些英文软件也能找到汉化版。
但是我们也可能遇到找不到汉化版软件的困境对于一些朋友来说英文版软件并不影响使用可是英文界面却不符合大多数人的习惯看英文的时候还要想着汉语意思无形中影响了操作也影响了心情。
英文软件找不到相应的汉化版或者找到了却带有高手们的烙印。
朋友您是不是也想过做个属于自己的汉化版的android软件呢会有这种可能吗答案是——Yeah!
安卓系统的安装软件是APK格式的有时候朋友们用迅雷下载APK格式的软件时可能会得到一个ZIP格式的文件并需要我们重命名文件。
细心地朋友会发现APK格式的软件也是可以被解压的。
解压后得到如图1所示的文件。
它的结构与jar格式的JAVA手机软件大致是相同的。
但是如果打开其中某些文件后会显示为乱码而软件语言包则是resources.arsc文件无法直接打开。
因此需要使用专门的编译反编译工具。
感谢安卓网为我们提供的Dodo APKTools工具。
接下来笔者以Klaxon这个闹钟软件为例为大家介绍如何汉化这款软件。
1.打开apktool在“APK反编译”框中点击“选择APK文件”并选择好“文件保存目录”然后按“反编译”软件会自动反编译软件图2。
完成会会弹出一确认对话框图3。
2.在保存位置中找到一个名为“klaxon~1.apk.decode”的文件夹并打开这时软件的所有文件都呈现在我们面前而我们要更改的文件则在res文件夹中。
3.找到res\values\中的strings文件。
点右键选择编辑会打开记事本(或者用Ultraedit等文本编辑器打开)。
4.我们只用将两个“> <”之间的英语改成汉语就像<string name=”clock_name”>Bed Clock</string>我们把中间“clock name”改成汉语。
等将此页面翻译完毕后选择保存。
注:app_name一般不要改更改之后可能会出现软件无法使用的问题。
5.接下来参照上面方法打开“values“文件夹中的“arrays”文件并将“<item>****</item>”之间的英语改成汉语。
6.打开res\xml文件夹中的“alarm_prefs”将“android:title=”后面引号中的英语改成汉语。
7.打开layout文件夹依次打开这些xml文件将其中“android:text=”后的英语改成汉语。
8.所有文件翻译完毕后打开apktool在右侧“编译APK”处点击“选择APK文件目录”找到刚才生成的“klaxon~1.apk.decode”并点击“确定”。
9.选择“生成APK文件目录”后点击“编译APK”。
随后会生成一个新文件“KLAXON~1.DEC”。
10.点击apktool软件下方的“APK签名”按钮。
选择好APK文件和签名文件保存目录。
之后点击“制作签名”。
签名完毕后会弹出签名制作成功的对话框并生成名为“klaxon~2_signed”的文件。
11.大功告成将软件传到手机安装后就会发现软件变成了汉语。
12.尽情的享受成功的喜悦吧!。