1、获取java源代码

1.1 dex2jar&jd-gui

dex2jar:将apk反编译成class文件(classes.dex转化成jar文件)

jd-gui:查看APK中classes.dex转化成出的jar文件(save既得java源码文件压缩包rar)

1.2 smali2java(适用于只是选择性查看个别文件的情况)

smali2java:这个软件比较好的地方是可以直接解析apk查看java源码http://www.hensence.com/cn/smali2java/

2、获取图片和布局文件

2.1 apktool

apktool:资源文件获取,可以提取出图片文件和布局文件进行使用查看

cmd命令:apktool d xxx.apk yyy(反编译)

apktool b yyy(回编译)

http://ibotpeaches.github.io/Apktool/install/能下载最新的apktool.jar文件,要实现apktool的反编功能还需aapt.exe、apktool.bat两个文件配套使用,这两个文件随便在网上下载一个apktool版本就有,这里不再提供网址下载

2.2 AXMLPrinter2.jar(适用于单纯查看AndroidManifest.xml的情况)

AXMLPrinter2.jar:apk里的AndroidManifest.xml 为二进制文件,可通过AXMLPrinter2.jar包反编译出来

cmd命令行运行一下命令:java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest2.xml

apktool如果反编成功,就会有AndroidManifest.xml文件存在,AXMLPrinter2.jar只是针对apktool反编不成功,需要单独反编AndroidManifest.xml的情况

3、小结:

3.1 较出名的apk项目一般都有自己的加密策略(比较大众的加密工具有梆梆加固、爱加密等),直接反编出来的东西一般都不能直接看,这时就需要有针对性的解密反编策略

3.2 反编工具尽量用最新,技术在不断进步,Google对android的升级也是出于保护包括我们在内的程序员的知识产权,交流和保护从来都是个博弈的局面,希望我们都能成长起来,保护自己的产出,尊重他人的劳作

4、特别说明

反编的目的在于提高程序员个人代码技术,强烈鄙视并反对诸如打包党利用反编技术恶意套用他人劳动成果为己牟利等有损行业整体健康发展的行为

apk反编译——基础是内功,得牢,飞跃还得多看源码,不同思想的碰撞才能产生火花,加油!!!!!!!!的更多相关文章

  1. Android apk反编译基础(apktoos)图文教程

    本文主要介绍了Android apk反编译基础,使用的工具是apktoos,我们将用图文的方式说明apktoos工具的使用方式,你可以参考这个方法反编译其它APK试试看了 很久有写过一个广工图书馆主页 ...

  2. APK反编译之一:基础知识—APK、Dalvik字节码和smali文件

    refs: APK反编译之一:基础知识http://blog.csdn.net/lpohvbe/article/details/7981386 APK反编译之二:工具介绍http://blog.csd ...

  3. android逆向基础:apk 反编译 重打包 重签名

    apk 反编译大家都比较熟悉,这里只做一个笔记. 1 反编译 apk apktool d perfect.apk 这样就把资源文件解压缩了, classes.dex 也反编译成了 smali 文件 2 ...

  4. APK反编译之一:基础知识

    作者:lpohvbe | http://blog.csdn.net/lpohvbe/article/details/7981386 这部分涉及的内容比较多,我会尽量从最基础开始说起,但需要读者一定的a ...

  5. apk反编译、smali修改、回编译笔记

    最近下了一个apk程序,但是一启动会弹出一个流氓广告.这个广告不是原厂商加的,而是有人在原有apk程序的基础上,加了一个壳,让apk先启动他加的广告,再启动原来的程序,很恶心.于是想去掉它. 试了几个 ...

  6. Android: apk反编译 及 AS代码混淆防反编译

    一.工具下载: 1.apktool(资源文件获取,如提取出图片文件和布局文件) 反编译apk:apktool d file.apk –o path 回编译apk:apktool b path –o f ...

  7. apk反编译工具

    反编译工具: apktool:资源文件获取,可以提取出图片文件和布局文件进行使用查看 dex2jar:将apk反编译成Java源码(classes.dex转化成jar文件) jd-gui:查看APK中 ...

  8. apk 反编译

    http://blog.csdn.net/vipzjyno1/article/details/21039349/ [置顶] Android APK反编译就这么简单 详解(附图) 标签: android ...

  9. apk反编译

    在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用 ...

随机推荐

  1. 20169202 2016-2017-2《Windows攻击》

    Windows攻击 实验要求:使用Metaspoit攻击MS08-067,提交正确得到远程Shell的截图,加上自己的学号水印 (1):MS08-067远程溢出漏洞描述 MS08-067漏洞的全称为& ...

  2. Shell编程-02-Shell变量

    目录 什么是Shell变量 变量类型 环境变量初始化及其对应文件的生效顺序 什么是Shell变量     在初等数学数学方程式中,我们会经常碰到类似于这样的方程式:y=x+1 ,等号左右两边的x和y称 ...

  3. POJ2349 Arctic Network 2017-04-13 20:44 40人阅读 评论(0) 收藏

    Arctic Network Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 19113   Accepted: 6023 D ...

  4. ZSTU4269 买iphone 2017-03-22 14:31 73人阅读 评论(0) 收藏

    4269: 买iphone Time Limit: 3 Sec  Memory Limit: 128 MB Submit: 1710  Solved: 316 Description 自从上次仓鼠中了 ...

  5. 在TFS 2013的迭代视图中修改工作项数目限制

    当TFS迭代中的工作项数目超过500时,在TFS的网页(Web Access)显示中就会出现红色警告提示"积压工作(backlog)中的项数超出配置的限制500.当前总数为529-.&quo ...

  6. Replication--复制相关的作业

    复制使用下列作业来执行计划维护和按需维护 作业名称 说明 默认调度 代理历史记录清除:分发 从分发数据库中删除复制代理历史记录. 每十分钟运行一次 分发清除:分发 从分发数据库中删除复制的事务. 停用 ...

  7. C# winform无边框窗体移动

    public partial class MessageHints : Form { //窗体移动API [DllImport("user32.dll")] public stat ...

  8. bootstrap-treeview中文API 以及后台JSON数据处理

    bootstrap-treeview   简要教程 bootstrap-treeview是一款效果非常酷的基于bootstrap的jQuery多级列表树插件.该jQuery插件基于Twitter Bo ...

  9. PARTITION BY函数

    1.PARTITION BY 开窗函数, 使用场景,在合同表里,获取所有房源在最新的合同编号.或者获取每个班级每次考试的第一名. 区别聚合函数:对于每个每个分组返回多行,而聚合函数对于每个分组只返回一 ...

  10. 【题解】 UVa11210 Chinese Mahjong

    pdf传送门 直接模拟+搜索,考虑一下选哪一个是将,然后搜出顺子和刻子,最后判断一下可不可行就好了! #include<stdio.h> #include<string.h> ...