1、apktool反编译工具使用教程随着安卓的普及,用户群越来越大,软件的要求也越来越高,写篇反编译教程,大家自己捣鼓修改软件吧。(说白了就是解包和打包 APK文件)一:首先下载附件:X.APKTool.zip (2.73 MB)(1)解压APKTOO到电脑(我的是F盘),打开电脑开始-运行CMD命令(2)在窗口中输入命令定位到文件夹命令说明:apktool d DJ.apkapktool d为反编译命令,其中d代表decodeDJ.apk为被反编译的apk安装包的文件名(可以自己定义)反编译后大家可以看到 F盘,apktool文件夹内岀现一个DJ文件夹,具体文件夹结构说明在本文结束有讲解*计真机
2、亦抱逑盅(F:)卜APKTool 组奴包含到库中 共享碎新建交件笑1文帳=一一7片勻却弓-1-11= 1,匚口 H-袒织丁包含钊库中 共享新建立件黄#下裁耘访问的位置ssets文apktool.ymf 畑L文件85亭节res 文怦:编译打包:(重新把修改过的文件打包为APK格式)ram 童理员:C:Wi n dowssystem 3 2cm d. exep: >cd apktoolF ; SJft PKT o o 1 >apkt o o 1 d D J d apk1- uaxsnaiing. _I: Loading resource table I LoadedI: Loading
3、 resoui*ce table Foiik f He : C - vUsersSAdn in Istra 七(11*51)<1;001£ i* 已apkIIIIILoaded _Decoding file-resources- Decoding values*/* XW 八 Done.Copying assets and libc-F: ilPKToo l>aplctool b DJI: Checking whether sources has changed., I : Snalinsr * I: QwukingI: BuildingI: Bui Idin siwhe
4、ther resources lias changed. resources. apk File.F:MlPKTool>日日S.MEH疋LI打包命令为:apktool b DJ(DJ 为刚才的文件夹名称)重新编译完成后,DJ文件夹内会新增一个dist文件夹,里面的DJ.apk文件就是重新编译好的apk安装包,签名后即可安装。签名工具下载:地址:http:/115.eom/file/bhgviics#APK文件结构说明(来源于互联网)An droidMa ni fest.xml该文件是每个应用都必须定义和包含的,它描述了应用的名字、版本、权限、引用的库文件等等信息,如要把 apk上传到Go
5、ogle Market上,也要对这个xml做一些配置。在apk中的AndroidManifest.xml是经过压缩的,可以通过AXMLPrinter2工具解开,具体命令为:java -jar AXMLPri nter2.jar An droidMa nifest.xmlMETA-INF 目录META-INF目录下存放的是签名信息,用来保证apk包的完整性和系统的安全。 在eclipse 编译生成一个apk包时,会对所有要打包的文件做一个校验计算,并把计算结果放在META-INF 目录下。这就保证了 apk包里的文件不能被随意替换。比如拿到一个apk包后,如果想要替换里面的一幅图片,一段代码,或
6、一段版权信息,想直接解压缩、替换再重新打包,基本是不可能的。如此一来就给病毒感染和恶意修改增加了难度,有助于保护系统的安全。res 目录res目录存放资源文件。包括图片,字符串等等。lib目录lib目录下的子目录armeabi存放的是一些so文件。这个地方多讲几句, 都是在开发过 程中摸索出来的。eclipse在打包的时候会根据文件名的命名规则(lib*.so )去打 包so文件,开头和结尾必须分别为“ lib "和“ .so ",否则是不会打包到apk文件中的。其他非eclipse开发环境没有测试过。如果你是用 SDK和NDK开发的话,这部分很重要,甚至可以通过把一些不是