导航:首页 > 源码编译 > 解包apk反编译

解包apk反编译

发布时间:2022-02-09 00:11:58

A. 如何利用apktool反编译apk

首先的知道一下几条指令的意思
1,apktool d SysteUI.apk 12意思是将SystemUI.apk解包到12文件下,12文件夹不用创建,会自动生成
2,apktool b 12打包12文件夹(将会自动把12文件夹里的修改过得APK解包后修改完后自动打包,生成resources.arsc,文件,这就是我们反编译的主要目的,当然还有其他目的,后面将会说明怎么apktool需要反编译的目的,生成的文件。
3,apktool if framework-res.apk这条语句很重要很多时候我们容易忽略这条语句导致打包不成功,这句语句的意思是,有些时候我们解包apk文件需要用framework-res.apk(framework是指系统框架。有时也会用到apktool if twframework-res.apk,同样我们只需在前面输入就行。当然得把framework-res.apk 这个文件目录下。
4,apktool if twframework-res.apk ,当然 twframework-res.apk 也应该放在文件目录下,不如反编译Mms.apk.....会用到
知道这四条语句我们就可以进行反编译了。
已反编译SystemUI.apk为例,,下面开始讲解
现在cmd下输入apktool if framework-res.apk(并把framework-res.apk 放在文件目录下)apktool if twframework-res.apk( twframework-res.apk 也应该放在文件目录下 )其实这两部就是搭建安卓系统环境 ,输入完后在解包,apktool d SystemUI.apk 12就行了

B. [转载]新手必学:如何解包apk得到里面的源代码!

APK是androidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是DalvikVM executes的简称,即Android Dalvik执行程序,并非java ME的字节码而是Dalvik字节码。

APK解压的目录:
1. META-INF\ (注:Jar文件中常可以看到);
2. res\ (注:存放资源文件的目录) ;
3. AndroidManifest.xml (注:程序全局配置文件) ;
4. classes.dex (注:Dalvik字节码);
5. resources.arsc (注:编译后的二进制资源文件)。

apk反编译就是通过使用apk编译工具将apk文件中的源文件和资源反编译出来,得到的源文件和资源文件可以进行处理后再进行编译,以达到个性化定制,汉化apk等目的。
apk反编译工具
1、最典型的apk编译工具的核心是apktool,但是因为操作需要调用cmd命令,所以出现了很多具有可视化界面的各种编译工具,像easyapk,apkdb,doapk
2、dex2jar.jar,将apk中的classes.dex转化成Jar文件,再通过jd-gui工具反编译jar文件。
apk编译方法,使用apkdb编译apk文件只需要在安装apkdb后直接右击反编译就可以将apk文件反编译出来

apk编译方法
使用apkdb编译apk文件只需要在安装apkdb后直接右击反编译就可以将apk文件反编译出来
1、使用原生apktool工具,需要将apktool的两个文件释放到window目录下,在cmd中使用 apktool d apk文件名 命令来编译apk文件,此时命令行的执行目录与apk文件所在目录必须一致。
2、首先将apk文件,将后缀改为zip,解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的;将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex。

C. 在吗请问怎么apk反编译啊在下不懂,求指教。。

APK文件是用专业软件eclipse编译生成的文件包。在网上可以找到许多软件来对APK的内容进行反编译,例如:可以通过AXMLPrinter2工具和命令:java -jar AXMLPrinter2.jar AndroidManifest.xml 解开在apk中的AndroidManifest.xml。最近,业界有一个功能强大的解包打包工具包apktool,可以在Windows下用来方便快速地对APK文件进行解包和打包,给修改和编辑工作带来许多方便。下面来介绍它的使用。

1) APKtool软件包
APKtool软件包有2个程序组成:apktool.jar 和 aapt.exe
另外提供一个批处理文件:apktool.bat,其内容为:
java -jar "%~dp0\apktool.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9
运行apktools.jar需要java环境(1.6.0版本以上)。
apktool.jar用于解包,apktool.jar和aapt.exe联合用于打包。

2) APK文件的解包
下面以解开Contacts.apk为例。首先把Contacts.apk Copy到当前工作目录下(例:Test)。在DOS下打入命令
apktool d Contacts.apk ABC
这里“d”表示要解码。Contacts.apk是要解包的APK文件。ABC是子目录名。所有解包的文件都会放在这个子目录内。

3) APK文件的打包
在DOS下打入命令
apktool b ABC New-Contacts.apk
这里“b”表示要打包
ABC是子目录名,是解包时产生的子目录,用来存放所有解包后的和修改后的文件。
New-Contacts.apk是打包后产生的新的APK文件。

4) Framework框架文件
在解开APK文件时,apktool需要框架文件(framework-res.apk)来解码和打包。Apktool已经包含了标准的框架,所以在大多数APK文件的解包时,不需要另外提供框架文件。但是,某些制造商使用了他们自己的框架文件,为了解包,就不得不从手机中把框架文件(framework-res.apk)提取出来,然后安装到计算机。安装命令是:
apktool if framework-res.apk
安装后就会得到:~\apktool\framework\1.apk
5) 解包、解包和签名批处理

在实际使用时,可能对多个APK文件进行处理。方便的做法是写成批处理文件。打包和签名可以一次完成。
解包批处理命令:
for %%i in (*.apk) do java -jar apktool.jar d %%i _%%i && move _%%i Modifying_Files && %%i Backuped_Raw_Files && @echo File [%%i] unpacking process is completed!
打包和签名批处理命令:
for /d %%i in (*) do cd.. && java -jar apktool.jar b Modifying_Files\%%i && java -jar signapk.jar testkey.x509.pem testkey.pk8 Modifying_Files\%%i\dist\*.apk %%i && ren %%i New%%i && move New%%i Modified_Signed_Files && @echo %%i Complete repacking and Signing! && cd Modifying_Files

D. 如何反编译Apk得到Java源代码

1.下载反编译工具
需要下载四个工具:dex2jar、JD-GUI、apktool、apktool-install-windows-r05-ibot
dex2jar:将apk中的classes.dex转化成Jar文件。
JD-GUI:反编译工具,可以直接查看Jar包的源代码。
apktool:反编译工具,通过反编译APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:辅助windows批处理工具。

2.解压缩APK包
apk文件也是一种常见的zip,常用的压缩软件就可轻松地解压apk文件。用压缩软件将apk文件中的文件解压到一个文件夹中,得到APK中的资源包括XML文件和classes.dex文件,classes.dex就是java文件编译再通过dx工具打包而成的。

3.反编译dex文件
解压apk文件后,你会发现res目录的图片没有加密,但java源码编译成了一个classes.dex文件,无法用普通的反编译class文件的方法来处理,dex2jar可以将dex文件转换成普通的jar包。
解压下载的dex2jar,把解压后的文件夹放到系统盘跟目录中并把这个目录加到系统path变量中,就可以直接用:dex2jar.bat或dex2jar.sh转换dex文件了。
DOS行命令如下:dex2jar.bat xx\classes.dex(xx是classes.dex文件所在的路径)。
将在同目录得到普通jar包:classes_dex2jar.jar,就可以用处理普通jar包的方法来反编译这个jar包得到原文件。

4.反编译jar包
得到jar包后,下载自已喜欢的反编译工具,推荐使用JD-GUI,有比较简单的图形界面,可以反编译单个class文件,也可以反编译jar包,比较方便。
打开压缩文件JD-GUI,运行jd-gui.exe,打开上面生成的jar包,即可看到源代码了。

5.反编译xml文件
打开解压的res\layout目录,有很多xml文件,如果你想看下作者是如何设计界面的,你会很失望,因为你看到的是一大堆乱码!这个时候我们需要用到的是apktool。
具体操作方法:将下载的apktool和apktool-install-windows-r05-ibot两个包解压到同一个文件夹下,这个文件夹有三个文件:aapt.exe,apktool.bat,apktool.jar。把这个文件夹也放到系统盘的根目录中并把这个目录加到path变量中。以HelloWord.apk为例:
在DOS命令行中输入:apktool d xx\HelloWord.apk HelloWord得到HelloWord文件夹,此文件夹中的xml文件就是编译好的可以正常查看的文件。
这样就得到了可以得到编译的源码和XML资源。
注意:文件的路径中最好不要出现中文!

E. 大神快来!请问如何能提取apk中的音乐(别跟我说解包里面有),解包后要是能看到就不会来问了。以前j

准备的工具除了jdk还有以下内容(在Google官网都有):把apktool-install-windows-2.1_r01-1.zip,dex2jar-0.0.7-SNAPSHOT.zip
解压到一个盘的根目录下(这里我选择H盘),同时把
AXMLPrinter2.jar,apktool.jar
和你想解包的apk软件也放在同一个目录下,然后“运行--cmd”打开控制台,输入
cd /d h : /进入H盘的根目录然后输入以下内容(
控制台不要关,为了后面方便):其中apktool.jar
是解包工具,d表示解包,
memo.apk是我要解包的软件,
memo表示解包后输出到这个文件夹,等待片刻,就会生成memo文件夹,打开里面会有res文件夹下的所有文件和
AndroidManifest.xml
,用记事本就可以查看了。
以上是获得.xml文件和图片,下面获得里面的.java源代码:用winRar或者好压打开memo.apk
,截图如下:把里面的classes.dex文件解压到H盘根目录下,然后重新打开控制台,输入
dex2jar.bat classes.dex
得到一个名为
classes.dex.dex2jar.jar
的文件,此时用jd-gui.exe打开classes.dex.dex2jar.jar
就可以看到所有源代码了!
如果想把反编译好的文件变回apk文件,只要在控制台输入
apktool.jar b memo就可以了其中b就是重新封包的意思,
memo是你刚才解包出来的文件夹,前提是确保所有文件都在memo文件夹里!!

F. 如何反编译华为的SystemUI.apk文件

操作步骤:
第一:要在你的PC上建立Java的环境,才能执行编译工作。具体设置方法可参考线刷包移植卡刷包教程步骤

第二:下载Apktool工具 apktool.zip
(2.68 MB)。
下载后解压得到apktool文件夹,把里面的三个文件放在CDM模式(win+R)默认的目录下。
例如,我的是Windows7 32位
我的CDM模式默认目录是C:用户(Users)Administrator。

第三:如果你是要编译系统文件的话,请将你要修改的rom里提取framework-res.apk,再用CMD模式“安装”。(不这样做会导致解包错误)
安装方法:把framework-res.apk放在刚才放在C:用户(Users)Administrator文件夹下。
cmd模式执行apktool if
framework-res.apk这个是安装framework-res.apk

注意:1.第三步很重要,很多人不成功就是因为没做第三步。

2.编辑回去的systemui.apk及framework-res.apk不能直接放回去(framework-res.apk放回去会导致手机不断重启,

G. 修改apk解压和反编译有什么区别

APK就是个压缩包,里面有已经编译好的Java伪指令(二进制的,但是是伪指令)和图片、声音、布局等“资源”。
而反编译,则是把Java的伪指令还原成Java的代码(人类看得懂的玩意儿)。后者能彻底修改别人的程序。

H. Android-Mac电脑怎么进行APK反编译

第一步:下载反编译工具集,apktool、dex2jar、jd-gui,最后我会上传这些工具,解压后如下图:

下面那个弹出框是JD-GUI的,用来将字节码反编译成java源文件用的

第二步,工具集准备好之后还不能进行反编译,你在命令窗口下执行输入apktool 会提示命令不存在,需要配置一下环境变量
,怎么配置呢,如下命令:
1.打开命令窗口,cd /usr/local/bin下,可能有的mac电脑不存在bin这个目录,直接在创建一个就好了,命令是:sudo mkdir bin,执行后会让你输入root权限密码,输入完后执行ls命令查看,bin目录就存在了,如图:

2.将你解压后的apktool文件夹下的三个文件aapt、apktool、apktool.jar 复制到/usr/local/bin/目录下,怎么复制呢,当然用命令cp了,如下图:

复制多个文件用空格隔开,android-workspace/APK/apktool/目录是源目录,存放的是我们要复制的那三个文件,执行命令后,提示输入密码,输完密码后就复制成功了,ls查看一下,这三个文件已经存在了。

这时候就已经配置好环境变量PATH了,什么,我怎么没看到和PATH有关的任何命令,其实,/usr/local/bin本来就在PATH下,不信我执行命令你看:

这也是我们把apktool3个文件放在/usr/local/bin下的原因,现在你再输入apktool命令试试:

输出这样的命令就代表环境配置好了

第三步:开始进行反编译了,其实用到的命令也很简单,我们随便拿一个apk来,例如:

我们要对dz-android.apk进行反编译,命令行进入这个目录 cd /Users/hailonghan/android-workspace/APK,到这个目录后,
执行命令apktool d dz-android.apk,如下图:

执行成功后,会在当前目录下生成一个da-android文件夹,点击去就看到相关apk的资源文件了,选中AndroidManifest.xml,然后空格键,就可以看到反编译后的内容了:

第四步:反编译java源文件
这就用到dex2jar和jd-gui了,将dz-android.apk重命名改成dz-android.zip,然后利用解压缩软件解压,得到一个dz-android目录,我们要拿到里面的classes.dex文件,
将其复制到dex2jar-0.0.9.15目录下,

然后执行命令:sh dex2jar.sh classes.dex,

执行成功后会生成一个classes_dex2jar.jar文件,

最后,用jd-gui工具打开这个jar包就可以看到java源代码了,

I. 如何反编译apk文件得到源码和XML文件

最近因为一些事所以需要得到师兄的某个apk的源代码,但师兄说那个项目包已经删了,哎,没办法,只能自己想办法了。后来找到了反编译apk的方法,现在拿出来分享下。其实这个方法网上都有,我只是记载一下自己这段时间的学习情况。
1.下载工具
首先,要反编译需要下面这
4个工具:
dex2jar:将apk中的classes.dex转化成Jar文件。
JD-GUI:反编译工具,可以直接查看Jar包的源代码。
apktool:反编译工具,通过反编译APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:辅助windows批处理工具。
2.解压apk
直接右键解压apk就行了,这没什么好说的。【解压后会有个dex后缀的文件,下面会用到】
3.反编译dex文件
1)解压下载的dex2jar,把解压后的文件夹放到系统盘跟目录中并把这个目录加到系统path变量中,就可以直接用:dex2jar.bat或dex2jar.sh转换dex文件了。
2)DOS行命令如下:dex2jar.bat
xx\classes.dex(xx是classes.dex文件所在的路径)。
将在同目录得到普通jar包:【classes_dex2jar.jar】,就可以用处理普通jar包的方法来反编译这个jar包得到原文件。
4.反编译jar文件
1)解压压缩文件JD-GUI
2)运行该文件夹里的jd-gui.exe,打开上面生成的jar包,
即可看到源代码了。
5.反编译xml文件
为什么要发编译xml文件呢?因为直接解压apk得到的xml文件是乱码来的,我们需要用工具把它调会正常来
具体操作方法:
1)将下载的apktool和apktool-install-windows-r05-ibot两个包解压到同一个文件夹下,这个文件夹有三个文件:aapt.exe,apktool.bat,apktool.jar。
2)把这个文件夹也放到系统盘的根目录中并把这个目录加到path变量中。以HelloWord.apk为例:
3)在DOS命令行中输入:apktool
d
xx\HelloWord.apk
HelloWord得到HelloWord文件夹,此文件夹中的xml文件就是编译好的可以正常查看的文件。
6.后话
不过,说到底反编译还是反编译,还是不能完全地还原出真正的源代码的,比如一般会出现下面这样的问题:
setContentView(2130903048);
在真正的源代码中其实是这样的:
setContentView(R.layout.welcome)

J. 如何使用apktool反编译apk

1.下载apktool所需文件:
a、 apktool1.5.2.tar.bz2
b、apktool-install-windows-r05-ibot.tar.bz2 (windows系统)

2.解压刚刚下载的文件,并将解压的文件放入C:\Windows目录下

3.启动控制台,输入apktool,回车可查看到apktool工具常用指令

4.新建一个文件夹,用于存放apk及待解压的文件,这里笔者将文件夹建在D:\apk目录,同时放入用于测试的android app包(test.apk)

5.控制台输入:apktool d D:\apk\test.apk D:\apk\test 进行反编译操作
中句话中“D:\apk\test.apk”指apk存放位置,“D:\apk\test”指反编译后文件存放的位置

6.反编译成功之后,进入D:\apk\test文件目录可以查看到反编译后的文件

阅读全文

与解包apk反编译相关的资料

热点内容
怎么建个秘密文件夹 浏览:200
498除以八列竖式计算法 浏览:903
腾讯云服务器能连接吗 浏览:611
数控编程开始对刀位置规定 浏览:482
吃鸡中的远程服务器怎么使用 浏览:658
如何给饭卡加密 浏览:47
小林写的python 浏览:913
装修门户网站源码 浏览:755
安装海龟编译器 浏览:744
金先生下了命令 浏览:792
编译错误c2601 浏览:170
h5斗地主游戏源码 浏览:577
我的解压游戏怎么获得全地图 浏览:907
三把斧app怎么下载 浏览:388
内网ntp时间同步服务器地址 浏览:185
香肠派对脚本源码 浏览:94
jsp服务器怎么转发 浏览:861
服务器和网站开发有什么区别 浏览:766
如何下载测试服务器 浏览:181
怎么教育孩子的app 浏览:174